Răsfoiți Sursa

slub: Add check for kfree() of non slab objects.

We can detect kfree()s on non slab objects by checking for PageCompound().
Works in the same way as for ksize. This helped me catch an invalid
kfree().

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Christoph Lameter 17 ani în urmă
părinte
comite
0937502af7
1 a modificat fișierele cu 1 adăugiri și 0 ștergeri
  1. 1 0
      mm/slub.c

+ 1 - 0
mm/slub.c

@@ -2766,6 +2766,7 @@ void kfree(const void *x)
 
 	page = virt_to_head_page(x);
 	if (unlikely(!PageSlab(page))) {
+		BUG_ON(!PageCompound(page));
 		put_page(page);
 		return;
 	}