Whamcloud - gitweb
LU-15668 osd-ldiskfs: fix osd_bio_private double free
authorLi Dongyang <dongyangli@ddn.com>
Tue, 22 Mar 2022 01:12:23 +0000 (12:12 +1100)
committerAndreas Dilger <adilger@whamcloud.com>
Mon, 12 Jun 2023 23:49:52 +0000 (23:49 +0000)
commit3d4be4162b3d087b2ba3bf3200615e47f165d1c1
tree459b74f56b427e40432b45106d5dab0f5def9c62
parent690975efab93ccaaced13e4d35f9d83e94c59f23
LU-15668 osd-ldiskfs: fix osd_bio_private double free

In osd_do_bio(), if the IO is fragmented and bio_alloc()
fails to allocate new bio, the bio_private still holds
osd_bio_private for last bio and will be double freed
in osd_do_bio() and dio_integrity_complete_routine().

Lustre-change: https://review.whamcloud.com/46879
Lustre-commit: 82d44b71f16bea216e04f7797ed032a783301d66

Test-Parameters: trivial
Change-Id: I42eaf95a85ec99a60359122054efb5beb0fb6104
Signed-off-by: Li Dongyang <dongyangli@ddn.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/ex/lustre-release/+/51187
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
lustre/osd-ldiskfs/osd_io.c