From: Shida Zhang <[email protected]> Hi all,
While investigating another problem [mentioned in v1], we identified some buggy code in the bio chain handling logic. This series addresses those issues and performs related code cleanup. Patches 1-3 fix incorrect usage of bio_chain_endio(). Patches 4-9 clean up repetitive code patterns in bio chain handling. v3: - Remove the dead code in bio_chain_endio and drop patch 1 in v2 - Refined the __bio_chain_endio changes with minor modifications (was patch 02 in v2). - Dropped cleanup patches 06 and 12 from v2 due to an incorrect 'prev' and 'new' order. v2: - Added fix for bcache. - Added BUG_ON() in bio_chain_endio(). - Enhanced commit messages for each patch https://lore.kernel.org/all/[email protected]/ v1: https://lore.kernel.org/all/[email protected]/ Shida Zhang (9): md: bcache: fix improper use of bi_end_io block: prohibit calls to bio_chain_endio block: prevent race condition on bi_status in __bio_chain_endio block: export bio_chain_and_submit xfs: Replace the repetitive bio chaining code patterns block: Replace the repetitive bio chaining code patterns fs/ntfs3: Replace the repetitive bio chaining code patterns zram: Replace the repetitive bio chaining code patterns nvdimm: Replace the repetitive bio chaining code patterns block/bio.c | 12 +++++++++--- drivers/block/zram/zram_drv.c | 3 +-- drivers/md/bcache/request.c | 6 +++--- drivers/nvdimm/nd_virtio.c | 3 +-- fs/ntfs3/fsntfs.c | 12 ++---------- fs/squashfs/block.c | 3 +-- fs/xfs/xfs_bio_io.c | 3 +-- fs/xfs/xfs_buf.c | 3 +-- fs/xfs/xfs_log.c | 3 +-- 9 files changed, 20 insertions(+), 28 deletions(-) -- 2.34.1
