Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 40425d27 authored by vijay.rayabarapu's avatar vijay.rayabarapu Committed by Gerrit - the friendly Code Review server
Browse files

selinux: cleanup the internal AVC counters on error in avc_update()



In avc_update_node() after calling avc_alloc_node() which,
increments avc->avc_cache.active_nodes counter,
but kmem_cache_free() were called when avc_xperms_populate()
fails , which does not decrements the active_nodes count,
resulting in the avc->avc_cache.active_nodes counter having
false value.so calling avc_node_node() to fix it.

Change-Id: Ic0298162cc766c0f21be7ab232e259766654dad3
Signed-off-by: default avatarJaihind Yadav <jaihindyadav@codeaurora.org>
Signed-off-by: default avatarvijay.rayabarapu <vijay.rayabarapu@codeaurora.org>
Signed-off-by: default avatarRavi Kumar Siddojigari <rsiddoji@codeaurora.org>
parent 5f02f3bd
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -863,7 +863,7 @@ static int avc_update_node(u32 event, u32 perms, u8 driver, u8 xperm, u32 ssid,
	if (orig->ae.xp_node) {
		rc = avc_xperms_populate(node, orig->ae.xp_node);
		if (rc) {
			kmem_cache_free(avc_node_cachep, node);
			avc_node_kill(node);
			goto out_unlock;
		}
	}