aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--security/selinux/ss/services.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/security/selinux/ss/services.c b/security/selinux/ss/services.c
index bdb7070dd3d..ee058155796 100644
--- a/security/selinux/ss/services.c
+++ b/security/selinux/ss/services.c
@@ -2660,9 +2660,11 @@ int selinux_netlbl_inode_permission(struct inode *inode, int mask)
2660 rcu_read_unlock(); 2660 rcu_read_unlock();
2661 return 0; 2661 return 0;
2662 } 2662 }
2663 lock_sock(sock->sk); 2663 local_bh_disable();
2664 bh_lock_sock_nested(sock->sk);
2664 rc = selinux_netlbl_socket_setsid(sock, sksec->sid); 2665 rc = selinux_netlbl_socket_setsid(sock, sksec->sid);
2665 release_sock(sock->sk); 2666 bh_unlock_sock(sock->sk);
2667 local_bh_enable();
2666 rcu_read_unlock(); 2668 rcu_read_unlock();
2667 2669
2668 return rc; 2670 return rc;