ceph: wake up writer if vmtruncate work get blocked
authorYan, Zheng <zheng.z.yan@intel.com>
Sun, 21 Jul 2013 12:25:26 +0000 (20:25 +0800)
committerSage Weil <sage@inktank.com>
Sat, 10 Aug 2013 00:54:33 +0000 (17:54 -0700)
commit85ce127a9adf5ab9e9d57ddf64c858927d5e546d
tree81d6d0bc74477cfafa5e249a7d96dee558f3a428
parentad88f23f42a9b34a0b29a5b19d37251ccb7dd776
ceph: wake up writer if vmtruncate work get blocked

To write data, the writer first acquires the i_mutex, then try getting
caps. The writer may sleep while holding the i_mutex. If the MDS revokes
Fb cap in this case, vmtruncate work can't do its job because i_mutex
is locked. We should wake up the writer and let it truncate the pages.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
Reviewed-by: Sage Weil <sage@inktank.com>
fs/ceph/inode.c