tests/tcg/multiarch/test-mmap: Print more details
Useful for debugging Signed-off-by: Bingwu Zhang <xtex@astrafall.org> Signed-off-by: Helge Deller <deller@gmx.de>
Bingwu Zhang committed
Feb 28, 2026 at 00:46 UTC
5ce072ea02455a8c2c5d11f47e25564d767a192e
1 file changed
+9
-3
tests/tcg/multiarch/test-mmap.c
+9
-3
@@ -442,19 +442,19 @@ void check_invalid_mmaps(void)
442
443
/* Attempt to map a zero length page. */
444
addr = mmap(NULL, 0, PROT_READ, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
445
- fprintf(stdout, "%s addr=%p", __func__, (void *)addr);
445
+ fprintf(stdout, "%s addr=%p errno=%d\n", __func__, (void *)addr, errno);
446
fail_unless(addr == MAP_FAILED);
447
fail_unless(errno == EINVAL);
448
449
/* Attempt to map a over length page. */
450
addr = mmap(NULL, -4, PROT_READ, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
451
- fprintf(stdout, "%s addr=%p", __func__, (void *)addr);
451
+ fprintf(stdout, "%s addr=%p errno=%d\n", __func__, (void *)addr, errno);
452
fail_unless(addr == MAP_FAILED);
453
fail_unless(errno == ENOMEM);
454
455
/* Attempt to remap a region which exceeds the bounds of memory. */
456
addr = mremap((void *)((uintptr_t)pagesize * 10), SIZE_MAX & ~(size_t)pagemask, pagesize, 0);
457
- fprintf(stdout, "%s mremap addr=%p", __func__, (void *)addr);
457
+ fprintf(stdout, "%s mremap addr=%p errno=%d\n", __func__, (void *)addr, errno);
458
fail_unless(addr == MAP_FAILED);
459
fail_unless(errno == EFAULT);
460
@@ -465,8 +465,11 @@ void check_shrink_mmaps(void)
465
{
466
unsigned char *a, *b, *c;
467
a = mmap(NULL, pagesize * 2, PROT_READ, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
468
+ fprintf(stdout, "%s addr=%p errno=%d\n", __func__, (void *)a, errno);
469
b = mmap(NULL, pagesize * 2, PROT_READ, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
470
+ fprintf(stdout, "%s addr=%p errno=%d\n", __func__, (void *)b, errno);
471
c = mmap(NULL, pagesize * 2, PROT_READ, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
472
+ fprintf(stdout, "%s addr=%p errno=%d\n", __func__, (void *)c, errno);
473
474
fail_unless(a != MAP_FAILED);
475
fail_unless(b != MAP_FAILED);
@@ -479,6 +482,7 @@ void check_shrink_mmaps(void)
482
483
/* Shrink the middle mapping in-place; the others should be unaffected */
484
b = mremap(b, pagesize * 2, pagesize, 0);
485
+ fprintf(stdout, "%s mremap addr=%p errno=%d\n", __func__, (void *)b, errno);
486
fail_unless(b != MAP_FAILED);
487
488
/* Ensure we can still access all valid mappings */
@@ -489,6 +493,8 @@ void check_shrink_mmaps(void)
493
munmap(a, 2 * pagesize);
494
munmap(b, pagesize);
495
munmap(c, 2 * pagesize);
496
+
497
+ fprintf(stdout, " passed\n");
498
}
499
500
int main(int argc, char **argv)