Message ID | 20210623074032.1484665-1-ming.lei@redhat.com (mailing list archive) |
---|---|
Headers | show |
Series | block/dm: support bio polling | expand |
On Wed, Jun 23 2021 at 3:40P -0400, Ming Lei <ming.lei@redhat.com> wrote: > Hello Guys, > > Based on Christoph's bio based polling model[1], implement DM bio polling > with one very simple approach. > > Patch 1 adds helper of blk_queue_poll(). > > Patch 2 adds .bio_poll() callback to block_device_operations, so bio > driver can implement its own logic for io polling. > > Patch 3 implements bio polling for device mapper. > > > V3: > - patch style change as suggested by Christoph(2/3) > - fix kernel panic issue caused by nested dm polling, which is found > & figured out by Jeffle Xu (3/3) > - re-organize setup polling code (3/3) > - remove RFC > > V2: > - drop patch to add new fields into bio > - support io polling for dm native bio splitting > - add comment > > Ming Lei (3): > block: add helper of blk_queue_poll > block: add ->poll_bio to block_device_operations > dm: support bio polling > > block/blk-core.c | 18 +++--- > block/blk-sysfs.c | 4 +- > block/genhd.c | 2 + > drivers/md/dm-table.c | 24 +++++++ > drivers/md/dm.c | 131 ++++++++++++++++++++++++++++++++++++++- > drivers/nvme/host/core.c | 2 +- > include/linux/blkdev.h | 2 + > 7 files changed, 170 insertions(+), 13 deletions(-) > > -- > 2.31.1 > Hey Ming, I'd like us to follow-through with adding bio-based polling support. Kind of strange none of us that were sent this V3 ever responded, sorry about that! Do you have interest in rebasing this patchset (against linux-dm.git's "dm-5.18" branch since there has been quite some churn)? Or are you OK with me doing the rebase? thanks, Mike -- dm-devel mailing list dm-devel@redhat.com https://listman.redhat.com/mailman/listinfo/dm-devel
On Mon, Feb 28, 2022 at 11:27:44AM -0500, Mike Snitzer wrote: > On Wed, Jun 23 2021 at 3:40P -0400, > Ming Lei <ming.lei@redhat.com> wrote: > > > Hello Guys, > > > > Based on Christoph's bio based polling model[1], implement DM bio polling > > with one very simple approach. > > > > Patch 1 adds helper of blk_queue_poll(). > > > > Patch 2 adds .bio_poll() callback to block_device_operations, so bio > > driver can implement its own logic for io polling. > > > > Patch 3 implements bio polling for device mapper. > > > > > > V3: > > - patch style change as suggested by Christoph(2/3) > > - fix kernel panic issue caused by nested dm polling, which is found > > & figured out by Jeffle Xu (3/3) > > - re-organize setup polling code (3/3) > > - remove RFC > > > > V2: > > - drop patch to add new fields into bio > > - support io polling for dm native bio splitting > > - add comment > > > > Ming Lei (3): > > block: add helper of blk_queue_poll > > block: add ->poll_bio to block_device_operations > > dm: support bio polling > > > > block/blk-core.c | 18 +++--- > > block/blk-sysfs.c | 4 +- > > block/genhd.c | 2 + > > drivers/md/dm-table.c | 24 +++++++ > > drivers/md/dm.c | 131 ++++++++++++++++++++++++++++++++++++++- > > drivers/nvme/host/core.c | 2 +- > > include/linux/blkdev.h | 2 + > > 7 files changed, 170 insertions(+), 13 deletions(-) > > > > -- > > 2.31.1 > > > > Hey Ming, > > I'd like us to follow-through with adding bio-based polling support. > Kind of strange none of us that were sent this V3 ever responded, > sorry about that! > > Do you have interest in rebasing this patchset (against linux-dm.git's > "dm-5.18" branch since there has been quite some churn)? Or are you > OK with me doing the rebase? Hi Mike, Actually I have one local v5.17 rebase: https://github.com/ming1/linux/tree/my_v5.17-dm-io-poll Also one for-5.18/block rebase which is done just now: https://github.com/ming1/linux/tree/my_v5.18-dm-bio-poll In my previous test on v5.17 rebase, the IOPS improvement is a bit small, so I didn't post it out. Recently not get time to investigate the performance further, so please feel free to work on it. Thanks, Ming -- dm-devel mailing list dm-devel@redhat.com https://listman.redhat.com/mailman/listinfo/dm-devel
On Mon, Feb 28 2022 at 7:58P -0500, Ming Lei <ming.lei@redhat.com> wrote: > On Mon, Feb 28, 2022 at 11:27:44AM -0500, Mike Snitzer wrote: > > > > Hey Ming, > > > > I'd like us to follow-through with adding bio-based polling support. > > Kind of strange none of us that were sent this V3 ever responded, > > sorry about that! > > > > Do you have interest in rebasing this patchset (against linux-dm.git's > > "dm-5.18" branch since there has been quite some churn)? Or are you > > OK with me doing the rebase? > > Hi Mike, > > Actually I have one local v5.17 rebase: > > https://github.com/ming1/linux/tree/my_v5.17-dm-io-poll > > Also one for-5.18/block rebase which is done just now: > > https://github.com/ming1/linux/tree/my_v5.18-dm-bio-poll > > In my previous test on v5.17 rebase, the IOPS improvement is a bit small, > so I didn't post it out. Recently not get time to investigate > the performance further, so please feel free to work on it. OK, I've rebased it on dm-5.18. Can you please share the exact test(s) you were running? I assume you were running directly against a request-based device and then comparing polling perf through dm-linear to the same underlying request-based device? Thanks, Mike -- dm-devel mailing list dm-devel@redhat.com https://listman.redhat.com/mailman/listinfo/dm-devel
On Tue, Mar 01, 2022 at 04:19:42PM -0500, Mike Snitzer wrote: > On Mon, Feb 28 2022 at 7:58P -0500, > Ming Lei <ming.lei@redhat.com> wrote: > > > On Mon, Feb 28, 2022 at 11:27:44AM -0500, Mike Snitzer wrote: > > > > > > Hey Ming, > > > > > > I'd like us to follow-through with adding bio-based polling support. > > > Kind of strange none of us that were sent this V3 ever responded, > > > sorry about that! > > > > > > Do you have interest in rebasing this patchset (against linux-dm.git's > > > "dm-5.18" branch since there has been quite some churn)? Or are you > > > OK with me doing the rebase? > > > > Hi Mike, > > > > Actually I have one local v5.17 rebase: > > > > https://github.com/ming1/linux/tree/my_v5.17-dm-io-poll > > > > Also one for-5.18/block rebase which is done just now: > > > > https://github.com/ming1/linux/tree/my_v5.18-dm-bio-poll > > > > In my previous test on v5.17 rebase, the IOPS improvement is a bit small, > > so I didn't post it out. Recently not get time to investigate > > the performance further, so please feel free to work on it. > > OK, I've rebased it on dm-5.18. > > Can you please share the exact test(s) you were running? I assume you > were running directly against a request-based device and then > comparing polling perf through dm-linear to the same underlying > request-based device? I run io_uring over dm-linear and dm-stripe, over two nvme disks with 2 poll_queues. IOPS improvement can be observed, but not big. Thanks, Ming -- dm-devel mailing list dm-devel@redhat.com https://listman.redhat.com/mailman/listinfo/dm-devel