On Tue, Mar 15, 2022 at 10:43 PM Suwan Kim <suwan.kim027@xxxxxxxxx> wrote: > > On Tue, Mar 15, 2022 at 04:59:23PM +0800, Jason Wang wrote: > > On Mon, Mar 14, 2022 at 8:33 PM Suwan Kim <suwan.kim027@xxxxxxxxx> wrote: > > > > > On Mon, Mar 14, 2022 at 02:14:53PM +0800, Jason Wang wrote: > > > > > > > > 在 2022/3/11 下午11:28, Suwan Kim 写道: > > > > > diff --git a/include/uapi/linux/virtio_blk.h > > > b/include/uapi/linux/virtio_blk.h > > > > > 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, > > > how > > > > 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. > > > > > > > > > > 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 device > > 1) 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. > > 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. > > If then, we don’t need to modify virtio_blk_config. > And we can apply the polling feature only to virtio-blk-pci. > But can QEMU pass “num-poll-queues" to virtio-blk driver param? As Michael said we can leave this to guest kernel / administrator. > > > > 2) Does driver polling help for the qemu implementation without polling? > > Sorry, I didn't understand your question. Could you please explain more about? I mean does the polling work for the ordinary qemu block device without busy polling? Thanks > > Regards, > Suwan Kim > _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization