diff options
Diffstat (limited to 'security')
-rw-r--r-- | security/selinux/netnode.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/security/selinux/netnode.c b/security/selinux/netnode.c index 28f911cdd7c7..c5454c0477c3 100644 --- a/security/selinux/netnode.c +++ b/security/selinux/netnode.c | |||
@@ -174,7 +174,8 @@ static void sel_netnode_insert(struct sel_netnode *node) | |||
174 | if (sel_netnode_hash[idx].size == SEL_NETNODE_HASH_BKT_LIMIT) { | 174 | if (sel_netnode_hash[idx].size == SEL_NETNODE_HASH_BKT_LIMIT) { |
175 | struct sel_netnode *tail; | 175 | struct sel_netnode *tail; |
176 | tail = list_entry( | 176 | tail = list_entry( |
177 | rcu_dereference(sel_netnode_hash[idx].list.prev), | 177 | rcu_dereference_protected(sel_netnode_hash[idx].list.prev, |
178 | lockdep_is_held(&sel_netnode_lock)), | ||
178 | struct sel_netnode, list); | 179 | struct sel_netnode, list); |
179 | list_del_rcu(&tail->list); | 180 | list_del_rcu(&tail->list); |
180 | kfree_rcu(tail, rcu); | 181 | kfree_rcu(tail, rcu); |