[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] blktap2: Invalid logic detecting unaligned buffers in vhd_write_block

Ross Philipson writes ("[Xen-devel] [PATCH] blktap2: Invalid logic detecting 
unaligned buffers in vhd_write_block"):
> It seems the logic is meant to detect sector unaligned buffers for block
> writes. The NOTing of the logic instead masks off any unaligned bits and
> also would cause the function to always fail. It seems the function is not
> used in any of the tools so that is probably why the problem is not seen.
> In the vhd_read_block function it is correct.
> Signed-off-by: Ross Philipson <ross.philipson@xxxxxxxxxxxx>
> ---
> diff --git a/tools/blktap2/vhd/lib/libvhd.c b/tools/blktap2/vhd/lib/libvhd.c
> index 1fd5b4e..4ebe012 100644
> --- a/tools/blktap2/vhd/lib/libvhd.c
> +++ b/tools/blktap2/vhd/lib/libvhd.c
> @@ -2188,7 +2188,7 @@ vhd_write_block(vhd_context_t *ctx, uint32_t block, 
> char *data)
>         if (block >= ctx->bat.entries)
>                 return -ERANGE;
> -       if ((unsigned long)data & ~(VHD_SECTOR_SIZE -1))
> +       if ((unsigned long)data & (VHD_SECTOR_SIZE -1))

Notwithstanding the discussion in the rest of the thread, this is a
clearly-correct bugfix to the code in tree, so I have queued it.

However, I had to do so rather manually because something had mangled
the whitespace.  Ross, can you check your patch submission path,
please ?


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.