From: Peter Enderborg <peter.enderborg@xxxxxxxx> The locks are moved to dynamic allocation, we need to help the lockdep system to classify the locks. This adds to lockdep annotation for the page mutex and for the ss lock. Signed-off-by: Peter Enderborg <peter.enderborg@xxxxxxxx> [sds@xxxxxxxxxxxxx: ported to v5.4-rc1] Signed-off-by: Stephen Smalley <sds@xxxxxxxxxxxxx> --- security/selinux/ss/services.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/security/selinux/ss/services.c b/security/selinux/ss/services.c index 57d6b8dddc54..9404a4494c7c 100644 --- a/security/selinux/ss/services.c +++ b/security/selinux/ss/services.c @@ -66,6 +66,9 @@ #include "ebitmap.h" #include "audit.h" +static struct lock_class_key selinux_ss_class_key; +static struct lock_class_key selinux_status_class_key; + /* Policy capability names */ const char *selinux_policycap_names[__POLICYDB_CAPABILITY_MAX] = { "network_peer_controls", @@ -84,7 +87,9 @@ int selinux_ss_create(struct selinux_ss **ss) if (!newss) return -ENOMEM; rwlock_init(&newss->policy_rwlock); + lockdep_set_class(&newss->policy_rwlock, &selinux_ss_class_key); mutex_init(&newss->status_lock); + lockdep_set_class(&newss->status_lock, &selinux_status_class_key); *ss = newss; return 0; } -- 2.21.0