io_uring: ensure that SQPOLL thread is started for exit
[linux-2.6-microblaze.git] / fs / nfs / nfs4proc.c
index a07530c..74bc512 100644 (file)
 
 #include "nfs4trace.h"
 
-#ifdef CONFIG_NFS_V4_2
-#include "nfs42.h"
-#endif /* CONFIG_NFS_V4_2 */
-
 #define NFSDBG_FACILITY                NFSDBG_PROC
 
 #define NFS4_BITMASK_SZ                3
@@ -2231,6 +2227,7 @@ static int nfs4_handle_delegation_recall_error(struct nfs_server *server, struct
                default:
                        printk(KERN_ERR "NFS: %s: unhandled error "
                                        "%d.\n", __func__, err);
+                       fallthrough;
                case 0:
                case -ENOENT:
                case -EAGAIN:
@@ -5438,15 +5435,16 @@ static void nfs4_bitmask_adjust(__u32 *bitmask, struct inode *inode,
 
        if (cache_validity & NFS_INO_INVALID_ATIME)
                bitmask[1] |= FATTR4_WORD1_TIME_ACCESS;
-       if (cache_validity & NFS_INO_INVALID_ACCESS)
-               bitmask[0] |= FATTR4_WORD1_MODE | FATTR4_WORD1_OWNER |
-                               FATTR4_WORD1_OWNER_GROUP;
-       if (cache_validity & NFS_INO_INVALID_ACL)
-               bitmask[0] |= FATTR4_WORD0_ACL;
-       if (cache_validity & NFS_INO_INVALID_LABEL)
+       if (cache_validity & NFS_INO_INVALID_OTHER)
+               bitmask[1] |= FATTR4_WORD1_MODE | FATTR4_WORD1_OWNER |
+                               FATTR4_WORD1_OWNER_GROUP |
+                               FATTR4_WORD1_NUMLINKS;
+       if (label && label->len && cache_validity & NFS_INO_INVALID_LABEL)
                bitmask[2] |= FATTR4_WORD2_SECURITY_LABEL;
-       if (cache_validity & NFS_INO_INVALID_CTIME)
+       if (cache_validity & NFS_INO_INVALID_CHANGE)
                bitmask[0] |= FATTR4_WORD0_CHANGE;
+       if (cache_validity & NFS_INO_INVALID_CTIME)
+               bitmask[1] |= FATTR4_WORD1_TIME_METADATA;
        if (cache_validity & NFS_INO_INVALID_MTIME)
                bitmask[1] |= FATTR4_WORD1_TIME_MODIFY;
        if (cache_validity & NFS_INO_INVALID_SIZE)
@@ -9708,6 +9706,7 @@ nfs4_layoutcommit_done(struct rpc_task *task, void *calldata)
        case -NFS4ERR_BADLAYOUT:     /* no layout */
        case -NFS4ERR_GRACE:        /* loca_recalim always false */
                task->tk_status = 0;
+               break;
        case 0:
                break;
        default: