diff --git a/[refs] b/[refs] index d76e4af5ad31..afd40fc8a2c3 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ec8acb6904fabb8e741f741ec99bb1c18f2b3dee +refs/heads/master: 9883a13c72dbf8c518814b6091019643cdb34429 diff --git a/trunk/security/selinux/ss/services.c b/trunk/security/selinux/ss/services.c index bdb7070dd3dc..ee0581557966 100644 --- a/trunk/security/selinux/ss/services.c +++ b/trunk/security/selinux/ss/services.c @@ -2660,9 +2660,11 @@ int selinux_netlbl_inode_permission(struct inode *inode, int mask) rcu_read_unlock(); return 0; } - lock_sock(sock->sk); + local_bh_disable(); + bh_lock_sock_nested(sock->sk); rc = selinux_netlbl_socket_setsid(sock, sksec->sid); - release_sock(sock->sk); + bh_unlock_sock(sock->sk); + local_bh_enable(); rcu_read_unlock(); return rc;