Merge back cpufreq changes for v5.15.
[linux-2.6-microblaze.git] / fs / fuse / readdir.c
index 277f704..bc26783 100644 (file)
@@ -200,9 +200,12 @@ retry:
        if (!d_in_lookup(dentry)) {
                struct fuse_inode *fi;
                inode = d_inode(dentry);
+               if (inode && get_node_id(inode) != o->nodeid)
+                       inode = NULL;
                if (!inode ||
-                   get_node_id(inode) != o->nodeid ||
-                   inode_wrong_type(inode, o->attr.mode)) {
+                   fuse_stale_inode(inode, o->generation, &o->attr)) {
+                       if (inode)
+                               fuse_make_bad(inode);
                        d_invalidate(dentry);
                        dput(dentry);
                        goto retry;