Merge tag 'nfsd-4.10' of git://linux-nfs.org/~bfields/linux
Pull nfsd updates from Bruce Fields: "The one new feature is support for a new NFSv4.2 mode_umask attribute that makes ACL inheritance a little more useful in environments that default to restrictive umasks. Requires client-side support, also on its way for 4.10. Other than that, miscellaneous smaller fixes and cleanup, especially to the server rdma code" [ The client side of the umask attribute was merged yesterday ] * tag 'nfsd-4.10' of git://linux-nfs.org/~bfields/linux: nfsd: add support for the umask attribute sunrpc: use DEFINE_SPINLOCK() svcrdma: Further clean-up of svc_rdma_get_inv_rkey() svcrdma: Break up dprintk format in svc_rdma_accept() svcrdma: Remove unused variable in rdma_copy_tail() svcrdma: Remove unused variables in xprt_rdma_bc_allocate() svcrdma: Remove svc_rdma_op_ctxt::wc_status svcrdma: Remove DMA map accounting svcrdma: Remove BH-disabled spin locking in svc_rdma_send() svcrdma: Renovate sendto chunk list parsing svcauth_gss: Close connection when dropping an incoming message svcrdma: Clear xpt_bc_xps in xprt_setup_rdma_bc() error exit arm nfsd: constify reply_cache_stats_operations structure nfsd: update workqueue creation sunrpc: GFP_KERNEL should be GFP_NOFS in crypto code nfsd: catch errors in decode_fattr earlier nfsd: clean up supported attribute handling nfsd: fix error handling for clients that fail to return the layout nfsd: more robust allocation failure handling in nfsd_reply_cache_init
此提交包含在:
@@ -200,7 +200,7 @@ make_checksum_hmac_md5(struct krb5_ctx *kctx, char *header, int hdrlen,
|
||||
if (IS_ERR(hmac_md5))
|
||||
goto out_free_md5;
|
||||
|
||||
req = ahash_request_alloc(md5, GFP_KERNEL);
|
||||
req = ahash_request_alloc(md5, GFP_NOFS);
|
||||
if (!req)
|
||||
goto out_free_hmac_md5;
|
||||
|
||||
@@ -230,7 +230,7 @@ make_checksum_hmac_md5(struct krb5_ctx *kctx, char *header, int hdrlen,
|
||||
goto out;
|
||||
|
||||
ahash_request_free(req);
|
||||
req = ahash_request_alloc(hmac_md5, GFP_KERNEL);
|
||||
req = ahash_request_alloc(hmac_md5, GFP_NOFS);
|
||||
if (!req)
|
||||
goto out_free_hmac_md5;
|
||||
|
||||
@@ -299,7 +299,7 @@ make_checksum(struct krb5_ctx *kctx, char *header, int hdrlen,
|
||||
if (IS_ERR(tfm))
|
||||
goto out_free_cksum;
|
||||
|
||||
req = ahash_request_alloc(tfm, GFP_KERNEL);
|
||||
req = ahash_request_alloc(tfm, GFP_NOFS);
|
||||
if (!req)
|
||||
goto out_free_ahash;
|
||||
|
||||
@@ -397,7 +397,7 @@ make_checksum_v2(struct krb5_ctx *kctx, char *header, int hdrlen,
|
||||
goto out_free_cksum;
|
||||
checksumlen = crypto_ahash_digestsize(tfm);
|
||||
|
||||
req = ahash_request_alloc(tfm, GFP_KERNEL);
|
||||
req = ahash_request_alloc(tfm, GFP_NOFS);
|
||||
if (!req)
|
||||
goto out_free_ahash;
|
||||
|
||||
@@ -963,7 +963,7 @@ krb5_rc4_setup_seq_key(struct krb5_ctx *kctx, struct crypto_skcipher *cipher,
|
||||
}
|
||||
|
||||
desc = kmalloc(sizeof(*desc) + crypto_shash_descsize(hmac),
|
||||
GFP_KERNEL);
|
||||
GFP_NOFS);
|
||||
if (!desc) {
|
||||
dprintk("%s: failed to allocate shash descriptor for '%s'\n",
|
||||
__func__, kctx->gk5e->cksum_name);
|
||||
@@ -1030,7 +1030,7 @@ krb5_rc4_setup_enc_key(struct krb5_ctx *kctx, struct crypto_skcipher *cipher,
|
||||
}
|
||||
|
||||
desc = kmalloc(sizeof(*desc) + crypto_shash_descsize(hmac),
|
||||
GFP_KERNEL);
|
||||
GFP_NOFS);
|
||||
if (!desc) {
|
||||
dprintk("%s: failed to allocate shash descriptor for '%s'\n",
|
||||
__func__, kctx->gk5e->cksum_name);
|
||||
|
@@ -451,8 +451,7 @@ context_derive_keys_rc4(struct krb5_ctx *ctx)
|
||||
goto out_err_free_hmac;
|
||||
|
||||
|
||||
desc = kmalloc(sizeof(*desc) + crypto_shash_descsize(hmac),
|
||||
GFP_KERNEL);
|
||||
desc = kmalloc(sizeof(*desc) + crypto_shash_descsize(hmac), GFP_NOFS);
|
||||
if (!desc) {
|
||||
dprintk("%s: failed to allocate hash descriptor for '%s'\n",
|
||||
__func__, ctx->gk5e->cksum_name);
|
||||
|
@@ -1548,7 +1548,7 @@ complete:
|
||||
ret = SVC_COMPLETE;
|
||||
goto out;
|
||||
drop:
|
||||
ret = SVC_DROP;
|
||||
ret = SVC_CLOSE;
|
||||
out:
|
||||
if (rsci)
|
||||
cache_put(&rsci->h, sn->rsc_cache);
|
||||
|
新增問題並參考
封鎖使用者