aboutsummaryrefslogtreecommitdiffstats
path: root/security
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2013-03-16 12:48:11 +0300
committerBrett Rogers <brettrogers11@gmail.com>2015-11-07 23:25:26 -0800
commitdbcebd4c943ec1bf3af6ad2b0886aa4346831de2 (patch)
tree02fcfaab21a0f21c60061b9ce59fe4f23dba7ef6 /security
parent361003a3fcdb7bf1dfdf9a009cedbe5eb80ac173 (diff)
downloadkernel_samsung_smdk4412-dbcebd4c943ec1bf3af6ad2b0886aa4346831de2.zip
kernel_samsung_smdk4412-dbcebd4c943ec1bf3af6ad2b0886aa4346831de2.tar.gz
kernel_samsung_smdk4412-dbcebd4c943ec1bf3af6ad2b0886aa4346831de2.tar.bz2
selinux: use GFP_ATOMIC under spin_lock
commit 4502403dcf8f5c76abd4dbab8726c8e4ecb5cd34 upstream. The call tree here is: sk_clone_lock() <- takes bh_lock_sock(newsk); xfrm_sk_clone_policy() __xfrm_sk_clone_policy() clone_policy() <- uses GFP_ATOMIC for allocations security_xfrm_policy_clone() security_ops->xfrm_policy_clone_security() selinux_xfrm_policy_clone() Change-Id: Ibf8eb493b36d9bea9da3f05492b66b6c7e8ef8fc Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: James Morris <james.l.morris@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'security')
-rw-r--r--security/selinux/xfrm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/security/selinux/xfrm.c b/security/selinux/xfrm.c
index 68178b7..1df278c 100644
--- a/security/selinux/xfrm.c
+++ b/security/selinux/xfrm.c
@@ -310,7 +310,7 @@ int selinux_xfrm_policy_clone(struct xfrm_sec_ctx *old_ctx,
if (old_ctx) {
new_ctx = kmalloc(sizeof(*old_ctx) + old_ctx->ctx_len,
- GFP_KERNEL);
+ GFP_ATOMIC);
if (!new_ctx)
return -ENOMEM;