block/fops: fix refcount underflow in __blkdev_direct_IO()#924
block/fops: fix refcount underflow in __blkdev_direct_IO()#924blktests-ci[bot] wants to merge 1 commit into
Conversation
|
Upstream branch: e43ffb6 |
c6dc343 to
fc36596
Compare
|
Upstream branch: ba3e43a |
2769fd0 to
1910171
Compare
fc36596 to
7bed9c3
Compare
|
Upstream branch: ddd664b |
1910171 to
0625c6c
Compare
7bed9c3 to
a7bb5c5
Compare
|
Upstream branch: 979c294 |
0625c6c to
548f304
Compare
a7bb5c5 to
5e41a3b
Compare
|
Upstream branch: acb7500 |
548f304 to
1bc053b
Compare
5e41a3b to
c3a084b
Compare
|
Upstream branch: 9716c08 |
1bc053b to
7fb9e4e
Compare
c3a084b to
5f78e5d
Compare
|
Upstream branch: 2a2974b |
7fb9e4e to
0810607
Compare
5f78e5d to
e48f9db
Compare
|
Upstream branch: 062871f |
0810607 to
e808c9b
Compare
199644a to
e6d9eb8
Compare
|
Upstream branch: 66affa3 |
e808c9b to
aa3de51
Compare
e6d9eb8 to
7d8604f
Compare
|
Upstream branch: bade58e |
aa3de51 to
9e22a04
Compare
7d8604f to
4cc45a3
Compare
|
Upstream branch: 4edcdef |
9e22a04 to
193cf32
Compare
4cc45a3 to
90ffd56
Compare
__blkdev_direct_IO() calls bio_get() and bio_put() around I/O operations, but if the I/O fails, the error path may call bio_put() twice, causing a refcount underflow. Fix this by moving the bio_put() call from the error path into the cleanup section that is only executed once, regardless of whether the I/O succeeded or failed. Fixes: 3d8b5a2 ("block: add support to pass user meta buffer") Cc: stable@vger.kernel.org Signed-off-by: Wentao Liang <vulab@iscas.ac.cn>
|
Upstream branch: dc59e4f |
193cf32 to
615d2f9
Compare
Pull request for series with
subject: block/fops: fix refcount underflow in __blkdev_direct_IO()
version: 1
url: https://patchwork.kernel.org/project/linux-block/list/?series=1104964