Am 21.01.2013 17:09, schrieb Paolo Bonzini:
> The new testcase did not find Kevin's bug (which is actually not
> there), but I still did the change he asked to the logic; it is
> clearer that way.
> 
> And the testcase *did* find a related problem.  Here is the relevant
> diff from v2:
> 
>          if (backing_filename[0] && !s->target->backing_hd) {
>              bdrv_get_info(s->target, &bdi);
>     -        if (s->buf_size < bdi.cluster_size) {
>     -            s->buf_size = bdi.cluster_size;
>     +        if (s->granularity < bdi.cluster_size) {
>     +            s->buf_size = MAX(s->buf_size, bdi.cluster_size);
>                  s->cow_bitmap = bitmap_new(length);
>              }
>          }
> 
> In deciding whether to do COW, the cluster size was tested against the
> wrong value.
> 
> Following Kevin's suggestion, I also renamed all variables dealing
> with dirty-bitmap-granularity-sized blocks to call them "chunks", not
> "clusters".  This makes the interdiff quite large, but there are no
> semantic changes other than the movement of bitmap_set(s->cow_bitmap)
> and the bugfix.
> 
> Patches 1-4 are identical.  For the others, see the individual patches.

Thanks, applied patches 1-8 to the block branch.

I think patches 9 and 10 need a respin, see the comments there.

Kevin

Reply via email to