Kiyoshi Ueda
e19a3ab058
blk_end_request: add callback feature (take 4)
...
This patch adds a variant of the interface, blk_end_request_callback(),
which has driver callback feature.
Drivers may need to do special works between end_that_request_first()
and end_that_request_last().
For such drivers, blk_end_request_callback() allows it to pass
a callback function which is called between end_that_request_first()
and end_that_request_last().
This interface is only for fallback of other blk_end_request interfaces.
Drivers should avoid their tricky behaviors and use other interfaces
as much as possible.
Currently, only one driver, ide-cd, needs this interface.
So this interface should/will be removed, after the driver removes
such tricky behaviors.
o ide-cd (cdrom_newpc_intr())
In PIO mode, cdrom_newpc_intr() needs to defer end_that_request_last()
until the device clears DRQ_STAT and raises an interrupt after
end_that_request_first().
So end_that_request_first() and end_that_request_last() are called
separately in cdrom_newpc_intr().
This means blk_end_request_callback() has to return without
completing request even if no leftover in the request.
To satisfy the requirement, callback function has return value
so that drivers can tell blk_end_request_callback() to return
without completing request.
Signed-off-by: Kiyoshi Ueda <k-ueda@ct.jp.nec.com >
Signed-off-by: Jun'ichi Nomura <j-nomura@ce.jp.nec.com >
Signed-off-by: Jens Axboe <jens.axboe@oracle.com >
2008-01-28 10:37:04 +01:00
..
2008-01-27 18:14:49 +01:00
2007-12-12 20:01:01 +01:00
2007-11-07 04:08:21 -08:00
2007-11-07 04:08:21 -08:00
2007-11-07 04:08:21 -08:00
2007-11-26 16:24:50 -05:00
2007-12-26 19:36:35 -08:00
2008-01-23 21:26:15 -05:00
2007-12-17 19:28:16 -08:00
2008-01-23 05:24:15 -05:00
2008-01-23 11:29:17 -06:00
2007-10-21 02:37:45 -04:00
2007-10-19 11:53:42 -07:00
2007-10-19 11:53:42 -07:00
2008-01-28 10:37:04 +01:00
2007-10-29 14:05:37 -07:00
2007-10-22 08:13:18 -07:00
2008-01-23 05:24:14 -05:00
2007-12-02 20:04:49 +01:00
2007-10-19 11:53:36 -07:00
2007-10-19 11:53:36 -07:00
2007-10-25 15:10:17 -07:00
2007-10-24 18:23:48 +02:00
2008-01-25 21:08:02 +01:00
2007-11-19 21:43:22 -05:00
2008-01-06 12:39:42 -08:00
2007-10-19 11:53:44 -07:00
2008-01-11 08:17:01 +11:00
2007-10-21 02:37:45 -04:00
2007-10-24 10:27:48 -02:00
2008-01-25 21:08:02 +01:00
2007-10-19 11:53:36 -07:00
2007-12-20 17:32:12 +00:00
2008-01-24 21:04:46 -08:00
2008-01-25 14:46:04 -08:00
2008-01-25 14:46:04 -08:00
2007-10-20 02:00:58 +01:00
2008-01-24 20:40:05 -08:00
2007-10-22 08:13:19 -07:00
2008-01-23 21:23:13 -05:00
2007-10-23 15:49:47 +10:00
2007-10-22 08:13:19 -07:00
2007-10-22 08:13:20 -07:00
2007-12-18 08:29:28 +01:00
2007-10-29 07:41:32 -07:00
2007-10-22 08:13:21 -07:00
2007-11-29 09:24:53 -08:00
2007-11-14 18:45:43 -08:00
2007-11-08 08:42:46 -05:00
2008-01-24 20:40:13 -08:00
2007-10-21 02:37:18 -04:00
2007-11-29 09:24:54 -08:00
2008-01-25 21:08:34 +01:00
2008-01-24 20:40:36 -08:00
2008-01-25 21:08:33 +01:00
2008-01-25 22:17:14 +01:00
2007-10-19 11:53:42 -07:00
2008-01-25 21:08:31 +01:00
2007-12-17 19:28:17 -08:00
2008-01-11 08:16:16 +11:00
2008-01-27 18:14:50 +01:00
2008-01-27 18:14:52 +01:00
2007-10-22 00:56:52 -04:00
2008-01-26 20:13:12 +01:00
2007-12-07 15:00:32 -05:00
2007-12-05 05:37:32 -08:00
2008-01-25 21:08:30 +01:00
2007-10-21 02:37:38 -04:00
2007-11-27 00:47:04 -05:00
2008-01-25 21:08:23 +01:00
2007-10-19 11:53:48 -07:00
2007-10-30 08:06:55 -07:00
2007-12-18 18:05:58 +01:00
2007-12-05 09:21:20 -08:00
2008-01-25 21:08:34 +01:00
2007-11-05 15:12:32 -08:00
2008-01-25 14:46:04 -08:00
2007-11-29 09:24:52 -08:00
2008-01-25 21:08:28 +01:00
2007-10-19 11:53:49 -07:00
2008-01-08 16:10:35 -08:00
2007-10-19 11:53:33 -07:00
2008-01-24 21:27:06 -08:00
2008-01-24 20:40:05 -08:00
2008-01-25 21:08:34 +01:00
2007-12-07 09:06:53 +00:00
2007-10-25 15:02:50 +10:00
2007-10-25 15:02:50 +10:00
2008-01-23 05:24:16 -05:00
2007-10-22 08:13:17 -07:00
2007-10-19 11:53:35 -07:00
2007-10-19 11:53:38 -07:00
2007-10-19 11:53:36 -07:00
2007-10-19 11:53:55 -07:00
2007-11-14 18:45:41 -08:00
2007-10-22 08:13:17 -07:00
2007-10-19 11:53:36 -07:00
2008-01-25 11:29:49 +11:00
2007-10-23 15:49:54 +10:00
2008-01-24 20:40:35 -08:00
2007-11-07 04:08:55 -08:00
2007-10-19 11:53:44 -07:00
2007-10-30 14:32:16 -04:00
2007-10-23 08:23:00 -07:00
2007-11-12 18:10:39 -08:00
2008-01-08 23:30:07 -08:00
2007-12-14 13:54:39 -08:00
2007-11-07 04:15:12 -08:00
2007-11-26 16:24:48 -05:00
2008-01-25 21:08:02 +01:00
2007-10-19 11:53:37 -07:00
2007-10-19 11:53:41 -07:00
2007-10-23 19:53:16 -04:00
2008-01-24 20:40:14 -08:00
2008-01-23 05:24:17 -05:00
2007-11-05 13:35:17 -08:00
2007-10-19 11:53:41 -07:00
2007-12-04 15:06:33 -05:00
2007-11-14 18:45:43 -08:00
2007-10-19 11:53:41 -07:00
2008-01-24 20:40:06 -08:00
2008-01-24 20:40:43 -08:00
2008-01-11 12:26:47 -05:00
2008-01-11 12:26:47 -05:00
2007-12-27 23:55:13 -05:00
2007-10-19 11:53:41 -07:00
2007-12-05 09:21:20 -08:00
2008-01-02 13:13:27 -08:00
2007-12-23 12:54:36 -08:00
2008-01-25 21:08:24 +01:00
2008-01-25 21:08:24 +01:00
2008-01-25 21:08:24 +01:00
2008-01-25 21:08:24 +01:00
2007-10-19 11:53:35 -07:00
2007-10-22 08:13:20 -07:00
2007-11-29 09:24:54 -08:00
2007-11-12 17:58:35 -08:00
2008-01-11 10:12:55 +01:00
2008-01-25 21:08:35 +01:00
2007-11-29 09:24:54 -08:00
2008-01-25 11:29:54 +11:00
2007-11-17 10:38:16 +11:00
2007-10-19 11:53:44 -07:00
2007-11-29 09:24:53 -08:00
2007-10-19 11:53:44 -07:00
2007-11-26 23:11:19 +08:00
2008-01-02 13:04:48 -08:00
2008-01-02 13:04:48 -08:00
2008-01-02 13:04:48 -08:00
2008-01-25 21:08:33 +01:00
2007-11-09 22:39:38 +01:00
2007-10-22 02:59:48 -07:00
2008-01-25 21:08:34 +01:00
2007-10-30 21:44:00 -07:00
2007-11-20 11:13:45 +01:00
2008-01-24 20:40:40 -08:00
2008-01-23 11:29:18 -06:00
2007-12-05 15:46:09 +01:00
2008-01-24 20:40:06 -08:00
2007-11-26 20:42:19 +01:00
2008-01-25 21:08:20 +01:00
2008-01-08 16:16:34 -08:00
2007-10-29 07:41:33 -07:00
2007-10-19 11:53:42 -07:00
2008-01-24 20:40:26 -08:00
2007-12-17 10:47:14 -08:00
2007-12-17 10:47:15 -08:00
2007-11-28 13:58:34 -08:00
2007-12-26 19:36:35 -08:00
2007-10-22 12:01:30 -02:00
2007-10-22 12:01:24 -02:00
2007-10-23 13:47:31 -05:00
2007-10-23 15:49:54 +10:00
2007-10-23 15:49:54 +10:00
2007-10-23 15:49:55 +10:00
2007-10-23 15:49:54 +10:00
2007-11-12 13:59:40 +11:00
2007-10-23 15:49:54 +10:00
2007-10-19 11:53:34 -07:00
2008-01-16 09:51:58 +01:00
2008-01-14 21:21:29 -08:00