Commit e81568eb authored by Milosz Tanski's avatar Milosz Tanski

ceph: Do not do invalidate if the filesystem is mounted nofsc

Previously we would always try to enqueue work even if the filesystem is not
mounted with fscache enabled (or the file has no cookie). In the case of the
filesystem mouned nofsc (but with fscache compiled in) this would lead to a
crash.
Signed-off-by: default avatarMilosz Tanski <milosz@adfin.com>
parent d4d3aa38
...@@ -374,8 +374,12 @@ static void ceph_revalidate_work(struct work_struct *work) ...@@ -374,8 +374,12 @@ static void ceph_revalidate_work(struct work_struct *work)
void ceph_queue_revalidate(struct inode *inode) void ceph_queue_revalidate(struct inode *inode)
{ {
struct ceph_fs_client *fsc = ceph_sb_to_client(inode->i_sb);
struct ceph_inode_info *ci = ceph_inode(inode); struct ceph_inode_info *ci = ceph_inode(inode);
if (fsc->revalidate_wq == NULL || ci->fscache == NULL)
return;
ihold(inode); ihold(inode);
if (queue_work(ceph_sb_to_client(inode->i_sb)->revalidate_wq, if (queue_work(ceph_sb_to_client(inode->i_sb)->revalidate_wq,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment