pNFS: Skip invalid stateids when doing a bulk destroy
authorTrond Myklebust <trond.myklebust@primarydata.com>
Wed, 30 Nov 2016 23:00:07 +0000 (18:00 -0500)
committerTrond Myklebust <trond.myklebust@primarydata.com>
Thu, 1 Dec 2016 22:21:51 +0000 (17:21 -0500)
If the layout stateid is already invalid, we have no work to do.

Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
fs/nfs/pnfs.c

index 550010826bdd3c8263ae2356d5417b5aaa042c79..0b25a1c820ba523ede716903e1eb7f06657ef0aa 100644 (file)
@@ -750,6 +750,8 @@ pnfs_layout_bulk_destroy_byserver_locked(struct nfs_client *clp,
        struct inode *inode;
 
        list_for_each_entry_safe(lo, next, &server->layouts, plh_layouts) {
+               if (test_bit(NFS_LAYOUT_INVALID_STID, &lo->plh_flags))
+                       continue;
                inode = igrab(lo->plh_inode);
                if (inode == NULL)
                        continue;