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-23 13:19:01 +02:00
2021-09-02 09:21:27 -07:00
2020-03-23 17:01:51 +01:00
2020-03-23 17:01:51 +01:00
2021-08-23 13:19:01 +02:00
2021-08-23 13:19:01 +02:00
2021-08-23 13:19:11 +02:00
2021-07-07 17:42:41 +02:00
2020-12-08 15:53:41 +01:00
2020-03-23 17:01:55 +01:00
2021-08-23 13:19:09 +02:00
2021-08-23 13:19:00 +02:00
2020-03-23 17:01:39 +01:00
2021-10-18 06:17:01 -06:00
2021-08-23 13:19:04 +02:00
2021-10-18 06:17:01 -06:00
2021-10-11 16:48:19 -07:00
2021-06-22 14:11:57 +02:00
2020-07-27 12:55:36 +02:00
2021-08-23 13:19:09 +02:00
2020-12-08 15:54:10 +01:00
2021-07-22 15:50:07 +02:00
2021-02-08 22:58:56 +01:00
2021-06-22 14:11:57 +02:00
2021-02-09 02:46:07 +01:00
2021-10-07 22:06:32 +02:00
2021-06-22 14:11:57 +02:00
2020-12-08 15:54:02 +01:00
2021-09-07 14:28:46 +02:00
2021-02-09 02:46:07 +01:00
2020-12-08 15:54:02 +01:00
2020-03-23 17:01:42 +01:00
2021-08-23 13:19:16 +02:00
2021-08-23 13:19:08 +02:00
2021-02-08 22:58:53 +01:00
2019-11-18 23:43:44 +01:00
2020-12-08 15:54:13 +01:00
2021-10-07 22:04:20 +02:00
2021-09-17 19:29:38 +02:00
2021-10-07 22:08:06 +02:00
2021-08-23 13:19:11 +02:00
2021-02-09 02:46:03 +01:00
2021-01-25 18:44:37 +01:00
2019-11-18 17:51:51 +01:00
2020-12-08 15:54:02 +01:00
2021-10-18 06:17:36 -06:00
2021-09-07 14:29:59 +02:00
2021-06-22 14:11:57 +02:00
2021-06-22 14:11:57 +02:00
2020-12-08 15:54:09 +01:00
2021-08-23 13:19:04 +02:00
2021-08-23 13:19:09 +02:00
2021-09-07 14:29:50 +02:00
2021-09-07 14:30:41 +02:00
2021-08-23 13:19:02 +02:00
2021-01-07 17:25:05 +01:00
2021-01-07 17:25:05 +01:00
2021-06-22 14:11:58 +02:00
2019-04-29 19:02:54 +02:00
2021-08-23 13:19:01 +02:00
2021-07-22 15:50:07 +02:00
2021-08-23 13:19:03 +02:00
2019-07-01 13:34:58 +02:00
2020-03-23 17:01:53 +01:00
2021-03-16 11:06:21 +01:00
2021-08-23 13:19:00 +02:00
2021-06-21 15:19:10 +02:00
2020-03-23 17:01:54 +01:00
2021-08-23 13:19:06 +02:00
2020-10-07 12:12:13 +02:00
2021-06-22 14:11:57 +02:00
2021-08-23 13:19:10 +02:00
2020-10-07 12:13:17 +02:00
2021-09-17 19:29:54 +02:00
2021-06-22 14:55:25 +02:00
2021-08-23 13:18:58 +02:00
2021-08-23 13:19:05 +02:00
2021-08-23 13:19:04 +02:00
2021-08-23 13:19:15 +02:00
2021-08-23 13:19:12 +02:00
2020-10-07 12:12:21 +02:00
2021-07-07 17:42:41 +02:00
2021-07-07 17:42:41 +02:00
2021-08-23 13:19:09 +02:00
2020-12-08 15:54:01 +01:00
2021-10-07 22:06:34 +02:00
2020-10-07 12:06:56 +02:00
2021-04-20 19:27:17 +02:00
2021-04-19 17:25:17 +02:00
2020-12-08 15:53:52 +01:00
2021-09-17 19:29:41 +02:00
2021-09-17 19:29:45 +02:00
2021-09-07 14:29:59 +02:00
2021-03-05 12:21:14 -08:00
2021-08-23 13:19:04 +02:00
2021-08-23 13:19:01 +02:00
2021-08-23 13:18:58 +02:00
2021-08-23 13:19:04 +02:00