Merge tag 'nfs-for-3.12-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs
[firefly-linux-kernel-4.4.55.git] / fs / ceph / cache.c
index c737ae9893efa7d92b6cbb066080e651cbc07712..6bfe65e0b03831280b0e66e96d616be9ee55e6b1 100644 (file)
@@ -21,8 +21,6 @@
  *
  */
 
-#include <linux/fscache.h>
-
 #include "super.h"
 #include "cache.h"
 
@@ -56,12 +54,12 @@ static const struct fscache_cookie_def ceph_fscache_fsid_object_def = {
        .get_key        = ceph_fscache_session_get_key,
 };
 
-int ceph_fscache_register()
+int ceph_fscache_register(void)
 {
        return fscache_register_netfs(&ceph_cache_netfs);
 }
 
-void ceph_fscache_unregister()
+void ceph_fscache_unregister(void)
 {
        fscache_unregister_netfs(&ceph_cache_netfs);
 }
@@ -374,8 +372,12 @@ out:
 
 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);
 
+       if (fsc->revalidate_wq == NULL || ci->fscache == NULL)
+               return;
+
        ihold(inode);
 
        if (queue_work(ceph_sb_to_client(inode->i_sb)->revalidate_wq,