]> git.baikalelectronics.ru Git - kernel.git/commit
block: ensure to split after potentially bouncing a bio
authorJunichi Nomura <j-nomura@ce.jp.nec.com>
Tue, 22 Dec 2015 17:23:44 +0000 (10:23 -0700)
committerJens Axboe <axboe@fb.com>
Tue, 22 Dec 2015 17:26:53 +0000 (10:26 -0700)
commit3018be5ebb0e4bd3226f5170f7c696d67700692a
tree39614e2d840c745b28d09adb14f3761082beb75b
parent77437004d8c8ab128df9fcd9a2ab010596259c4c
block: ensure to split after potentially bouncing a bio

blk_queue_bio() does split then bounce, which makes the segment
counting based on pages before bouncing and could go wrong. Move
the split to after bouncing, like we do for blk-mq, and the we
fix the issue of having the bio count for segments be wrong.

Fixes: fbe004c30353 ("block: make generic_make_request handle arbitrarily sized bios")
Cc: stable@vger.kernel.org
Tested-by: Artem S. Tashkinov <t.artem@lycos.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
block/blk-core.c