aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/linux/fs.h
diff options
context:
space:
mode:
authorZheng Bin <zhengbin13@huawei.com>2020-06-18 12:21:37 +0800
committerJens Axboe <axboe@kernel.dk>2020-06-18 09:24:35 -0600
commitf4bd34b139a3fa2808c4205f12714c65e1548c6c (patch)
treef006235fc2d2c665077d6fabf8b971b81b55f1c7 /include/linux/fs.h
parentpartitions/ldm: Replace uuid_copy() with import_uuid() where it makes sense (diff)
downloadwireguard-linux-f4bd34b139a3fa2808c4205f12714c65e1548c6c.tar.xz
wireguard-linux-f4bd34b139a3fa2808c4205f12714c65e1548c6c.zip
loop: replace kill_bdev with invalidate_bdev
When a filesystem is mounted on a loop device and on a loop ioctl LOOP_SET_STATUS64, because of kill_bdev, buffer_head mappings are getting destroyed. kill_bdev truncate_inode_pages truncate_inode_pages_range do_invalidatepage block_invalidatepage discard_buffer -->clear BH_Mapped flag sb_bread __bread_gfp bh = __getblk_gfp -->discard_buffer clear BH_Mapped flag __bread_slow submit_bh submit_bh_wbc BUG_ON(!buffer_mapped(bh)) --> hit this BUG_ON Fixes: 5db470e229e2 ("loop: drop caches if offset or block_size are changed") Signed-off-by: Zheng Bin <zhengbin13@huawei.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Bart Van Assche <bvanassche@acm.org> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include/linux/fs.h')
0 files changed, 0 insertions, 0 deletions