Jens Axboe
61febef40b
dm-rq: don't dereference request payload after ending request
...
Bart reported a case where dm would crash with use-after-free
poison. This is due to dm_softirq_done() accessing memory
associated with a request after calling end_request on it.
This is most visible on !blk-mq, since we free the memory
immediately for that case.
Reported-by: Bart Van Assche <bart.vanassche@sandisk.com>
Suggested-by: Linus Torvalds <torvalds@linux-foundation.org>
Fixes: eb8db831be80 ("dm: always defer request allocation to the owner of the request_queue")
Signed-off-by: Jens Axboe <axboe@fb.com>
2017-02-24 13:19:32 -07:00
..
2017-02-02 08:20:48 -07:00
2017-01-14 11:14:16 +01:00
2016-12-08 22:01:47 -08:00
2016-05-04 12:39:35 -07:00
2015-07-29 08:55:15 -06:00
2015-05-29 14:19:06 -04:00
2017-01-14 11:14:16 +01:00
2016-06-10 15:15:44 -04:00
2016-12-16 00:13:41 +02:00
2016-11-21 09:52:02 -05:00
2016-03-10 17:12:12 -05:00
2016-09-22 11:15:02 -04:00
2016-09-22 11:15:02 -04:00
2016-12-08 19:42:37 -05:00
2016-09-22 11:15:02 -04:00
2017-02-02 08:20:48 -07:00
2017-01-27 15:08:35 -07:00
2017-02-20 13:23:30 -08:00
2016-02-22 22:34:37 -05:00
2017-02-02 08:20:48 -07:00
2015-11-04 21:19:53 -08:00
2016-01-08 20:03:05 -05:00
2016-12-13 15:01:31 -05:00
2016-11-21 09:51:57 -05:00
2016-12-24 11:46:01 -08:00
2016-06-10 15:15:44 -04:00
2016-07-28 17:38:16 -07:00
2015-10-31 19:06:00 -04:00
2015-04-15 12:10:20 -04:00
2016-10-07 14:42:05 -07:00
2016-11-01 09:43:26 -06:00
2017-02-17 14:08:19 -07:00
2016-02-22 22:34:42 -05:00
2016-02-22 22:34:42 -05:00
2016-12-13 10:19:16 -08:00
2016-12-14 11:01:00 -08:00
2016-08-07 14:41:02 -06:00
2016-08-15 09:23:14 -04:00
2017-02-24 13:19:32 -07:00
2017-01-27 15:08:35 -07:00
2016-02-22 22:34:42 -05:00
2016-11-01 09:43:26 -06:00
2016-01-08 20:03:05 -05:00
2016-08-07 14:41:02 -06:00
2016-06-10 15:15:44 -04:00
2015-06-17 12:40:40 -04:00
2016-08-07 14:41:02 -06:00
2015-10-31 19:06:06 -04:00
2016-06-10 15:15:44 -04:00
2017-02-02 08:20:48 -07:00
2017-01-27 15:08:35 -07:00
2016-07-20 12:43:35 -04:00
2016-07-20 12:43:35 -04:00
2017-02-02 08:20:48 -07:00
2016-07-01 23:29:08 -04:00
2015-12-10 10:39:03 -05:00
2016-11-21 09:52:01 -05:00
2015-12-10 10:39:03 -05:00
2016-08-07 14:41:02 -06:00
2017-02-04 10:19:40 -07:00
2017-01-27 15:08:35 -07:00
2016-01-20 13:52:20 -08:00
2016-11-14 15:17:47 -05:00
2017-02-02 08:20:48 -07:00
2016-06-10 15:15:44 -04:00
2016-09-21 09:09:44 -07:00
2016-05-09 09:24:03 -07:00
2017-02-17 14:08:19 -07:00
2017-01-05 11:45:18 -08:00
2017-02-02 08:20:48 -07:00
2017-02-02 08:20:48 -07:00
2015-08-13 12:31:57 -06:00
2017-02-02 08:20:48 -07:00
2016-11-22 09:13:18 -08:00
2017-01-24 11:26:06 -08:00
2017-02-17 14:08:19 -07:00
2017-01-24 11:26:06 -08:00
2017-02-02 08:20:48 -07:00
2016-11-22 09:14:28 -08:00