mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-09 22:50:41 +00:00
SELinux: seperate avc_cache flushing
Move the avc_cache flushing into it's own function so it can be reused when disabling SELinux. Signed-off-by: Eric Paris <eparis@redhat.com> Signed-off-by: James Morris <jmorris@namei.org>
This commit is contained in:
parent
ed868a5698
commit
008574b111
@ -709,18 +709,16 @@ out:
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* avc_ss_reset - Flush the cache and revalidate migrated permissions.
|
* avc_flush - Flush the cache
|
||||||
* @seqno: policy sequence number
|
|
||||||
*/
|
*/
|
||||||
int avc_ss_reset(u32 seqno)
|
static void avc_flush(void)
|
||||||
{
|
{
|
||||||
struct avc_callback_node *c;
|
|
||||||
int i, rc = 0, tmprc;
|
|
||||||
unsigned long flag;
|
|
||||||
struct avc_node *node;
|
|
||||||
struct hlist_head *head;
|
struct hlist_head *head;
|
||||||
struct hlist_node *next;
|
struct hlist_node *next;
|
||||||
|
struct avc_node *node;
|
||||||
spinlock_t *lock;
|
spinlock_t *lock;
|
||||||
|
unsigned long flag;
|
||||||
|
int i;
|
||||||
|
|
||||||
for (i = 0; i < AVC_CACHE_SLOTS; i++) {
|
for (i = 0; i < AVC_CACHE_SLOTS; i++) {
|
||||||
head = &avc_cache.slots[i];
|
head = &avc_cache.slots[i];
|
||||||
@ -737,6 +735,18 @@ int avc_ss_reset(u32 seqno)
|
|||||||
rcu_read_unlock();
|
rcu_read_unlock();
|
||||||
spin_unlock_irqrestore(lock, flag);
|
spin_unlock_irqrestore(lock, flag);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* avc_ss_reset - Flush the cache and revalidate migrated permissions.
|
||||||
|
* @seqno: policy sequence number
|
||||||
|
*/
|
||||||
|
int avc_ss_reset(u32 seqno)
|
||||||
|
{
|
||||||
|
struct avc_callback_node *c;
|
||||||
|
int rc = 0, tmprc;
|
||||||
|
|
||||||
|
avc_flush();
|
||||||
|
|
||||||
for (c = avc_callbacks; c; c = c->next) {
|
for (c = avc_callbacks; c; c = c->next) {
|
||||||
if (c->events & AVC_CALLBACK_RESET) {
|
if (c->events & AVC_CALLBACK_RESET) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user