On Thu, 05/14 12:38, Paolo Bonzini wrote:
> 
> 
> On 14/05/2015 12:29, Wen Congyang wrote:
> > 
> > If buf_size % granularity is not 0, mirror_free_init() will
> > do dangerous things.
> > 
> > Signed-off-by: Wen Congyang <we...@cn.fujitsu.com>
> > ---
> >  block/mirror.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/block/mirror.c b/block/mirror.c
> > index 58f391a..9521212 100644
> > --- a/block/mirror.c
> > +++ b/block/mirror.c
> > @@ -684,7 +684,7 @@ static void mirror_start_job(BlockDriverState *bs, 
> > BlockDriverState *target,
> >      s->is_none_mode = is_none_mode;
> >      s->base = base;
> >      s->granularity = granularity;
> > -    s->buf_size = MAX(buf_size, granularity);
> > +    s->buf_size = ROUND_UP(buf_size, granularity);
> >  
> >      s->dirty_bitmap = bdrv_create_dirty_bitmap(bs, granularity, NULL, 
> > errp);
> >      if (!s->dirty_bitmap) {
> > 
> 
> Reviewed-by: Paolo Bonzini <pbonz...@redhat.com>

What if buf_size is negative?

Fam

Reply via email to