diff options
Diffstat (limited to 'fs/ceph/cache.c')
| -rw-r--r-- | fs/ceph/cache.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/ceph/cache.c b/fs/ceph/cache.c index 7db2e6ca4b8..834f9f3723f 100644 --- a/fs/ceph/cache.c +++ b/fs/ceph/cache.c @@ -205,6 +205,7 @@ void ceph_fscache_register_inode_cookie(struct ceph_fs_client* fsc, ci->fscache = fscache_acquire_cookie(fsc->fscache, &ceph_fscache_inode_object_def, ci, true); + fscache_check_consistency(ci->fscache); done: mutex_unlock(&inode->i_mutex); @@ -324,6 +325,9 @@ void ceph_invalidate_fscache_page(struct inode* inode, struct page *page) { struct ceph_inode_info *ci = ceph_inode(inode); + if (!PageFsCache(page)) + return; + fscache_wait_on_page_write(ci->fscache, page); fscache_uncache_page(ci->fscache, page); } |
