summaryrefslogtreecommitdiff
path: root/fs/ceph/debugfs.c
diff options
context:
space:
mode:
authorYan, Zheng <zyan@redhat.com>2016-04-15 08:56:12 +0300
committerIlya Dryomov <idryomov@gmail.com>2016-05-26 02:15:32 +0300
commit6c93df5db628e710697c43bc1bd78a786549a548 (patch)
tree8f74edaae6bfb61178af444a9c68fc5cf791f8da /fs/ceph/debugfs.c
parent77310320c299b0dc050037ff8fc29fd1861fb005 (diff)
downloadlinux-6c93df5db628e710697c43bc1bd78a786549a548.tar.xz
ceph: don't call truncate_pagecache in ceph_writepages_start
truncate_pagecache() may decrease inode's reference. This can cause deadlock if inode's last reference is dropped and iput_final() wants to evict the inode. (evict() calls inode_wait_for_writeback(), which waits for ceph_writepages_start() to return). The fix is use work thead to truncate dirty pages. Also add 'forced umount' check to ceph_update_writeable_page(), which prevents new pages getting dirty. Signed-off-by: Yan, Zheng <zyan@redhat.com>
Diffstat (limited to 'fs/ceph/debugfs.c')
0 files changed, 0 insertions, 0 deletions