diff --git a/lib/slub_kunit.c b/lib/slub_kunit.c index 8662dc6cb50922..7b80241dd4982a 100644 --- a/lib/slub_kunit.c +++ b/lib/slub_kunit.c @@ -32,6 +32,11 @@ static void test_next_pointer(struct kunit *test) struct kmem_cache *s = kmem_cache_create("TestSlub_next_ptr_free", 64, 0, SLAB_POISON, NULL); u8 *p = kmem_cache_alloc(s, GFP_KERNEL); + if (!p) { + kunit_err(test, "Allocation failed: %s\n", __func__); + kmem_cache_destroy(s); + return; + } unsigned long tmp; unsigned long *ptr_addr; @@ -77,6 +82,11 @@ static void test_first_word(struct kunit *test) struct kmem_cache *s = kmem_cache_create("TestSlub_1th_word_free", 64, 0, SLAB_POISON, NULL); u8 *p = kmem_cache_alloc(s, GFP_KERNEL); + if (!p) { + kunit_err(test, "Allocation failed: %s\n", __func__); + kmem_cache_destroy(s); + return; + } kmem_cache_free(s, p); *p = 0x78; @@ -92,6 +102,11 @@ static void test_clobber_50th_byte(struct kunit *test) struct kmem_cache *s = kmem_cache_create("TestSlub_50th_word_free", 64, 0, SLAB_POISON, NULL); u8 *p = kmem_cache_alloc(s, GFP_KERNEL); + if (!p) { + kunit_err(test, "Allocation failed: %s\n", __func__); + kmem_cache_destroy(s); + return; + } kmem_cache_free(s, p); p[50] = 0x9a; @@ -108,6 +123,11 @@ static void test_clobber_redzone_free(struct kunit *test) struct kmem_cache *s = kmem_cache_create("TestSlub_RZ_free", 64, 0, SLAB_RED_ZONE, NULL); u8 *p = kmem_cache_alloc(s, GFP_KERNEL); + if (!p) { + kunit_err(test, "Allocation failed: %s\n", __func__); + kmem_cache_destroy(s); + return; + } kasan_disable_current(); kmem_cache_free(s, p);