selinux: avc: drop unused function avc_disable()
authorChristian Göttsche <cgzones@googlemail.com>
Thu, 20 Apr 2023 15:05:00 +0000 (17:05 +0200)
committerPaul Moore <paul@paul-moore.com>
Mon, 8 May 2023 20:45:36 +0000 (16:45 -0400)
Since commit f22f9aaf6c3d ("selinux: remove the runtime disable
functionality") the function avc_disable() is no longer used.

Signed-off-by: Christian Göttsche <cgzones@googlemail.com>
Signed-off-by: Paul Moore <paul@paul-moore.com>
security/selinux/avc.c
security/selinux/include/avc.h

index eaed5c2..6bc6583 100644 (file)
@@ -1203,22 +1203,3 @@ u32 avc_policy_seqno(void)
 {
        return selinux_avc.avc_cache.latest_notif;
 }
-
-void avc_disable(void)
-{
-       /*
-        * If you are looking at this because you have realized that we are
-        * not destroying the avc_node_cachep it might be easy to fix, but
-        * I don't know the memory barrier semantics well enough to know.  It's
-        * possible that some other task dereferenced security_ops when
-        * it still pointed to selinux operations.  If that is the case it's
-        * possible that it is about to use the avc and is about to need the
-        * avc_node_cachep.  I know I could wrap the security.c security_ops call
-        * in an rcu_lock, but seriously, it's not worth it.  Instead I just flush
-        * the cache and get that memory back.
-        */
-       if (avc_node_cachep) {
-               avc_flush();
-               /* kmem_cache_destroy(avc_node_cachep); */
-       }
-}
index 9301222..9e055f7 100644 (file)
@@ -168,9 +168,6 @@ int avc_get_hash_stats(char *page);
 unsigned int avc_get_cache_threshold(void);
 void avc_set_cache_threshold(unsigned int cache_threshold);
 
-/* Attempt to free avc node cache */
-void avc_disable(void);
-
 #ifdef CONFIG_SECURITY_SELINUX_AVC_STATS
 DECLARE_PER_CPU(struct avc_cache_stats, avc_cache_stats);
 #endif