mmc: sdhci-of-arasan: wakeup genpd when being in suspend
[firefly-linux-kernel-4.4.55.git] / fs / nfsd / nfs4proc.c
index 4ce6b97b31adec12b47deafecf28e2e672753b8f..7d5351cd67fb09ff5aeb775f2e71f119f51f1800 100644 (file)
@@ -877,6 +877,7 @@ nfsd4_secinfo(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
                                    &exp, &dentry);
        if (err)
                return err;
+       fh_unlock(&cstate->current_fh);
        if (d_really_is_negative(dentry)) {
                exp_put(exp);
                err = nfserr_noent;
@@ -1309,6 +1310,7 @@ nfsd4_layoutget(struct svc_rqst *rqstp,
        nfserr = nfsd4_insert_layout(lgp, ls);
 
 out_put_stid:
+       mutex_unlock(&ls->ls_mutex);
        nfs4_put_stid(&ls->ls_stid);
 out:
        return nfserr;
@@ -1362,6 +1364,9 @@ nfsd4_layoutcommit(struct svc_rqst *rqstp,
                goto out;
        }
 
+       /* LAYOUTCOMMIT does not require any serialization */
+       mutex_unlock(&ls->ls_mutex);
+
        if (new_size > i_size_read(inode)) {
                lcp->lc_size_chg = 1;
                lcp->lc_newsize = new_size;