[dm-devel] [PATCH V3 0/3] block/dm: support bio polling

Ming Lei ming.lei at redhat.com
Tue Mar 1 00:58:21 UTC 2022


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 at 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




More information about the dm-devel mailing list