Christoph Hellwig
3e08773c38
block: switch polling to be bio based
...
Replace the blk_poll interface that requires the caller to keep a queue
and cookie from the submissions with polling based on the bio.
Polling for the bio itself leads to a few advantages:
- the cookie construction can made entirely private in blk-mq.c
- the caller does not need to remember the request_queue and cookie
separately and thus sidesteps their lifetime issues
- keeping the device and the cookie inside the bio allows to trivially
support polling BIOs remapping by stacking drivers
- a lot of code to propagate the cookie back up the submission path can
be removed entirely.
Signed-off-by: Christoph Hellwig <hch@lst.de >
Tested-by: Mark Wunderlich <mark.wunderlich@intel.com >
Link: https://lore.kernel.org/r/20211012111226.760968-15-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk >
2021-10-18 06:17:36 -06:00
..
2021-08-19 10:07:15 -07:00
2021-08-20 13:20:33 -07:00
2020-10-16 15:34:28 -07:00
2021-08-09 15:57:43 -07:00
2021-08-09 15:57:43 -07:00
2021-09-02 09:21:27 -07:00
2021-08-18 22:08:24 +02:00
2021-08-19 10:07:13 -07:00
2021-08-19 10:07:15 -07:00
2021-08-19 10:07:13 -07:00
2021-06-21 10:05:51 -07:00
2021-08-09 15:57:59 -07:00
2021-09-02 08:26:03 -07:00
2021-08-19 10:07:15 -07:00
2021-08-19 10:07:15 -07:00
2020-09-15 20:52:38 -07:00
2021-09-02 08:26:03 -07:00
2021-08-19 10:07:15 -07:00
2021-08-19 10:07:13 -07:00
2021-08-19 10:07:12 -07:00
2021-08-19 10:07:12 -07:00
2021-08-06 11:05:36 -07:00
2021-08-06 11:05:36 -07:00
2021-08-19 10:07:12 -07:00
2021-08-09 10:52:18 -07:00
2021-08-19 10:07:15 -07:00
2021-08-18 18:46:00 -07:00
2021-08-19 10:07:13 -07:00
2021-06-02 10:48:24 +10:00
2021-06-02 10:48:24 +10:00
2021-08-09 11:13:17 -07:00
2021-10-18 06:17:36 -06:00
2021-08-19 10:07:13 -07:00
2021-08-19 10:07:12 -07:00
2021-08-19 10:07:12 -07:00
2020-10-07 08:40:29 -07:00
2021-08-19 10:07:13 -07:00
2021-02-03 09:18:50 -08:00
2021-02-03 09:18:49 -08:00
2021-08-19 10:07:13 -07:00
2021-08-24 19:13:04 -07:00
2021-08-09 11:13:17 -07:00
2021-08-11 09:13:12 -07:00
2021-08-19 10:07:12 -07:00
2021-08-19 10:07:12 -07:00
2021-06-21 10:12:33 -07:00
2021-09-02 08:26:03 -07:00
2021-09-02 08:26:03 -07:00
2021-08-19 10:07:13 -07:00
2021-04-12 15:04:29 +02:00
2021-08-19 10:07:13 -07:00
2021-04-12 15:04:29 +02:00
2021-08-23 17:32:51 -07:00
2021-08-24 19:13:04 -07:00
2021-01-24 14:43:46 +01:00
2021-08-19 10:07:12 -07:00
2021-01-24 14:43:46 +01:00
2021-08-09 11:13:16 -07:00
2021-06-21 10:05:51 -07:00
2021-08-19 10:07:12 -07:00
2021-08-16 12:09:30 -07:00
2021-08-19 10:07:14 -07:00
2021-08-19 10:07:13 -07:00
2021-08-16 12:09:30 -07:00
2021-06-28 15:54:57 -07:00
2021-08-19 10:07:14 -07:00
2021-08-19 10:07:13 -07:00
2021-02-03 09:18:49 -08:00
2021-04-22 18:29:25 -07:00
2021-08-19 10:07:13 -07:00
2021-02-03 09:18:49 -08:00
2021-02-03 09:18:49 -08:00
2021-08-19 10:07:12 -07:00
2021-08-19 10:07:12 -07:00
2021-08-19 10:07:13 -07:00
2021-08-06 11:05:36 -07:00
2021-08-09 10:52:18 -07:00
2021-08-06 11:05:37 -07:00
2021-08-19 10:07:12 -07:00
2021-08-19 10:07:12 -07:00
2021-08-19 10:07:14 -07:00
2021-08-19 10:07:12 -07:00
2021-08-19 10:07:12 -07:00
2021-08-18 18:46:01 -07:00
2020-10-07 08:40:28 -07:00
2020-10-07 08:40:28 -07:00
2021-09-09 11:39:57 -07:00
2021-06-21 10:05:46 -07:00
2021-08-19 10:07:13 -07:00
2021-01-24 14:43:46 +01:00
2021-02-24 10:16:08 -08:00
2021-02-03 09:18:49 -08:00
2021-08-16 12:09:30 -07:00
2020-08-07 11:50:17 -07:00
2021-08-18 18:46:00 -07:00
2021-08-19 10:07:15 -07:00
2021-08-19 10:07:13 -07:00
2021-08-19 10:07:14 -07:00
2021-08-19 10:07:12 -07:00
2021-08-19 10:07:13 -07:00
2021-06-21 10:12:33 -07:00
2021-03-25 16:47:50 -07:00