On 6/19/21 4:56 AM, Mike Snitzer wrote: > [you really should've changed the subject of this email to > "[RFC PATCH V3 3/3] dm: support bio polling"] > > On Fri, Jun 18 2021 at 10:39P -0400, > Ming Lei <ming.lei@xxxxxxxxxx> wrote: > >> From 47e523b9ee988317369eaadb96826323cd86819e Mon Sep 17 00:00:00 2001 >> From: Ming Lei <ming.lei@xxxxxxxxxx> >> Date: Wed, 16 Jun 2021 16:13:46 +0800 >> Subject: [RFC PATCH V3 3/3] dm: support bio polling >> >> Support bio(REQ_POLLED) polling in the following approach: >> >> 1) only support io polling on normal READ/WRITE, and other abnormal IOs >> still fallback on IRQ mode, so the target io is exactly inside the dm >> io. >> >> 2) hold one refcnt on io->io_count after submitting this dm bio with >> REQ_POLLED >> >> 3) support dm native bio splitting, any dm io instance associated with >> current bio will be added into one list which head is bio->bi_end_io >> which will be recovered before ending this bio >> >> 4) implement .poll_bio() callback, call bio_poll() on the single target >> bio inside the dm io which is retrieved via bio->bi_bio_drv_data; call >> dec_pending() after the target io is done in .poll_bio() >> >> 4) enable QUEUE_FLAG_POLL if all underlying queues enable QUEUE_FLAG_POLL, >> which is based on Jeffle's previous patch. > > ^ nit: two "4)", last should be 5. > >> >> Signed-off-by: Ming Lei <ming.lei@xxxxxxxxxx> >> --- >> V3: >> - covers all comments from Jeffle > > Would really appreciate it if Jeffle could test these changes like he > did previous dm IO polling patchsets he implemented. Jeffle? My pleasure. I would test it today and post the test result as soon as possible. -- Thanks, Jeffle