Am 18.04.2017 um 03:33 hat Eric Blake geschrieben:
> We are gradually moving away from sector-based interfaces, towards
> byte-based. Update the vpc driver accordingly.
>
> Signed-off-by: Eric Blake <[email protected]>
I know this is an old series, but I think you split it for later
versions and there hasn't been a respin of this final part of the series
yet.
When I just told Peter that get_sector_offset() would go away with your
patches, I decided to check whether this was actually true, and found...
> /* *pnum can't be greater than one block for allocated
> * sectors since there is always a bitmap in between. */
> if (allocated) {
> *file = bs->file->bs;
> return BDRV_BLOCK_DATA | BDRV_BLOCK_OFFSET_VALID | start;
> }
> - if (nb_sectors == 0) {
> + if (bytes == 0) {
> break;
> }
> - offset = get_sector_offset(bs, sector_num, 0);
> + image_offset = get_sector_offset(bs, offset, 0);
> } while (offset == -1);
...this bug. I think you want to use get_image_offset() now.
This should also be the last caller of get_sector_offset(), so the
function should go away in this commit.
Kevin