Lines Matching refs:ptr
65 static int sys_mprotect(void *ptr, size_t size, unsigned long prot) in sys_mprotect() argument
70 sret = syscall(__NR_mprotect, ptr, size, prot); in sys_mprotect()
74 static int sys_mprotect_pkey(void *ptr, size_t size, unsigned long orig_prot, in sys_mprotect_pkey() argument
80 sret = syscall(__NR_pkey_mprotect, ptr, size, orig_prot, pkey); in sys_mprotect_pkey()
84 static int sys_munmap(void *ptr, size_t size) in sys_munmap() argument
89 sret = syscall(__NR_munmap, ptr, size); in sys_munmap()
172 void *ptr; in setup_single_address() local
174 ptr = mmap(NULL, size, PROT_READ, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0); in setup_single_address()
175 *ptrOut = ptr; in setup_single_address()
180 void *ptr; in setup_single_address_rw() local
183 ptr = mmap(NULL, size, PROT_READ | PROT_WRITE, mapflags, -1, 0); in setup_single_address_rw()
184 *ptrOut = ptr; in setup_single_address_rw()
187 static int clean_single_address(void *ptr, int size) in clean_single_address() argument
190 ret = munmap(ptr, size); in clean_single_address()
194 static int seal_single_address(void *ptr, int size) in seal_single_address() argument
197 ret = sys_mseal(ptr, size); in seal_single_address()
204 void *ptr; in seal_support() local
207 ptr = mmap(NULL, page_size, PROT_READ, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0); in seal_support()
208 if (ptr == (void *) -1) in seal_support()
211 ret = sys_mseal(ptr, page_size); in seal_support()
232 void *ptr; in test_seal_addseal() local
236 setup_single_address(size, &ptr); in test_seal_addseal()
237 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_addseal()
239 ret = sys_mseal(ptr, size); in test_seal_addseal()
248 void *ptr; in test_seal_unmapped_start() local
252 setup_single_address(size, &ptr); in test_seal_unmapped_start()
253 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_unmapped_start()
256 ret = sys_munmap(ptr, 2 * page_size); in test_seal_unmapped_start()
260 ret = sys_mprotect(ptr, size, PROT_READ | PROT_WRITE); in test_seal_unmapped_start()
264 ret = sys_mseal(ptr, size); in test_seal_unmapped_start()
267 ret = sys_mseal(ptr + 2 * page_size, 2 * page_size); in test_seal_unmapped_start()
276 void *ptr; in test_seal_unmapped_middle() local
280 setup_single_address(size, &ptr); in test_seal_unmapped_middle()
281 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_unmapped_middle()
284 ret = sys_munmap(ptr + page_size, 2 * page_size); in test_seal_unmapped_middle()
288 ret = sys_mprotect(ptr, size, PROT_READ | PROT_WRITE); in test_seal_unmapped_middle()
292 ret = sys_mseal(ptr, size); in test_seal_unmapped_middle()
296 ret = sys_mseal(ptr, page_size); in test_seal_unmapped_middle()
299 ret = sys_mseal(ptr + 3 * page_size, page_size); in test_seal_unmapped_middle()
308 void *ptr; in test_seal_unmapped_end() local
312 setup_single_address(size, &ptr); in test_seal_unmapped_end()
313 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_unmapped_end()
316 ret = sys_munmap(ptr + 2 * page_size, 2 * page_size); in test_seal_unmapped_end()
320 ret = sys_mprotect(ptr, size, PROT_READ | PROT_WRITE); in test_seal_unmapped_end()
324 ret = sys_mseal(ptr, size); in test_seal_unmapped_end()
328 ret = sys_mseal(ptr, 2 * page_size); in test_seal_unmapped_end()
337 void *ptr; in test_seal_multiple_vmas() local
341 setup_single_address(size, &ptr); in test_seal_multiple_vmas()
342 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_multiple_vmas()
345 ret = sys_mprotect(ptr + page_size, 2 * page_size, in test_seal_multiple_vmas()
350 ret = sys_mprotect(ptr, size, PROT_READ); in test_seal_multiple_vmas()
354 ret = sys_mprotect(ptr + page_size, 2 * page_size, in test_seal_multiple_vmas()
359 ret = sys_mseal(ptr, size); in test_seal_multiple_vmas()
368 void *ptr; in test_seal_split_start() local
372 setup_single_address(size, &ptr); in test_seal_split_start()
373 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_split_start()
376 ret = sys_mprotect(ptr, 2 * page_size, PROT_READ | PROT_WRITE); in test_seal_split_start()
380 ret = sys_mseal(ptr, page_size); in test_seal_split_start()
384 ret = sys_mseal(ptr + page_size, 3 * page_size); in test_seal_split_start()
393 void *ptr; in test_seal_split_end() local
397 setup_single_address(size, &ptr); in test_seal_split_end()
398 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_split_end()
401 ret = sys_mprotect(ptr, 2 * page_size, PROT_READ | PROT_WRITE); in test_seal_split_end()
405 ret = sys_mseal(ptr + 3 * page_size, page_size); in test_seal_split_end()
409 ret = sys_mseal(ptr, 3 * page_size); in test_seal_split_end()
417 void *ptr; in test_seal_invalid_input() local
422 setup_single_address(8 * page_size, &ptr); in test_seal_invalid_input()
423 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_invalid_input()
424 ret = clean_single_address(ptr + 4 * page_size, 4 * page_size); in test_seal_invalid_input()
428 ret = syscall(__NR_mseal, ptr, size, 0x20); in test_seal_invalid_input()
432 ret = sys_mseal(ptr + 1, 2 * page_size); in test_seal_invalid_input()
436 ret = sys_mseal(ptr, 5 * page_size); in test_seal_invalid_input()
440 ret = sys_mseal(ptr, UINT64_MAX/page_size); in test_seal_invalid_input()
444 ret = sys_mseal(ptr - page_size, 5 * page_size); in test_seal_invalid_input()
452 void *ptr; in test_seal_zero_length() local
457 setup_single_address(size, &ptr); in test_seal_zero_length()
458 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_zero_length()
460 ret = sys_mprotect(ptr, 0, PROT_READ | PROT_WRITE); in test_seal_zero_length()
464 ret = sys_mseal(ptr, 0); in test_seal_zero_length()
468 ret = sys_mprotect(ptr, size, PROT_READ | PROT_WRITE); in test_seal_zero_length()
476 void *ptr; in test_seal_zero_address() local
483 ptr = mmap(0, size, PROT_NONE, in test_seal_zero_address()
485 FAIL_TEST_IF_FALSE(ptr == 0); in test_seal_zero_address()
487 size = get_vma_size(ptr, &prot); in test_seal_zero_address()
490 ret = sys_mseal(ptr, size); in test_seal_zero_address()
494 ret = sys_mprotect(ptr, size, PROT_READ | PROT_WRITE); in test_seal_zero_address()
503 void *ptr; in test_seal_twice() local
507 setup_single_address(size, &ptr); in test_seal_twice()
508 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_twice()
510 ret = sys_mseal(ptr, size); in test_seal_twice()
514 ret = sys_mseal(ptr, size); in test_seal_twice()
522 void *ptr; in test_seal_mprotect() local
527 setup_single_address(size, &ptr); in test_seal_mprotect()
528 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mprotect()
531 ret = seal_single_address(ptr, size); in test_seal_mprotect()
535 ret = sys_mprotect(ptr, size, PROT_READ | PROT_WRITE); in test_seal_mprotect()
546 void *ptr; in test_seal_start_mprotect() local
551 setup_single_address(size, &ptr); in test_seal_start_mprotect()
552 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_start_mprotect()
555 ret = seal_single_address(ptr, page_size); in test_seal_start_mprotect()
560 ret = sys_mprotect(ptr, page_size, PROT_READ | PROT_WRITE); in test_seal_start_mprotect()
567 ret = sys_mprotect(ptr + page_size, page_size * 3, in test_seal_start_mprotect()
576 void *ptr; in test_seal_end_mprotect() local
581 setup_single_address(size, &ptr); in test_seal_end_mprotect()
582 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_end_mprotect()
585 ret = seal_single_address(ptr + page_size, 3 * page_size); in test_seal_end_mprotect()
590 ret = sys_mprotect(ptr, page_size, PROT_READ | PROT_WRITE); in test_seal_end_mprotect()
594 ret = sys_mprotect(ptr + page_size, page_size * 3, in test_seal_end_mprotect()
606 void *ptr; in test_seal_mprotect_unalign_len() local
611 setup_single_address(size, &ptr); in test_seal_mprotect_unalign_len()
612 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mprotect_unalign_len()
615 ret = seal_single_address(ptr, page_size * 2 - 1); in test_seal_mprotect_unalign_len()
620 ret = sys_mprotect(ptr, page_size * 2, PROT_READ | PROT_WRITE); in test_seal_mprotect_unalign_len()
626 ret = sys_mprotect(ptr + page_size * 2, page_size, in test_seal_mprotect_unalign_len()
635 void *ptr; in test_seal_mprotect_unalign_len_variant_2() local
640 setup_single_address(size, &ptr); in test_seal_mprotect_unalign_len_variant_2()
641 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mprotect_unalign_len_variant_2()
643 ret = seal_single_address(ptr, page_size * 2 + 1); in test_seal_mprotect_unalign_len_variant_2()
648 ret = sys_mprotect(ptr, page_size * 3, PROT_READ | PROT_WRITE); in test_seal_mprotect_unalign_len_variant_2()
654 ret = sys_mprotect(ptr + page_size * 3, page_size, in test_seal_mprotect_unalign_len_variant_2()
663 void *ptr; in test_seal_mprotect_two_vma() local
668 setup_single_address(size, &ptr); in test_seal_mprotect_two_vma()
669 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mprotect_two_vma()
672 ret = sys_mprotect(ptr, page_size * 2, PROT_READ | PROT_WRITE); in test_seal_mprotect_two_vma()
676 ret = seal_single_address(ptr, page_size * 4); in test_seal_mprotect_two_vma()
680 ret = sys_mprotect(ptr, page_size * 2, PROT_READ | PROT_WRITE); in test_seal_mprotect_two_vma()
686 ret = sys_mprotect(ptr + page_size * 2, page_size * 2, in test_seal_mprotect_two_vma()
698 void *ptr; in test_seal_mprotect_two_vma_with_split() local
703 setup_single_address(size, &ptr); in test_seal_mprotect_two_vma_with_split()
704 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mprotect_two_vma_with_split()
707 ret = sys_mprotect(ptr, page_size * 2, PROT_READ | PROT_WRITE); in test_seal_mprotect_two_vma_with_split()
712 ret = seal_single_address(ptr + page_size, page_size * 2); in test_seal_mprotect_two_vma_with_split()
717 ret = sys_mprotect(ptr, page_size, PROT_READ | PROT_WRITE); in test_seal_mprotect_two_vma_with_split()
721 ret = sys_mprotect(ptr + page_size, page_size, PROT_READ | PROT_WRITE); in test_seal_mprotect_two_vma_with_split()
728 ret = sys_mprotect(ptr + 2 * page_size, page_size, in test_seal_mprotect_two_vma_with_split()
736 ret = sys_mprotect(ptr + 3 * page_size, page_size, in test_seal_mprotect_two_vma_with_split()
745 void *ptr; in test_seal_mprotect_partial_mprotect() local
750 setup_single_address(size, &ptr); in test_seal_mprotect_partial_mprotect()
751 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mprotect_partial_mprotect()
755 ret = seal_single_address(ptr, page_size); in test_seal_mprotect_partial_mprotect()
760 ret = sys_mprotect(ptr, 2 * page_size, PROT_READ | PROT_WRITE); in test_seal_mprotect_partial_mprotect()
771 void *ptr; in test_seal_mprotect_partial_mprotect_tail() local
782 setup_single_address(size, &ptr); in test_seal_mprotect_partial_mprotect_tail()
783 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mprotect_partial_mprotect_tail()
786 ret = sys_mseal(ptr + page_size, page_size); in test_seal_mprotect_partial_mprotect_tail()
790 ret = sys_mprotect(ptr, size, PROT_EXEC); in test_seal_mprotect_partial_mprotect_tail()
797 FAIL_TEST_IF_FALSE(get_vma_size(ptr + page_size, &prot) > 0); in test_seal_mprotect_partial_mprotect_tail()
807 void *ptr; in test_seal_mprotect_two_vma_with_gap() local
812 setup_single_address(size, &ptr); in test_seal_mprotect_two_vma_with_gap()
813 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mprotect_two_vma_with_gap()
816 ret = sys_mprotect(ptr, page_size, PROT_READ | PROT_WRITE); in test_seal_mprotect_two_vma_with_gap()
820 ret = sys_mprotect(ptr + 3 * page_size, page_size, in test_seal_mprotect_two_vma_with_gap()
825 ret = sys_munmap(ptr + page_size, 2 * page_size); in test_seal_mprotect_two_vma_with_gap()
830 ret = sys_mprotect(ptr, 4 * page_size, PROT_READ); in test_seal_mprotect_two_vma_with_gap()
834 ret = sys_mseal(ptr, 4 * page_size); in test_seal_mprotect_two_vma_with_gap()
838 ret = sys_mprotect(ptr, page_size, PROT_READ); in test_seal_mprotect_two_vma_with_gap()
842 ret = sys_mprotect(ptr + 3 * page_size, page_size, PROT_READ); in test_seal_mprotect_two_vma_with_gap()
850 void *ptr; in test_seal_mprotect_split() local
855 setup_single_address(size, &ptr); in test_seal_mprotect_split()
856 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mprotect_split()
859 ret = sys_mprotect(ptr, page_size, PROT_READ | PROT_WRITE); in test_seal_mprotect_split()
864 ret = sys_mseal(ptr, 4 * page_size); in test_seal_mprotect_split()
869 ret = sys_mprotect(ptr, 2 * page_size, PROT_READ); in test_seal_mprotect_split()
876 ret = sys_mprotect(ptr + 2 * page_size, 2 * page_size, PROT_READ); in test_seal_mprotect_split()
887 void *ptr; in test_seal_mprotect_merge() local
892 setup_single_address(size, &ptr); in test_seal_mprotect_merge()
893 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mprotect_merge()
896 ret = sys_mprotect(ptr, page_size, PROT_READ | PROT_WRITE); in test_seal_mprotect_merge()
901 ret = sys_mseal(ptr, 2 * page_size); in test_seal_mprotect_merge()
906 ret = sys_mprotect(ptr, 2 * page_size, PROT_READ); in test_seal_mprotect_merge()
913 ret = sys_mprotect(ptr + 2 * page_size, 2 * page_size, PROT_READ); in test_seal_mprotect_merge()
921 void *ptr; in test_seal_munmap() local
926 setup_single_address(size, &ptr); in test_seal_munmap()
927 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_munmap()
930 ret = sys_mseal(ptr, size); in test_seal_munmap()
935 ret = sys_munmap(ptr, size); in test_seal_munmap()
952 void *ptr; in test_seal_munmap_two_vma() local
957 setup_single_address(size, &ptr); in test_seal_munmap_two_vma()
958 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_munmap_two_vma()
961 ret = sys_mprotect(ptr, page_size * 2, PROT_READ | PROT_WRITE); in test_seal_munmap_two_vma()
965 ret = sys_mseal(ptr, size); in test_seal_munmap_two_vma()
969 ret = sys_munmap(ptr, page_size * 2); in test_seal_munmap_two_vma()
975 ret = sys_munmap(ptr + page_size, page_size * 2); in test_seal_munmap_two_vma()
993 void *ptr; in test_seal_munmap_vma_with_gap() local
998 setup_single_address(size, &ptr); in test_seal_munmap_vma_with_gap()
999 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_munmap_vma_with_gap()
1001 ret = sys_munmap(ptr + page_size, page_size * 2); in test_seal_munmap_vma_with_gap()
1006 ret = sys_mseal(ptr, size); in test_seal_munmap_vma_with_gap()
1010 ret = sys_munmap(ptr, page_size); in test_seal_munmap_vma_with_gap()
1013 ret = sys_munmap(ptr + page_size * 2, page_size); in test_seal_munmap_vma_with_gap()
1016 ret = sys_munmap(ptr, size); in test_seal_munmap_vma_with_gap()
1024 void *ptr; in test_seal_munmap_partial_across_vmas() local
1030 setup_single_address(size, &ptr); in test_seal_munmap_partial_across_vmas()
1031 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_munmap_partial_across_vmas()
1034 ret = sys_mseal(ptr + page_size, page_size); in test_seal_munmap_partial_across_vmas()
1038 ret = sys_munmap(ptr, size); in test_seal_munmap_partial_across_vmas()
1045 FAIL_TEST_IF_FALSE(get_vma_size(ptr + page_size, &prot) > 0); in test_seal_munmap_partial_across_vmas()
1054 void *ptr; in test_munmap_start_freed() local
1060 setup_single_address(size, &ptr); in test_munmap_start_freed()
1061 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_munmap_start_freed()
1064 ret = sys_munmap(ptr, page_size); in test_munmap_start_freed()
1069 ret = sys_mseal(ptr + page_size, 3 * page_size); in test_munmap_start_freed()
1074 ret = sys_munmap(ptr, size); in test_munmap_start_freed()
1078 size = get_vma_size(ptr + page_size, &prot); in test_munmap_start_freed()
1085 size = get_vma_size(ptr + page_size, &prot); in test_munmap_start_freed()
1094 void *ptr; in test_munmap_end_freed() local
1099 setup_single_address(size, &ptr); in test_munmap_end_freed()
1100 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_munmap_end_freed()
1103 ret = sys_munmap(ptr + page_size * 3, page_size); in test_munmap_end_freed()
1108 ret = sys_mseal(ptr, 3 * page_size); in test_munmap_end_freed()
1113 ret = sys_munmap(ptr, size); in test_munmap_end_freed()
1124 void *ptr; in test_munmap_middle_freed() local
1130 setup_single_address(size, &ptr); in test_munmap_middle_freed()
1131 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_munmap_middle_freed()
1134 ret = sys_munmap(ptr + page_size, page_size * 2); in test_munmap_middle_freed()
1139 ret = sys_mseal(ptr, page_size); in test_munmap_middle_freed()
1144 ret = sys_munmap(ptr, size); in test_munmap_middle_freed()
1148 size = get_vma_size(ptr, &prot); in test_munmap_middle_freed()
1151 size = get_vma_size(ptr + page_size * 3, &prot); in test_munmap_middle_freed()
1156 size = get_vma_size(ptr, &prot); in test_munmap_middle_freed()
1159 size = get_vma_size(ptr + page_size * 3, &prot); in test_munmap_middle_freed()
1168 void *ptr; in test_seal_mremap_shrink() local
1174 setup_single_address(size, &ptr); in test_seal_mremap_shrink()
1175 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mremap_shrink()
1178 ret = sys_mseal(ptr, size); in test_seal_mremap_shrink()
1183 ret2 = sys_mremap(ptr, size, 2 * page_size, 0, 0); in test_seal_mremap_shrink()
1197 void *ptr; in test_seal_mremap_expand() local
1203 setup_single_address(size, &ptr); in test_seal_mremap_expand()
1204 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mremap_expand()
1206 ret = sys_munmap(ptr + 2 * page_size, 2 * page_size); in test_seal_mremap_expand()
1210 ret = sys_mseal(ptr, 2 * page_size); in test_seal_mremap_expand()
1215 ret2 = sys_mremap(ptr, 2 * page_size, 4 * page_size, 0, 0); in test_seal_mremap_expand()
1220 FAIL_TEST_IF_FALSE(ret2 == ptr); in test_seal_mremap_expand()
1229 void *ptr, *newPtr; in test_seal_mremap_move() local
1235 setup_single_address(size, &ptr); in test_seal_mremap_move()
1236 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mremap_move()
1243 ret = sys_mseal(ptr, size); in test_seal_mremap_move()
1248 ret2 = sys_mremap(ptr, size, size, MREMAP_MAYMOVE | MREMAP_FIXED, newPtr); in test_seal_mremap_move()
1262 void *ptr; in test_seal_mmap_overwrite_prot() local
1268 setup_single_address(size, &ptr); in test_seal_mmap_overwrite_prot()
1269 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mmap_overwrite_prot()
1272 ret = sys_mseal(ptr, size); in test_seal_mmap_overwrite_prot()
1277 ret2 = mmap(ptr, size, PROT_NONE, in test_seal_mmap_overwrite_prot()
1283 FAIL_TEST_IF_FALSE(ret2 == ptr); in test_seal_mmap_overwrite_prot()
1290 void *ptr; in test_seal_mmap_expand() local
1296 setup_single_address(size, &ptr); in test_seal_mmap_expand()
1297 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mmap_expand()
1299 ret = sys_munmap(ptr + 8 * page_size, 4 * page_size); in test_seal_mmap_expand()
1303 ret = sys_mseal(ptr, 8 * page_size); in test_seal_mmap_expand()
1308 ret2 = mmap(ptr, size, PROT_READ, in test_seal_mmap_expand()
1314 FAIL_TEST_IF_FALSE(ret2 == ptr); in test_seal_mmap_expand()
1321 void *ptr; in test_seal_mmap_shrink() local
1327 setup_single_address(size, &ptr); in test_seal_mmap_shrink()
1328 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mmap_shrink()
1331 ret = sys_mseal(ptr, size); in test_seal_mmap_shrink()
1336 ret2 = mmap(ptr, 8 * page_size, PROT_READ, in test_seal_mmap_shrink()
1342 FAIL_TEST_IF_FALSE(ret2 == ptr); in test_seal_mmap_shrink()
1349 void *ptr; in test_seal_mremap_shrink_fixed() local
1356 setup_single_address(size, &ptr); in test_seal_mremap_shrink_fixed()
1357 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mremap_shrink_fixed()
1362 ret = sys_mseal(ptr, size); in test_seal_mremap_shrink_fixed()
1367 ret2 = sys_mremap(ptr, size, 2 * page_size, MREMAP_MAYMOVE | MREMAP_FIXED, in test_seal_mremap_shrink_fixed()
1380 void *ptr; in test_seal_mremap_expand_fixed() local
1387 setup_single_address(page_size, &ptr); in test_seal_mremap_expand_fixed()
1388 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mremap_expand_fixed()
1398 ret2 = sys_mremap(ptr, page_size, size, MREMAP_MAYMOVE | MREMAP_FIXED, in test_seal_mremap_expand_fixed()
1411 void *ptr; in test_seal_mremap_move_fixed() local
1418 setup_single_address(size, &ptr); in test_seal_mremap_move_fixed()
1419 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mremap_move_fixed()
1429 ret2 = sys_mremap(ptr, size, size, MREMAP_MAYMOVE | MREMAP_FIXED, newAddr); in test_seal_mremap_move_fixed()
1441 void *ptr; in test_seal_mremap_move_fixed_zero() local
1447 setup_single_address(size, &ptr); in test_seal_mremap_move_fixed_zero()
1448 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mremap_move_fixed_zero()
1451 ret = sys_mseal(ptr, size); in test_seal_mremap_move_fixed_zero()
1458 ret2 = sys_mremap(ptr, size, 2 * page_size, MREMAP_MAYMOVE | MREMAP_FIXED, in test_seal_mremap_move_fixed_zero()
1472 void *ptr; in test_seal_mremap_move_dontunmap() local
1478 setup_single_address(size, &ptr); in test_seal_mremap_move_dontunmap()
1479 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mremap_move_dontunmap()
1482 ret = sys_mseal(ptr, size); in test_seal_mremap_move_dontunmap()
1487 ret2 = sys_mremap(ptr, size, size, MREMAP_MAYMOVE | MREMAP_DONTUNMAP, 0); in test_seal_mremap_move_dontunmap()
1501 void *ptr, *ptr2; in test_seal_mremap_move_dontunmap_anyaddr() local
1507 setup_single_address(size, &ptr); in test_seal_mremap_move_dontunmap_anyaddr()
1508 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_mremap_move_dontunmap_anyaddr()
1511 ret = sys_mseal(ptr, size); in test_seal_mremap_move_dontunmap_anyaddr()
1527 ret2 = sys_mremap(ptr, size, size, MREMAP_MAYMOVE | MREMAP_DONTUNMAP, in test_seal_mremap_move_dontunmap_anyaddr()
1542 void *ptr; in test_seal_merge_and_split() local
1549 setup_single_address(24 * page_size, &ptr); in test_seal_merge_and_split()
1550 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_merge_and_split()
1554 ret = sys_mprotect(ptr, page_size, PROT_NONE); in test_seal_merge_and_split()
1556 ret = sys_mprotect(ptr + 23 * page_size, page_size, PROT_NONE); in test_seal_merge_and_split()
1558 size = get_vma_size(ptr + page_size, &prot); in test_seal_merge_and_split()
1564 ret = sys_mseal(ptr + page_size, page_size); in test_seal_merge_and_split()
1566 size = get_vma_size(ptr + page_size, &prot); in test_seal_merge_and_split()
1569 size = get_vma_size(ptr + 2 * page_size, &prot); in test_seal_merge_and_split()
1575 ret = sys_mseal(ptr + 22 * page_size, page_size); in test_seal_merge_and_split()
1577 size = get_vma_size(ptr + 22 * page_size, &prot); in test_seal_merge_and_split()
1580 size = get_vma_size(ptr + 2 * page_size, &prot); in test_seal_merge_and_split()
1586 ret = sys_mseal(ptr + 2 * page_size, page_size); in test_seal_merge_and_split()
1588 size = get_vma_size(ptr + page_size, &prot); in test_seal_merge_and_split()
1594 ret = sys_mseal(ptr + 21 * page_size, page_size); in test_seal_merge_and_split()
1596 size = get_vma_size(ptr + 21 * page_size, &prot); in test_seal_merge_and_split()
1602 ret = sys_mseal(ptr + 2 * page_size, 2 * page_size); in test_seal_merge_and_split()
1604 size = get_vma_size(ptr + 1 * page_size, &prot); in test_seal_merge_and_split()
1607 ret = sys_munmap(ptr + page_size, page_size); in test_seal_merge_and_split()
1609 ret = sys_mprotect(ptr + 2 * page_size, page_size, PROT_NONE); in test_seal_merge_and_split()
1614 ret = sys_mseal(ptr + 20 * page_size, 2 * page_size); in test_seal_merge_and_split()
1617 size = get_vma_size(ptr + 20 * page_size, &prot); in test_seal_merge_and_split()
1623 ret = sys_mseal(ptr + 2 * page_size, 20 * page_size); in test_seal_merge_and_split()
1625 size = get_vma_size(ptr + page_size, &prot); in test_seal_merge_and_split()
1634 void *ptr; in test_seal_discard_ro_anon_on_rw() local
1639 setup_single_address_rw(size, &ptr); in test_seal_discard_ro_anon_on_rw()
1640 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_discard_ro_anon_on_rw()
1643 ret = sys_mseal(ptr, size); in test_seal_discard_ro_anon_on_rw()
1648 ret = sys_madvise(ptr, size, MADV_DONTNEED); in test_seal_discard_ro_anon_on_rw()
1652 ret = sys_munmap(ptr, size); in test_seal_discard_ro_anon_on_rw()
1663 void *ptr; in test_seal_discard_ro_anon_on_pkey() local
1671 setup_single_address_rw(size, &ptr); in test_seal_discard_ro_anon_on_pkey()
1672 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_discard_ro_anon_on_pkey()
1677 ret = sys_mprotect_pkey((void *)ptr, size, PROT_READ | PROT_WRITE, pkey); in test_seal_discard_ro_anon_on_pkey()
1681 ret = sys_mseal(ptr, size); in test_seal_discard_ro_anon_on_pkey()
1687 ret = sys_madvise(ptr, size, MADV_DONTNEED); in test_seal_discard_ro_anon_on_pkey()
1692 ret = sys_madvise(ptr, size, MADV_DONTNEED); in test_seal_discard_ro_anon_on_pkey()
1699 ret = sys_munmap(ptr, size); in test_seal_discard_ro_anon_on_pkey()
1710 void *ptr; in test_seal_discard_ro_anon_on_filebacked() local
1723 ptr = mmap(NULL, size, PROT_READ, mapflags, fd, 0); in test_seal_discard_ro_anon_on_filebacked()
1724 FAIL_TEST_IF_FALSE(ptr != MAP_FAILED); in test_seal_discard_ro_anon_on_filebacked()
1727 ret = sys_mseal(ptr, size); in test_seal_discard_ro_anon_on_filebacked()
1732 ret = sys_madvise(ptr, size, MADV_DONTNEED); in test_seal_discard_ro_anon_on_filebacked()
1735 ret = sys_munmap(ptr, size); in test_seal_discard_ro_anon_on_filebacked()
1747 void *ptr; in test_seal_discard_ro_anon_on_shared() local
1753 ptr = mmap(NULL, size, PROT_READ, mapflags, -1, 0); in test_seal_discard_ro_anon_on_shared()
1754 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_discard_ro_anon_on_shared()
1757 ret = sys_mseal(ptr, size); in test_seal_discard_ro_anon_on_shared()
1762 ret = sys_madvise(ptr, size, MADV_DONTNEED); in test_seal_discard_ro_anon_on_shared()
1765 ret = sys_munmap(ptr, size); in test_seal_discard_ro_anon_on_shared()
1776 void *ptr; in test_seal_discard_ro_anon() local
1781 setup_single_address(size, &ptr); in test_seal_discard_ro_anon()
1782 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_discard_ro_anon()
1785 ret = seal_single_address(ptr, size); in test_seal_discard_ro_anon()
1789 ret = sys_madvise(ptr, size, MADV_DONTNEED); in test_seal_discard_ro_anon()
1795 ret = sys_munmap(ptr, size); in test_seal_discard_ro_anon()
1806 void *ptr; in test_seal_discard_across_vmas() local
1811 setup_single_address(size, &ptr); in test_seal_discard_across_vmas()
1812 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_discard_across_vmas()
1815 ret = seal_single_address(ptr + page_size, page_size); in test_seal_discard_across_vmas()
1819 ret = sys_madvise(ptr, size, MADV_DONTNEED); in test_seal_discard_across_vmas()
1825 ret = sys_munmap(ptr, size); in test_seal_discard_across_vmas()
1837 void *ptr; in test_seal_madvise_nodiscard() local
1842 setup_single_address(size, &ptr); in test_seal_madvise_nodiscard()
1843 FAIL_TEST_IF_FALSE(ptr != (void *)-1); in test_seal_madvise_nodiscard()
1846 ret = seal_single_address(ptr, size); in test_seal_madvise_nodiscard()
1855 ret = sys_madvise(ptr, size, MADV_RANDOM); in test_seal_madvise_nodiscard()
1858 ret = sys_munmap(ptr, size); in test_seal_madvise_nodiscard()