Re: [PATCH -next RFC 02/14] xen/blkback: use bdev api in xen_update_blkif_status()

Yu Kuai
2023-12-06T06:56:25Z

Hi,

在 2023/12/06 13:55, Christoph Hellwig 写道:
> On Tue, Dec 05, 2023 at 08:37:16PM +0800, Yu Kuai wrote:
>> diff --git a/drivers/block/xen-blkback/xenbus.c b/drivers/block/xen-blkback/xenbus.c
>> index e34219ea2b05..e645afa4af57 100644
>> --- a/drivers/block/xen-blkback/xenbus.c
>> +++ b/drivers/block/xen-blkback/xenbus.c
>> @@ -104,8 +104,7 @@ static void xen_update_blkif_status(struct xen_blkif *blkif)
>> xenbus_dev_error(blkif->be->dev, err, "block flush");
>> return;
>> }
>> - invalidate_inode_pages2(
>> - blkif->vbd.bdev_handle->bdev->bd_inode->i_mapping);
>> + invalidate_bdev(blkif->vbd.bdev_handle->bdev);
>
> blkbak is a bdev exported. I don't think it should ever call
> invalidate_inode_pages2, through a wrapper or not.

I'm not sure about this. I'm not familiar with xen/blkback, but I saw
that xen-blkback will open a bdev from xen_vbd_create(), hence this
looks like a dm/md for me, hence it sounds reasonable to sync +
invalidate the opened bdev while initialization. Please kindly correct
me if I'm wrong.

Thanks,
Kuai

>
> .
>