Lines Matching refs:mem

164 	char *mem;  in gethugetlb_mem()  local
171 mem = shmat(*shmid, 0, 0); in gethugetlb_mem()
172 if (mem == (char *)-1) { in gethugetlb_mem()
177 mem = mmap(NULL, size, PROT_READ | PROT_WRITE, in gethugetlb_mem()
179 if (mem == MAP_FAILED) in gethugetlb_mem()
183 return mem; in gethugetlb_mem()
189 char *mem, *vec; in userfaultfd_tests() local
192 mem = mmap(NULL, mem_size, PROT_NONE, MAP_PRIVATE | MAP_ANON, -1, 0); in userfaultfd_tests()
193 if (mem == MAP_FAILED) in userfaultfd_tests()
196 wp_init(mem, mem_size); in userfaultfd_tests()
199 mprotect(mem, mem_size/8, PROT_READ|PROT_WRITE); in userfaultfd_tests()
200 mprotect(mem + 1 * mem_size/8, mem_size/8, PROT_READ); in userfaultfd_tests()
201 mprotect(mem + 2 * mem_size/8, mem_size/8, PROT_READ|PROT_WRITE); in userfaultfd_tests()
202 mprotect(mem + 3 * mem_size/8, mem_size/8, PROT_READ); in userfaultfd_tests()
203 mprotect(mem + 4 * mem_size/8, mem_size/8, PROT_READ|PROT_WRITE); in userfaultfd_tests()
204 mprotect(mem + 5 * mem_size/8, mem_size/8, PROT_NONE); in userfaultfd_tests()
205 mprotect(mem + 6 * mem_size/8, mem_size/8, PROT_READ|PROT_WRITE); in userfaultfd_tests()
206 mprotect(mem + 7 * mem_size/8, mem_size/8, PROT_READ); in userfaultfd_tests()
208 wp_addr_range(mem + (mem_size/16), mem_size - 2 * (mem_size/8)); in userfaultfd_tests()
209 wp_addr_range(mem, mem_size); in userfaultfd_tests()
214 written = pagemap_ioctl(mem, mem_size, vec, 1, PM_SCAN_WP_MATCHING | PM_SCAN_CHECK_WPASYNC, in userfaultfd_tests()
221 wp_free(mem, mem_size); in userfaultfd_tests()
222 munmap(mem, mem_size); in userfaultfd_tests()
244 char *mem, *m[2]; in sanity_tests_sd() local
258 mem = mmap(NULL, mem_size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); in sanity_tests_sd()
259 if (mem == MAP_FAILED) in sanity_tests_sd()
262 wp_init(mem, mem_size); in sanity_tests_sd()
263 wp_addr_range(mem, mem_size); in sanity_tests_sd()
266 ksft_test_result(pagemap_ioctl(mem, 0, vec, vec_size, 0, in sanity_tests_sd()
270 ksft_test_result(pagemap_ioctl(mem, mem_size, NULL, vec_size, 0, in sanity_tests_sd()
274 ksft_test_result(pagemap_ioctl(mem, mem_size, vec, 0, 0, in sanity_tests_sd()
278 ksft_test_result(pagemap_ioctl(mem, mem_size, 0, 0, 0, in sanity_tests_sd()
282 ksft_test_result(pagemap_ioctl(mem, mem_size, vec, vec_size, -1, in sanity_tests_sd()
286 ksft_test_result(pagemap_ioctl(mem, mem_size, vec, vec_size, in sanity_tests_sd()
291 ksft_test_result(pagemap_ioctl(mem, mem_size, vec, vec_size, 0, in sanity_tests_sd()
295 ksft_test_result(pagemap_ioctl(mem, mem_size, vec, vec_size, 0, in sanity_tests_sd()
299 ksft_test_result(pagemap_ioctl(mem, mem_size, vec, vec_size, 0, in sanity_tests_sd()
303 ksft_test_result(pagemap_ioctl(mem, mem_size, vec, vec_size, in sanity_tests_sd()
308 ksft_test_result(pagemap_ioctl(mem, mem_size, vec, vec_size, in sanity_tests_sd()
315 ret = pagemap_ioctl(mem, mem_size, vec, vec_size, in sanity_tests_sd()
322 mem[i]++; in sanity_tests_sd()
324 ret = pagemap_ioctl(mem, mem_size, vec, vec_size, 0, 0, PAGE_IS_WRITTEN, 0, in sanity_tests_sd()
333 ret = pagemap_ioctl(mem, mem_size, vec, vec_size, in sanity_tests_sd()
339 ret2 = pagemap_ioctl(mem, mem_size, vec, 2, 0, 0, PAGE_IS_WRITTEN, 0, 0, in sanity_tests_sd()
344 ret3 = pagemap_ioctl(mem, mem_size, vec, vec_size, in sanity_tests_sd()
356 mem[i]++; in sanity_tests_sd()
357 mem[(mem_size/page_size - 1) * page_size]++; in sanity_tests_sd()
359 ret = pagemap_ioctl(mem, mem_size, vec, vec_size, in sanity_tests_sd()
365 ret2 = pagemap_ioctl(mem, mem_size, vec, vec_size, in sanity_tests_sd()
377 memset(mem, -1, mem_size); in sanity_tests_sd()
380 ret = pagemap_ioctl(mem + page_size, 2 * page_size, vec, 1, in sanity_tests_sd()
386 ret2 = pagemap_ioctl(mem, mem_size, vec2, vec_size, 0, 0, in sanity_tests_sd()
392 vec[0].start == (uintptr_t)(mem + page_size) && in sanity_tests_sd()
393 ret2 == 2 && LEN(vec2[0]) == 1 && vec2[0].start == (uintptr_t)mem && in sanity_tests_sd()
395 vec2[1].start == (uintptr_t)(mem + 3 * page_size), in sanity_tests_sd()
398 wp_free(mem, mem_size); in sanity_tests_sd()
399 munmap(mem, mem_size); in sanity_tests_sd()
443 mem = mmap(NULL, mem_size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); in sanity_tests_sd()
444 if (mem == MAP_FAILED) in sanity_tests_sd()
447 wp_init(mem, mem_size); in sanity_tests_sd()
448 wp_addr_range(mem, mem_size); in sanity_tests_sd()
450 ret = pagemap_ioctl(mem, mem_size, vec, vec_size, in sanity_tests_sd()
457 mem[i * page_size]++; in sanity_tests_sd()
459 ret = pagemap_ioctl(mem, mem_size, vec, vec_size, in sanity_tests_sd()
467 ret = pagemap_ioctl(mem, mem_size, vec, vec_size, in sanity_tests_sd()
475 ret = pagemap_ioctl(mem, mem_size, vec, vec_size, in sanity_tests_sd()
486 wp_free(mem, mem_size); in sanity_tests_sd()
487 munmap(mem, mem_size); in sanity_tests_sd()
498 mem = mmap(NULL, mem_size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); in sanity_tests_sd()
499 if (mem == MAP_FAILED) in sanity_tests_sd()
502 wp_init(mem, mem_size); in sanity_tests_sd()
503 wp_addr_range(mem, mem_size); in sanity_tests_sd()
507 walk_end = (long)mem; in sanity_tests_sd()
511 mem[i]++; in sanity_tests_sd()
517 ret = pagemap_ioc((void *)walk_end, mem_size-(walk_end - (long)mem), vec, in sanity_tests_sd()
537 wp_free(mem, mem_size); in sanity_tests_sd()
538 munmap(mem, mem_size); in sanity_tests_sd()
548 mem = mmap(NULL, mem_size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); in sanity_tests_sd()
549 if (mem == MAP_FAILED) in sanity_tests_sd()
552 wp_init(mem, mem_size); in sanity_tests_sd()
553 wp_addr_range(mem, mem_size); in sanity_tests_sd()
555 memset(mem, 0, mem_size); in sanity_tests_sd()
557 ret = pagemap_ioc(mem, 0, vec, vec_size, 0, in sanity_tests_sd()
561 ksft_test_result(ret == 0 && walk_end == (long)mem, in sanity_tests_sd()
564 ret = pagemap_ioc(mem, 0, vec, vec_size, PM_SCAN_WP_MATCHING | PM_SCAN_CHECK_WPASYNC, in sanity_tests_sd()
568 ksft_test_result(ret == 0 && walk_end == (long)mem, in sanity_tests_sd()
571 ret = pagemap_ioc(mem, 0, vec, 0, PM_SCAN_WP_MATCHING | PM_SCAN_CHECK_WPASYNC, in sanity_tests_sd()
575 ksft_test_result(ret == 0 && walk_end == (long)mem, in sanity_tests_sd()
578 ret = pagemap_ioc(mem, mem_size, vec, vec_size, 0, in sanity_tests_sd()
582 ksft_test_result(ret == 1 && walk_end == (long)(mem + mem_size), in sanity_tests_sd()
585 ret = pagemap_ioc(mem, mem_size, vec, 1, 0, in sanity_tests_sd()
589 ksft_test_result(ret == 1 && walk_end == (long)(mem + mem_size), in sanity_tests_sd()
592 ret = pagemap_ioc(mem, mem_size, vec, 1, 0, in sanity_tests_sd()
596 ksft_test_result(ret == 1 && walk_end == (long)(mem + mem_size), in sanity_tests_sd()
599 ret = pagemap_ioc(mem, mem_size, vec, vec_size, 0, in sanity_tests_sd()
603 ksft_test_result(ret == 1 && walk_end == (long)(mem + mem_size/2), in sanity_tests_sd()
606 ret = pagemap_ioc(mem, mem_size, vec, vec_size, 0, in sanity_tests_sd()
610 ksft_test_result(ret == 1 && walk_end == (long)(mem + page_size), in sanity_tests_sd()
613 ret = pagemap_ioc(mem, mem_size, vec, vec_size, 0, in sanity_tests_sd()
617 ksft_test_result(ret == 1 && walk_end == (long)(mem + mem_size), in sanity_tests_sd()
620 wp_addr_range(mem, mem_size); in sanity_tests_sd()
622 mem[i]++; in sanity_tests_sd()
624 ret = pagemap_ioc(mem, mem_size, vec, vec_size, 0, in sanity_tests_sd()
628 ksft_test_result((unsigned long)ret == vec_size/2 && walk_end == (long)(mem + mem_size), in sanity_tests_sd()
631 ret = pagemap_ioc(mem, mem_size, vec, 1, 0, in sanity_tests_sd()
635 ksft_test_result(ret == 1 && walk_end == (long)(mem + page_size * 2), in sanity_tests_sd()
638 ret = pagemap_ioc(mem, mem_size, vec, 1, 0, in sanity_tests_sd()
642 ksft_test_result(ret == 1 && walk_end == (long)(mem + page_size * 2), in sanity_tests_sd()
645 ret = pagemap_ioc(mem, mem_size, vec, vec_size/2, 0, in sanity_tests_sd()
649 ksft_test_result((unsigned long)ret == vec_size/2 && walk_end == (long)(mem + mem_size), in sanity_tests_sd()
652 ret = pagemap_ioc(mem, mem_size, vec, vec_size, 0, in sanity_tests_sd()
656 ksft_test_result((unsigned long)ret == vec_size/2 && walk_end == (long)(mem + mem_size), in sanity_tests_sd()
659 ret = pagemap_ioc(mem, mem_size, vec, vec_size, 0, in sanity_tests_sd()
663 ksft_test_result((unsigned long)ret == vec_size/2 && walk_end == (long)(mem + mem_size), in sanity_tests_sd()
666 ret = pagemap_ioc(mem, mem_size, vec, vec_size, 0, in sanity_tests_sd()
670 ksft_test_result(ret == 1 && walk_end == (long)(mem + page_size * 2), in sanity_tests_sd()
674 wp_free(mem, mem_size); in sanity_tests_sd()
675 munmap(mem, mem_size); in sanity_tests_sd()
680 int base_tests(char *prefix, char *mem, unsigned long long mem_size, int skip) in base_tests() argument
702 written = pagemap_ioctl(mem, mem_size, vec, 1, PM_SCAN_WP_MATCHING | PM_SCAN_CHECK_WPASYNC, in base_tests()
710 memset(mem, -1, mem_size); in base_tests()
712 written = pagemap_ioctl(mem, mem_size, vec, 1, 0, 0, PAGE_IS_WRITTEN, 0, 0, in base_tests()
721 written = pagemap_ioctl(mem, mem_size, vec, 1, PM_SCAN_WP_MATCHING | PM_SCAN_CHECK_WPASYNC, in base_tests()
726 memset(mem + page_size, 0, mem_size - (2 * page_size)); in base_tests()
728 written = pagemap_ioctl(mem, mem_size, vec, 1, PM_SCAN_WP_MATCHING | PM_SCAN_CHECK_WPASYNC, in base_tests()
736 written = pagemap_ioctl(mem, mem_size, vec, 1, 0, 0, in base_tests()
745 written = pagemap_ioctl(mem, mem_size, vec, 1, PM_SCAN_WP_MATCHING | PM_SCAN_CHECK_WPASYNC, in base_tests()
750 mem[vec_size/2 * page_size]++; in base_tests()
752 written = pagemap_ioctl(mem, mem_size, vec, vec_size, 0, 0, PAGE_IS_WRITTEN, in base_tests()
761 written = pagemap_ioctl(mem, mem_size, vec, 1, PM_SCAN_WP_MATCHING | PM_SCAN_CHECK_WPASYNC, in base_tests()
766 mem[vec_size/2 * page_size]++; in base_tests()
767 mem[(vec_size/2 + 1) * page_size]++; in base_tests()
769 written = pagemap_ioctl(&mem[vec_size/2 * page_size], 2 * page_size, vec, 1, 0, in base_tests()
774 ksft_test_result(written == 1 && vec[0].start == (uintptr_t)(&mem[vec_size/2 * page_size]) in base_tests()
1057 char *mem, *fmem; in sanity_tests() local
1066 mem = mmap(NULL, mem_size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); in sanity_tests()
1067 if (mem == MAP_FAILED || vec == MAP_FAILED) in sanity_tests()
1070 wp_init(mem, mem_size); in sanity_tests()
1071 wp_addr_range(mem, mem_size); in sanity_tests()
1073 ksft_test_result(pagemap_ioctl(mem, mem_size, vec, vec_size, in sanity_tests()
1077 ksft_test_result(pagemap_ioctl(mem, mem_size, vec, vec_size, 0, 0, in sanity_tests()
1080 ksft_test_result(pagemap_ioctl(mem, mem_size, vec, vec_size, 0, 0, in sanity_tests()
1083 ksft_test_result(pagemap_ioctl(mem, mem_size, vec, vec_size, 0, 0, in sanity_tests()
1086 ksft_test_result(pagemap_ioctl(mem, mem_size, vec, vec_size, 0, 0, in sanity_tests()
1090 wp_free(mem, mem_size); in sanity_tests()
1091 munmap(mem, mem_size); in sanity_tests()
1094 mem = mmap(NULL, mem_size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); in sanity_tests()
1095 if (mem == MAP_FAILED) in sanity_tests()
1097 wp_init(mem, mem_size); in sanity_tests()
1098 wp_addr_range(mem, mem_size); in sanity_tests()
1100 memset(mem, 0, mem_size); in sanity_tests()
1102 ret = pagemap_ioctl(mem, mem_size, vec, vec_size, 0, 0, in sanity_tests()
1104 ksft_test_result(ret >= 0 && vec[0].start == (uintptr_t)mem && LEN(vec[0]) == vec_size && in sanity_tests()
1110 ret = pagemap_ioctl(mem, mem_size, vec, vec_size, 0, 0, in sanity_tests()
1112 ksft_test_result(ret >= 0 && vec[0].start == (uintptr_t)mem && LEN(vec[0]) == vec_size && in sanity_tests()
1118 ret = pagemap_ioctl(mem, mem_size, vec, vec_size, 0, 0, in sanity_tests()
1120 ksft_test_result(ret >= 0 && vec[0].start == (uintptr_t)mem && LEN(vec[0]) == vec_size && in sanity_tests()
1127 ret = pagemap_ioctl(mem, mem_size, vec, vec_size, 0, 0, in sanity_tests()
1132 ret = pagemap_ioctl(mem, mem_size, vec, vec_size, 0, 0, in sanity_tests()
1136 wp_free(mem, mem_size); in sanity_tests()
1137 munmap(mem, mem_size); in sanity_tests()
1140 mem = mmap(NULL, mem_size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); in sanity_tests()
1141 if (mem == MAP_FAILED) in sanity_tests()
1143 wp_init(mem, mem_size); in sanity_tests()
1144 wp_addr_range(mem, mem_size); in sanity_tests()
1146 memset(mem, 0, mem_size); in sanity_tests()
1148 ret = pagemap_ioctl(mem, mem_size, vec, vec_size, in sanity_tests()
1151 ksft_test_result(ret >= 0 && vec[0].start == (uintptr_t)mem && LEN(vec[0]) == vec_size && in sanity_tests()
1154 wp_free(mem, mem_size); in sanity_tests()
1155 munmap(mem, mem_size); in sanity_tests()
1228 char *mem, *mem2; in mprotect_tests() local
1238 mem = mmap(0, 2 * page_size, PROT_READ|PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); in mprotect_tests()
1239 if (mem == MAP_FAILED) in mprotect_tests()
1241 wp_init(mem, 2 * page_size); in mprotect_tests()
1242 wp_addr_range(mem, 2 * page_size); in mprotect_tests()
1245 memset(mem, 1, 2 * page_size); in mprotect_tests()
1247 ret = pagemap_ioctl(mem, 2 * page_size, &vec, 1, 0, 0, PAGE_IS_WRITTEN, in mprotect_tests()
1255 wp_addr_range(mem, 2 * page_size); in mprotect_tests()
1257 ksft_test_result(pagemap_ioctl(mem, 2 * page_size, &vec, 1, 0, 0, in mprotect_tests()
1262 mem2 = mmap(mem + page_size, page_size, PROT_READ|PROT_WRITE, in mprotect_tests()
1270 mprotect(mem, page_size, PROT_NONE); in mprotect_tests()
1271 mprotect(mem, 2 * page_size, PROT_READ); in mprotect_tests()
1272 mprotect(mem, 2 * page_size, PROT_READ|PROT_WRITE); in mprotect_tests()
1275 memset(mem, 2, 2 * page_size); in mprotect_tests()
1278 mprotect(mem, page_size, PROT_NONE); in mprotect_tests()
1279 mprotect(mem, page_size, PROT_READ); in mprotect_tests()
1280 mprotect(mem, page_size, PROT_READ|PROT_WRITE); in mprotect_tests()
1282 ret = pagemap_ioctl(mem, 2 * page_size, &vec, 1, 0, 0, PAGE_IS_WRITTEN, in mprotect_tests()
1291 wp_addr_range(mem, 2 * page_size); in mprotect_tests()
1293 memset(mem, 'A', 2 * page_size); in mprotect_tests()
1295 ret = pagemap_ioctl(mem, 2 * page_size, &vec, 1, 0, 0, PAGE_IS_WRITTEN, in mprotect_tests()
1303 wp_free(mem, 2 * page_size); in mprotect_tests()
1304 munmap(mem, 2 * page_size); in mprotect_tests()
1315 static ssize_t get_dirty_pages_reset(char *mem, unsigned int count, in get_dirty_pages_reset() argument
1325 arg.start = (uintptr_t)mem; in get_dirty_pages_reset()
1327 arg.end = (uintptr_t)(mem + count * page_size); in get_dirty_pages_reset()
1351 void *thread_proc(void *mem) in thread_proc() argument
1353 int *m = mem; in thread_proc()
1396 char *mem; in transact_test() local
1405 mem = mmap(NULL, 0x1000 * nthreads * pages_per_thread, PROT_READ | PROT_WRITE, in transact_test()
1407 if (mem == MAP_FAILED) in transact_test()
1410 wp_init(mem, 0x1000 * nthreads * pages_per_thread); in transact_test()
1411 wp_addr_range(mem, 0x1000 * nthreads * pages_per_thread); in transact_test()
1413 memset(mem, 0, 0x1000 * nthreads * pages_per_thread); in transact_test()
1415 count = get_dirty_pages_reset(mem, nthreads * pages_per_thread, 1, page_size); in transact_test()
1417 count = get_dirty_pages_reset(mem, nthreads * pages_per_thread, 1, page_size); in transact_test()
1422 pthread_create(&th, NULL, thread_proc, mem + 0x1000 * i * pages_per_thread); in transact_test()
1432 count = get_dirty_pages_reset(mem, nthreads * pages_per_thread, 1, in transact_test()
1443 c = get_dirty_pages_reset(mem, nthreads * pages_per_thread, 1, page_size); in transact_test()
1489 char *mmap_mem, *mem; in zeropfn_tests() local
1493 mem = mmap(NULL, mem_size, PROT_READ, MAP_PRIVATE | MAP_ANON, -1, 0); in zeropfn_tests()
1494 if (mem == MAP_FAILED) in zeropfn_tests()
1499 (void)((volatile char *)mem)[i]; in zeropfn_tests()
1501 ret = pagemap_ioctl(mem, mem_size, &vec, 1, 0, in zeropfn_tests()
1509 munmap(mem, mem_size); in zeropfn_tests()
1524 mem = (char *)(((uintptr_t)mmap_mem + hpage_size) & ~(hpage_size - 1)); in zeropfn_tests()
1526 ret = madvise(mem, hpage_size, MADV_HUGEPAGE); in zeropfn_tests()
1528 FORCE_READ(mem); in zeropfn_tests()
1530 ret = pagemap_ioctl(mem, hpage_size, &vec, 1, 0, in zeropfn_tests()
1548 char *mem, *map, *fmem; in main() local
1572 mem = mmap(NULL, mem_size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); in main()
1573 if (mem == MAP_FAILED) in main()
1575 wp_init(mem, mem_size); in main()
1576 wp_addr_range(mem, mem_size); in main()
1578 base_tests("Page testing:", mem, mem_size, 0); in main()
1580 wp_free(mem, mem_size); in main()
1581 munmap(mem, mem_size); in main()
1585 mem = mmap(NULL, mem_size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); in main()
1586 if (mem == MAP_FAILED) in main()
1588 wp_init(mem, mem_size); in main()
1589 wp_addr_range(mem, mem_size); in main()
1591 base_tests("Large Page testing:", mem, mem_size, 0); in main()
1593 wp_free(mem, mem_size); in main()
1594 munmap(mem, mem_size); in main()
1610 mem = gethugetlb_mem(mem_size, &shmid); in main()
1611 if (mem) { in main()
1612 wp_init(mem, mem_size); in main()
1613 wp_addr_range(mem, mem_size); in main()
1615 base_tests("Hugetlb shmem testing:", mem, mem_size, 0); in main()
1617 wp_free(mem, mem_size); in main()
1624 mem = gethugetlb_mem(mem_size, NULL); in main()
1625 if (mem) { in main()
1626 wp_init(mem, mem_size); in main()
1627 wp_addr_range(mem, mem_size); in main()
1629 base_tests("Hugetlb mem testing:", mem, mem_size, 0); in main()
1631 wp_free(mem, mem_size); in main()
1641 mem = mmap(NULL, mem_size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0); in main()
1642 if (mem != MAP_FAILED) { in main()
1643 wp_init(mem, mem_size); in main()
1644 wp_addr_range(mem, mem_size); in main()
1646 base_tests("Hugetlb shmem testing:", mem, mem_size, 0); in main()
1648 wp_free(mem, mem_size); in main()