Re: [PATCH] virtio-blk: support polling I/O
From: Jason Wang <hidden>
Date: 2022-03-17 02:20:23
Also in:
linux-block
On Wed, Mar 16, 2022 at 11:33 PM Suwan Kim [off-list ref] wrote:
On Wed, Mar 16, 2022 at 10:02:13AM +0800, Jason Wang wrote:quoted
On Tue, Mar 15, 2022 at 10:43 PM Suwan Kim [off-list ref] wrote:quoted
On Tue, Mar 15, 2022 at 04:59:23PM +0800, Jason Wang wrote:quoted
On Mon, Mar 14, 2022 at 8:33 PM Suwan Kim [off-list ref] wrote:quoted
On Mon, Mar 14, 2022 at 02:14:53PM +0800, Jason Wang wrote:quoted
在 2022/3/11 下午11:28, Suwan Kim 写道:quoted
diff --git a/include/uapi/linux/virtio_blk.hb/include/uapi/linux/virtio_blk.hquoted
quoted
index d888f013d9ff..3fcaf937afe1 100644--- a/include/uapi/linux/virtio_blk.h +++ b/include/uapi/linux/virtio_blk.h@@ -119,8 +119,9 @@ struct virtio_blk_config { * deallocation of one or more of the sectors. */ __u8 write_zeroes_may_unmap; + __u8 unused1; - __u8 unused1[3]; + __virtio16 num_poll_queues; } __attribute__((packed));This looks like a implementation specific (virtio-blk-pci) optimization,howquoted
about other implementation like vhost-user-blk?I didn’t consider vhost-user-blk yet. But does vhost-user-blk also use vritio_blk_config as kernel-qemu interface?Yes, but see below.quoted
Does vhost-user-blk need additional modification to support polling in kernel side?No, but the issue is, things like polling looks not a good candidate for the attributes belonging to the device but the driver. So I have more questions: 1) what does it really mean for hardware virtio block devices? 2) Does driver polling help for the qemu implementation without polling? 3) Using blk_config means we can only get the benefit from the new device1) what does it really mean for hardware virtio block devices? 3) Using blk_config means we can only get the benefit from the new device This patch adds dedicated HW queue for polling purpose to virtio block device. So I think it can be a new hw feature. And it can be a new device that supports hw poll queue.One possible issue is that the "poll" looks more like a software/driver concept other than the device/hardware.quoted
BTW, I have other idea about it. How about adding “num-poll-queues" property as a driver parameter like NVMe driver, not to QEMU virtio-blk-pci property?It should be fine, but we need to listen to others.To Michael, Stefan, Max How about using driver parameter instead of virio_blk_config?
I agree. Thanks
Regards, Suwan Kim
_______________________________________________ Virtualization mailing list Virtualization@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/virtualization