diff mbox

[02/14] UBUNTU: SAUCE: apparmor: fix stack trace when removing namespace with profiles

Message ID 1471943154-14507-3-git-send-email-john.johansen@canonical.com
State New
Headers show

Commit Message

John Johansen Aug. 23, 2016, 9:05 a.m. UTC
BugLink: http://bugs.launchpad.net/bugs/1593874

Signed-off-by: John Johansen <john.johansen@canonical.com>
---
 security/apparmor/policy_ns.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
diff mbox

Patch

diff --git a/security/apparmor/policy_ns.c b/security/apparmor/policy_ns.c
index d06e664..19adb24 100644
--- a/security/apparmor/policy_ns.c
+++ b/security/apparmor/policy_ns.c
@@ -259,9 +259,13 @@  static void destroy_ns(struct aa_ns *ns)
 	/* release all sub namespaces */
 	__ns_list_release(&ns->sub_ns);
 
-	if (ns->parent)
+	if (ns->parent) {
+		unsigned long flags;
+		write_lock_irqsave(&ns->labels.lock, flags);
 		__aa_proxy_redirect(ns_unconfined(ns),
 				    ns_unconfined(ns->parent));
+		write_unlock_irqrestore(&ns->labels.lock, flags);
+	}
 	__aa_fs_ns_rmdir(ns);
 	mutex_unlock(&ns->lock);
 }