Whamcloud - gitweb
not revalidate dentry if it root dentry.
[fs/lustre-release.git] / lustre / llite / dcache.c
index 4cc8bf5..4f5803b 100644 (file)
@@ -272,7 +272,7 @@ restart:
 
                         continue;
                 }
-                
+
                 if (ll_drop_dentry(dentry))
                           goto restart;
         }
@@ -389,7 +389,7 @@ int ll_revalidate_it(struct dentry *de, int lookup_flags,
 
         /* Root of the lustre tree. Always valid.
          * Attributes will be fixed up in ll_inode_revalidate_it */
-        if (de->d_name.name[0] == '/' && de->d_name.len == 1)
+        if (de == de->d_sb->s_root)
                 RETURN(1);
 
         OBD_FAIL_TIMEOUT(OBD_FAIL_MDC_REVALIDATE_PAUSE, 5);
@@ -399,12 +399,13 @@ int ll_revalidate_it(struct dentry *de, int lookup_flags,
         parent = de->d_parent->d_inode;
 
         if (it->it_op & IT_CREAT) {
-                op_data = ll_prep_md_op_data(NULL, parent, NULL, de->d_name.name,
-                                             de->d_name.len, 0, LUSTRE_OPC_CREATE);
+                op_data = ll_prep_md_op_data(NULL, parent, NULL,
+                                             de->d_name.name, de->d_name.len,
+                                             0, LUSTRE_OPC_CREATE, NULL);
         } else {
                 op_data = ll_prep_md_op_data(NULL, parent, de->d_inode,
                                              de->d_name.name, de->d_name.len,
-                                             0, LUSTRE_OPC_ANY);
+                                             0, LUSTRE_OPC_ANY, NULL);
         }
         if (IS_ERR(op_data))
                 RETURN(PTR_ERR(op_data));
@@ -565,7 +566,7 @@ do_lookup:
         op_data = ll_prep_md_op_data(NULL, parent, NULL, de->d_name.name,
                                      de->d_name.len, 0, (it->it_op & IT_CREAT ?
                                                          LUSTRE_OPC_CREATE :
-                                                         LUSTRE_OPC_ANY));
+                                                         LUSTRE_OPC_ANY), NULL);
         if (IS_ERR(op_data))
                 RETURN(PTR_ERR(op_data));