Lines Matching full:test

25 #include <kunit/test.h>
46 * test, see the comment for KUNIT_EXPECT_KASAN_FAIL().
48 static int kasan_test_init(struct kunit *test) in kasan_test_init() argument
51 kunit_err(test, "can't run KASAN tests with KASAN disabled"); in kasan_test_init()
60 static void kasan_test_exit(struct kunit *test) in kasan_test_exit() argument
68 * KASAN report; causes a test failure otherwise. This relies on a KUnit
73 * checking is auto-disabled. When this happens, this test handler reenables
82 #define KUNIT_EXPECT_KASAN_FAIL(test, expression) do { \ argument
88 kunit_add_named_resource(test, \
99 KUNIT_EXPECT_EQ(test, \
110 #define KASAN_TEST_NEEDS_CONFIG_ON(test, config) do { \ argument
112 kunit_info((test), "skipping, " #config " required"); \
117 #define KASAN_TEST_NEEDS_CONFIG_OFF(test, config) do { \ argument
119 kunit_info((test), "skipping, " #config " enabled"); \
124 static void kmalloc_oob_right(struct kunit *test) in kmalloc_oob_right() argument
130 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_oob_right()
132 KUNIT_EXPECT_KASAN_FAIL(test, ptr[size + OOB_TAG_OFF] = 'x'); in kmalloc_oob_right()
136 static void kmalloc_oob_left(struct kunit *test) in kmalloc_oob_left() argument
142 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_oob_left()
144 KUNIT_EXPECT_KASAN_FAIL(test, *ptr = *(ptr - 1)); in kmalloc_oob_left()
148 static void kmalloc_node_oob_right(struct kunit *test) in kmalloc_node_oob_right() argument
154 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_node_oob_right()
156 KUNIT_EXPECT_KASAN_FAIL(test, ptr[size] = 0); in kmalloc_node_oob_right()
166 static void kmalloc_pagealloc_oob_right(struct kunit *test) in kmalloc_pagealloc_oob_right() argument
171 KASAN_TEST_NEEDS_CONFIG_ON(test, CONFIG_SLUB); in kmalloc_pagealloc_oob_right()
174 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_pagealloc_oob_right()
176 KUNIT_EXPECT_KASAN_FAIL(test, ptr[size + OOB_TAG_OFF] = 0); in kmalloc_pagealloc_oob_right()
181 static void kmalloc_pagealloc_uaf(struct kunit *test) in kmalloc_pagealloc_uaf() argument
186 KASAN_TEST_NEEDS_CONFIG_ON(test, CONFIG_SLUB); in kmalloc_pagealloc_uaf()
189 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_pagealloc_uaf()
192 KUNIT_EXPECT_KASAN_FAIL(test, ptr[0] = 0); in kmalloc_pagealloc_uaf()
195 static void kmalloc_pagealloc_invalid_free(struct kunit *test) in kmalloc_pagealloc_invalid_free() argument
200 KASAN_TEST_NEEDS_CONFIG_ON(test, CONFIG_SLUB); in kmalloc_pagealloc_invalid_free()
203 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_pagealloc_invalid_free()
205 KUNIT_EXPECT_KASAN_FAIL(test, kfree(ptr + 1)); in kmalloc_pagealloc_invalid_free()
208 static void pagealloc_oob_right(struct kunit *test) in pagealloc_oob_right() argument
220 KASAN_TEST_NEEDS_CONFIG_OFF(test, CONFIG_KASAN_GENERIC); in pagealloc_oob_right()
224 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in pagealloc_oob_right()
226 KUNIT_EXPECT_KASAN_FAIL(test, ptr[size] = 0); in pagealloc_oob_right()
230 static void pagealloc_uaf(struct kunit *test) in pagealloc_uaf() argument
238 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in pagealloc_uaf()
241 KUNIT_EXPECT_KASAN_FAIL(test, ptr[0] = 0); in pagealloc_uaf()
244 static void kmalloc_large_oob_right(struct kunit *test) in kmalloc_large_oob_right() argument
254 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_large_oob_right()
256 KUNIT_EXPECT_KASAN_FAIL(test, ptr[size] = 0); in kmalloc_large_oob_right()
260 static void krealloc_more_oob_helper(struct kunit *test, in krealloc_more_oob_helper() argument
266 KUNIT_ASSERT_LT(test, size1, size2); in krealloc_more_oob_helper()
270 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr1); in krealloc_more_oob_helper()
273 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr2); in krealloc_more_oob_helper()
283 KUNIT_EXPECT_KASAN_FAIL(test, ptr2[size2] = 'x'); in krealloc_more_oob_helper()
286 KUNIT_EXPECT_KASAN_FAIL(test, in krealloc_more_oob_helper()
292 static void krealloc_less_oob_helper(struct kunit *test, in krealloc_less_oob_helper() argument
298 KUNIT_ASSERT_LT(test, size2, size1); in krealloc_less_oob_helper()
302 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr1); in krealloc_less_oob_helper()
305 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr2); in krealloc_less_oob_helper()
312 KUNIT_EXPECT_KASAN_FAIL(test, ptr2[size2] = 'x'); in krealloc_less_oob_helper()
315 KUNIT_EXPECT_KASAN_FAIL(test, in krealloc_less_oob_helper()
322 KUNIT_EXPECT_LE(test, round_up(size2, KASAN_GRANULE_SIZE), in krealloc_less_oob_helper()
324 KUNIT_EXPECT_LE(test, round_up(middle, KASAN_GRANULE_SIZE), in krealloc_less_oob_helper()
326 KUNIT_EXPECT_KASAN_FAIL(test, ptr2[middle] = 'x'); in krealloc_less_oob_helper()
327 KUNIT_EXPECT_KASAN_FAIL(test, ptr2[size1 - 1] = 'x'); in krealloc_less_oob_helper()
328 KUNIT_EXPECT_KASAN_FAIL(test, ptr2[size1] = 'x'); in krealloc_less_oob_helper()
333 static void krealloc_more_oob(struct kunit *test) in krealloc_more_oob() argument
335 krealloc_more_oob_helper(test, 201, 235); in krealloc_more_oob()
338 static void krealloc_less_oob(struct kunit *test) in krealloc_less_oob() argument
340 krealloc_less_oob_helper(test, 235, 201); in krealloc_less_oob()
343 static void krealloc_pagealloc_more_oob(struct kunit *test) in krealloc_pagealloc_more_oob() argument
346 KASAN_TEST_NEEDS_CONFIG_ON(test, CONFIG_SLUB); in krealloc_pagealloc_more_oob()
348 krealloc_more_oob_helper(test, KMALLOC_MAX_CACHE_SIZE + 201, in krealloc_pagealloc_more_oob()
352 static void krealloc_pagealloc_less_oob(struct kunit *test) in krealloc_pagealloc_less_oob() argument
355 KASAN_TEST_NEEDS_CONFIG_ON(test, CONFIG_SLUB); in krealloc_pagealloc_less_oob()
357 krealloc_less_oob_helper(test, KMALLOC_MAX_CACHE_SIZE + 235, in krealloc_pagealloc_less_oob()
365 static void krealloc_uaf(struct kunit *test) in krealloc_uaf() argument
372 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr1); in krealloc_uaf()
375 KUNIT_EXPECT_KASAN_FAIL(test, ptr2 = krealloc(ptr1, size2, GFP_KERNEL)); in krealloc_uaf()
376 KUNIT_ASSERT_PTR_EQ(test, (void *)ptr2, NULL); in krealloc_uaf()
377 KUNIT_EXPECT_KASAN_FAIL(test, *(volatile char *)ptr1); in krealloc_uaf()
380 static void kmalloc_oob_16(struct kunit *test) in kmalloc_oob_16() argument
386 /* This test is specifically crafted for the generic mode. */ in kmalloc_oob_16()
387 KASAN_TEST_NEEDS_CONFIG_ON(test, CONFIG_KASAN_GENERIC); in kmalloc_oob_16()
390 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr1); in kmalloc_oob_16()
393 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr2); in kmalloc_oob_16()
395 KUNIT_EXPECT_KASAN_FAIL(test, *ptr1 = *ptr2); in kmalloc_oob_16()
400 static void kmalloc_uaf_16(struct kunit *test) in kmalloc_uaf_16() argument
407 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr1); in kmalloc_uaf_16()
410 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr2); in kmalloc_uaf_16()
413 KUNIT_EXPECT_KASAN_FAIL(test, *ptr1 = *ptr2); in kmalloc_uaf_16()
417 static void kmalloc_oob_memset_2(struct kunit *test) in kmalloc_oob_memset_2() argument
423 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_oob_memset_2()
425 KUNIT_EXPECT_KASAN_FAIL(test, memset(ptr + 7 + OOB_TAG_OFF, 0, 2)); in kmalloc_oob_memset_2()
429 static void kmalloc_oob_memset_4(struct kunit *test) in kmalloc_oob_memset_4() argument
435 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_oob_memset_4()
437 KUNIT_EXPECT_KASAN_FAIL(test, memset(ptr + 5 + OOB_TAG_OFF, 0, 4)); in kmalloc_oob_memset_4()
442 static void kmalloc_oob_memset_8(struct kunit *test) in kmalloc_oob_memset_8() argument
448 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_oob_memset_8()
450 KUNIT_EXPECT_KASAN_FAIL(test, memset(ptr + 1 + OOB_TAG_OFF, 0, 8)); in kmalloc_oob_memset_8()
454 static void kmalloc_oob_memset_16(struct kunit *test) in kmalloc_oob_memset_16() argument
460 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_oob_memset_16()
462 KUNIT_EXPECT_KASAN_FAIL(test, memset(ptr + 1 + OOB_TAG_OFF, 0, 16)); in kmalloc_oob_memset_16()
466 static void kmalloc_oob_in_memset(struct kunit *test) in kmalloc_oob_in_memset() argument
472 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_oob_in_memset()
474 KUNIT_EXPECT_KASAN_FAIL(test, memset(ptr, 0, size + 5 + OOB_TAG_OFF)); in kmalloc_oob_in_memset()
478 static void kmalloc_memmove_invalid_size(struct kunit *test) in kmalloc_memmove_invalid_size() argument
485 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_memmove_invalid_size()
489 KUNIT_EXPECT_KASAN_FAIL(test, in kmalloc_memmove_invalid_size()
494 static void kmalloc_uaf(struct kunit *test) in kmalloc_uaf() argument
500 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_uaf()
503 KUNIT_EXPECT_KASAN_FAIL(test, *(ptr + 8) = 'x'); in kmalloc_uaf()
506 static void kmalloc_uaf_memset(struct kunit *test) in kmalloc_uaf_memset() argument
512 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_uaf_memset()
515 KUNIT_EXPECT_KASAN_FAIL(test, memset(ptr, 0, size)); in kmalloc_uaf_memset()
518 static void kmalloc_uaf2(struct kunit *test) in kmalloc_uaf2() argument
526 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr1); in kmalloc_uaf2()
531 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr2); in kmalloc_uaf2()
542 KUNIT_EXPECT_KASAN_FAIL(test, ptr1[40] = 'x'); in kmalloc_uaf2()
543 KUNIT_EXPECT_PTR_NE(test, ptr1, ptr2); in kmalloc_uaf2()
548 static void kfree_via_page(struct kunit *test) in kfree_via_page() argument
556 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kfree_via_page()
563 static void kfree_via_phys(struct kunit *test) in kfree_via_phys() argument
570 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kfree_via_phys()
576 static void kmem_cache_oob(struct kunit *test) in kmem_cache_oob() argument
583 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, cache); in kmem_cache_oob()
587 kunit_err(test, "Allocation failed: %s\n", __func__); in kmem_cache_oob()
592 KUNIT_EXPECT_KASAN_FAIL(test, *p = p[size + OOB_TAG_OFF]); in kmem_cache_oob()
598 static void kmem_cache_accounted(struct kunit *test) in kmem_cache_accounted() argument
606 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, cache); in kmem_cache_accounted()
625 static void kmem_cache_bulk(struct kunit *test) in kmem_cache_bulk() argument
634 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, cache); in kmem_cache_bulk()
638 kunit_err(test, "Allocation failed: %s\n", __func__); in kmem_cache_bulk()
652 static void kasan_global_oob(struct kunit *test) in kasan_global_oob() argument
670 KASAN_TEST_NEEDS_CONFIG_ON(test, CONFIG_KASAN_GENERIC); in kasan_global_oob()
672 KUNIT_EXPECT_KASAN_FAIL(test, *(volatile char *)p); in kasan_global_oob()
676 static void ksize_unpoisons_memory(struct kunit *test) in ksize_unpoisons_memory() argument
682 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in ksize_unpoisons_memory()
689 KUNIT_EXPECT_KASAN_FAIL(test, ptr[real_size] = 'y'); in ksize_unpoisons_memory()
698 static void ksize_uaf(struct kunit *test) in ksize_uaf() argument
704 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in ksize_uaf()
707 KUNIT_EXPECT_KASAN_FAIL(test, ksize(ptr)); in ksize_uaf()
708 KUNIT_EXPECT_KASAN_FAIL(test, kasan_int_result = *ptr); in ksize_uaf()
709 KUNIT_EXPECT_KASAN_FAIL(test, kasan_int_result = *(ptr + size)); in ksize_uaf()
712 static void kasan_stack_oob(struct kunit *test) in kasan_stack_oob() argument
719 KASAN_TEST_NEEDS_CONFIG_ON(test, CONFIG_KASAN_STACK); in kasan_stack_oob()
721 KUNIT_EXPECT_KASAN_FAIL(test, *(volatile char *)p); in kasan_stack_oob()
724 static void kasan_alloca_oob_left(struct kunit *test) in kasan_alloca_oob_left() argument
733 KASAN_TEST_NEEDS_CONFIG_ON(test, CONFIG_KASAN_GENERIC); in kasan_alloca_oob_left()
734 KASAN_TEST_NEEDS_CONFIG_ON(test, CONFIG_KASAN_STACK); in kasan_alloca_oob_left()
736 KUNIT_EXPECT_KASAN_FAIL(test, *(volatile char *)p); in kasan_alloca_oob_left()
739 static void kasan_alloca_oob_right(struct kunit *test) in kasan_alloca_oob_right() argument
748 KASAN_TEST_NEEDS_CONFIG_ON(test, CONFIG_KASAN_GENERIC); in kasan_alloca_oob_right()
749 KASAN_TEST_NEEDS_CONFIG_ON(test, CONFIG_KASAN_STACK); in kasan_alloca_oob_right()
751 KUNIT_EXPECT_KASAN_FAIL(test, *(volatile char *)p); in kasan_alloca_oob_right()
754 static void kmem_cache_double_free(struct kunit *test) in kmem_cache_double_free() argument
761 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, cache); in kmem_cache_double_free()
765 kunit_err(test, "Allocation failed: %s\n", __func__); in kmem_cache_double_free()
771 KUNIT_EXPECT_KASAN_FAIL(test, kmem_cache_free(cache, p)); in kmem_cache_double_free()
775 static void kmem_cache_invalid_free(struct kunit *test) in kmem_cache_invalid_free() argument
783 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, cache); in kmem_cache_invalid_free()
787 kunit_err(test, "Allocation failed: %s\n", __func__); in kmem_cache_invalid_free()
793 KUNIT_EXPECT_KASAN_FAIL(test, kmem_cache_free(cache, p + 1)); in kmem_cache_invalid_free()
804 static void kasan_memchr(struct kunit *test) in kasan_memchr() argument
813 KASAN_TEST_NEEDS_CONFIG_OFF(test, CONFIG_AMD_MEM_ENCRYPT); in kasan_memchr()
819 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kasan_memchr()
821 KUNIT_EXPECT_KASAN_FAIL(test, in kasan_memchr()
827 static void kasan_memcmp(struct kunit *test) in kasan_memcmp() argument
837 KASAN_TEST_NEEDS_CONFIG_OFF(test, CONFIG_AMD_MEM_ENCRYPT); in kasan_memcmp()
843 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kasan_memcmp()
846 KUNIT_EXPECT_KASAN_FAIL(test, in kasan_memcmp()
851 static void kasan_strings(struct kunit *test) in kasan_strings() argument
860 KASAN_TEST_NEEDS_CONFIG_OFF(test, CONFIG_AMD_MEM_ENCRYPT); in kasan_strings()
863 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kasan_strings()
874 KUNIT_EXPECT_KASAN_FAIL(test, kasan_ptr_result = strchr(ptr, '1')); in kasan_strings()
876 KUNIT_EXPECT_KASAN_FAIL(test, kasan_ptr_result = strrchr(ptr, '1')); in kasan_strings()
878 KUNIT_EXPECT_KASAN_FAIL(test, kasan_int_result = strcmp(ptr, "2")); in kasan_strings()
880 KUNIT_EXPECT_KASAN_FAIL(test, kasan_int_result = strncmp(ptr, "2", 1)); in kasan_strings()
882 KUNIT_EXPECT_KASAN_FAIL(test, kasan_int_result = strlen(ptr)); in kasan_strings()
884 KUNIT_EXPECT_KASAN_FAIL(test, kasan_int_result = strnlen(ptr, 1)); in kasan_strings()
887 static void kasan_bitops_modify(struct kunit *test, int nr, void *addr) in kasan_bitops_modify() argument
889 KUNIT_EXPECT_KASAN_FAIL(test, set_bit(nr, addr)); in kasan_bitops_modify()
890 KUNIT_EXPECT_KASAN_FAIL(test, __set_bit(nr, addr)); in kasan_bitops_modify()
891 KUNIT_EXPECT_KASAN_FAIL(test, clear_bit(nr, addr)); in kasan_bitops_modify()
892 KUNIT_EXPECT_KASAN_FAIL(test, __clear_bit(nr, addr)); in kasan_bitops_modify()
893 KUNIT_EXPECT_KASAN_FAIL(test, clear_bit_unlock(nr, addr)); in kasan_bitops_modify()
894 KUNIT_EXPECT_KASAN_FAIL(test, __clear_bit_unlock(nr, addr)); in kasan_bitops_modify()
895 KUNIT_EXPECT_KASAN_FAIL(test, change_bit(nr, addr)); in kasan_bitops_modify()
896 KUNIT_EXPECT_KASAN_FAIL(test, __change_bit(nr, addr)); in kasan_bitops_modify()
899 static void kasan_bitops_test_and_modify(struct kunit *test, int nr, void *addr) in kasan_bitops_test_and_modify() argument
901 KUNIT_EXPECT_KASAN_FAIL(test, test_and_set_bit(nr, addr)); in kasan_bitops_test_and_modify()
902 KUNIT_EXPECT_KASAN_FAIL(test, __test_and_set_bit(nr, addr)); in kasan_bitops_test_and_modify()
903 KUNIT_EXPECT_KASAN_FAIL(test, test_and_set_bit_lock(nr, addr)); in kasan_bitops_test_and_modify()
904 KUNIT_EXPECT_KASAN_FAIL(test, test_and_clear_bit(nr, addr)); in kasan_bitops_test_and_modify()
905 KUNIT_EXPECT_KASAN_FAIL(test, __test_and_clear_bit(nr, addr)); in kasan_bitops_test_and_modify()
906 KUNIT_EXPECT_KASAN_FAIL(test, test_and_change_bit(nr, addr)); in kasan_bitops_test_and_modify()
907 KUNIT_EXPECT_KASAN_FAIL(test, __test_and_change_bit(nr, addr)); in kasan_bitops_test_and_modify()
908 KUNIT_EXPECT_KASAN_FAIL(test, kasan_int_result = test_bit(nr, addr)); in kasan_bitops_test_and_modify()
911 KUNIT_EXPECT_KASAN_FAIL(test, kasan_int_result = in kasan_bitops_test_and_modify()
916 static void kasan_bitops_generic(struct kunit *test) in kasan_bitops_generic() argument
920 /* This test is specifically crafted for the generic mode. */ in kasan_bitops_generic()
921 KASAN_TEST_NEEDS_CONFIG_ON(test, CONFIG_KASAN_GENERIC); in kasan_bitops_generic()
928 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, bits); in kasan_bitops_generic()
935 kasan_bitops_modify(test, BITS_PER_LONG, bits); in kasan_bitops_generic()
940 kasan_bitops_test_and_modify(test, BITS_PER_LONG + BITS_PER_BYTE, bits); in kasan_bitops_generic()
945 static void kasan_bitops_tags(struct kunit *test) in kasan_bitops_tags() argument
949 /* This test is specifically crafted for tag-based modes. */ in kasan_bitops_tags()
950 KASAN_TEST_NEEDS_CONFIG_OFF(test, CONFIG_KASAN_GENERIC); in kasan_bitops_tags()
954 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, bits); in kasan_bitops_tags()
957 kasan_bitops_modify(test, BITS_PER_LONG, (void *)bits + 48); in kasan_bitops_tags()
958 kasan_bitops_test_and_modify(test, BITS_PER_LONG + BITS_PER_BYTE, (void *)bits + 48); in kasan_bitops_tags()
963 static void kmalloc_double_kzfree(struct kunit *test) in kmalloc_double_kzfree() argument
969 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in kmalloc_double_kzfree()
972 KUNIT_EXPECT_KASAN_FAIL(test, kfree_sensitive(ptr)); in kmalloc_double_kzfree()
975 static void vmalloc_oob(struct kunit *test) in vmalloc_oob() argument
979 KASAN_TEST_NEEDS_CONFIG_ON(test, CONFIG_KASAN_VMALLOC); in vmalloc_oob()
986 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, area); in vmalloc_oob()
988 KUNIT_EXPECT_KASAN_FAIL(test, ((volatile char *)area)[3100]); in vmalloc_oob()
997 static void match_all_not_assigned(struct kunit *test) in match_all_not_assigned() argument
1003 KASAN_TEST_NEEDS_CONFIG_OFF(test, CONFIG_KASAN_GENERIC); in match_all_not_assigned()
1008 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in match_all_not_assigned()
1009 KUNIT_EXPECT_GE(test, (u8)get_tag(ptr), (u8)KASAN_TAG_MIN); in match_all_not_assigned()
1010 KUNIT_EXPECT_LT(test, (u8)get_tag(ptr), (u8)KASAN_TAG_KERNEL); in match_all_not_assigned()
1018 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in match_all_not_assigned()
1019 KUNIT_EXPECT_GE(test, (u8)get_tag(ptr), (u8)KASAN_TAG_MIN); in match_all_not_assigned()
1020 KUNIT_EXPECT_LT(test, (u8)get_tag(ptr), (u8)KASAN_TAG_KERNEL); in match_all_not_assigned()
1026 static void match_all_ptr_tag(struct kunit *test) in match_all_ptr_tag() argument
1031 KASAN_TEST_NEEDS_CONFIG_OFF(test, CONFIG_KASAN_GENERIC); in match_all_ptr_tag()
1034 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in match_all_ptr_tag()
1038 KUNIT_EXPECT_NE(test, tag, (u8)KASAN_TAG_KERNEL); in match_all_ptr_tag()
1052 static void match_all_mem_tag(struct kunit *test) in match_all_mem_tag() argument
1057 KASAN_TEST_NEEDS_CONFIG_OFF(test, CONFIG_KASAN_GENERIC); in match_all_mem_tag()
1060 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); in match_all_mem_tag()
1061 KUNIT_EXPECT_NE(test, (u8)get_tag(ptr), (u8)KASAN_TAG_KERNEL); in match_all_mem_tag()
1072 KUNIT_EXPECT_KASAN_FAIL(test, *ptr = 0); in match_all_mem_tag()