bsd-user: update debugging in mmap.c
Update the debugging code for new features and different targets. Signed-off-by: Mikaël Urankar <mikael.urankar@gmail.com> Signed-off-by: Sean Bruno <sbruno@FreeBSD.org> Signed-off-by: Kyle Evans <kevans@FreeBSD.org> Signed-off-by: Warner Losh <imp@bsdimp.com> Acked-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Kyle Evans <kevans@FreeBSD.org>
This commit is contained in:
parent
366c5c9f8d
commit
6a3b9bfde0
|
@ -68,8 +68,8 @@ int target_mprotect(abi_ulong start, abi_ulong len, int prot)
|
||||||
int prot1, ret;
|
int prot1, ret;
|
||||||
|
|
||||||
#ifdef DEBUG_MMAP
|
#ifdef DEBUG_MMAP
|
||||||
printf("mprotect: start=0x" TARGET_FMT_lx
|
printf("mprotect: start=0x" TARGET_ABI_FMT_lx
|
||||||
" len=0x" TARGET_FMT_lx " prot=%c%c%c\n", start, len,
|
"len=0x" TARGET_ABI_FMT_lx " prot=%c%c%c\n", start, len,
|
||||||
prot & PROT_READ ? 'r' : '-',
|
prot & PROT_READ ? 'r' : '-',
|
||||||
prot & PROT_WRITE ? 'w' : '-',
|
prot & PROT_WRITE ? 'w' : '-',
|
||||||
prot & PROT_EXEC ? 'x' : '-');
|
prot & PROT_EXEC ? 'x' : '-');
|
||||||
|
@ -250,28 +250,47 @@ abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
|
||||||
mmap_lock();
|
mmap_lock();
|
||||||
#ifdef DEBUG_MMAP
|
#ifdef DEBUG_MMAP
|
||||||
{
|
{
|
||||||
printf("mmap: start=0x" TARGET_FMT_lx
|
printf("mmap: start=0x" TARGET_ABI_FMT_lx
|
||||||
" len=0x" TARGET_FMT_lx " prot=%c%c%c flags=",
|
" len=0x" TARGET_ABI_FMT_lx " prot=%c%c%c flags=",
|
||||||
start, len,
|
start, len,
|
||||||
prot & PROT_READ ? 'r' : '-',
|
prot & PROT_READ ? 'r' : '-',
|
||||||
prot & PROT_WRITE ? 'w' : '-',
|
prot & PROT_WRITE ? 'w' : '-',
|
||||||
prot & PROT_EXEC ? 'x' : '-');
|
prot & PROT_EXEC ? 'x' : '-');
|
||||||
if (flags & MAP_FIXED)
|
if (flags & MAP_ALIGNMENT_MASK) {
|
||||||
printf("MAP_FIXED ");
|
printf("MAP_ALIGNED(%u) ", (flags & MAP_ALIGNMENT_MASK)
|
||||||
if (flags & MAP_ANON)
|
>> MAP_ALIGNMENT_SHIFT);
|
||||||
printf("MAP_ANON ");
|
|
||||||
switch (flags & TARGET_BSD_MAP_FLAGMASK) {
|
|
||||||
case MAP_PRIVATE:
|
|
||||||
printf("MAP_PRIVATE ");
|
|
||||||
break;
|
|
||||||
case MAP_SHARED:
|
|
||||||
printf("MAP_SHARED ");
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
printf("[MAP_FLAGMASK=0x%x] ", flags & TARGET_BSD_MAP_FLAGMASK);
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
printf("fd=%d offset=" TARGET_FMT_lx "\n", fd, offset);
|
#if MAP_GUARD
|
||||||
|
if (flags & MAP_GUARD) {
|
||||||
|
printf("MAP_GUARD ");
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
if (flags & MAP_FIXED) {
|
||||||
|
printf("MAP_FIXED ");
|
||||||
|
}
|
||||||
|
if (flags & MAP_ANONYMOUS) {
|
||||||
|
printf("MAP_ANON ");
|
||||||
|
}
|
||||||
|
#ifdef MAP_EXCL
|
||||||
|
if (flags & MAP_EXCL) {
|
||||||
|
printf("MAP_EXCL ");
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
if (flags & MAP_PRIVATE) {
|
||||||
|
printf("MAP_PRIVATE ");
|
||||||
|
}
|
||||||
|
if (flags & MAP_SHARED) {
|
||||||
|
printf("MAP_SHARED ");
|
||||||
|
}
|
||||||
|
if (flags & MAP_NOCORE) {
|
||||||
|
printf("MAP_NOCORE ");
|
||||||
|
}
|
||||||
|
#ifdef MAP_STACK
|
||||||
|
if (flags & MAP_STACK) {
|
||||||
|
printf("MAP_STACK ");
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
printf("fd=%d offset=0x%llx\n", fd, offset);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -399,7 +418,7 @@ abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
|
||||||
page_set_flags(start, start + len, prot | PAGE_VALID);
|
page_set_flags(start, start + len, prot | PAGE_VALID);
|
||||||
the_end:
|
the_end:
|
||||||
#ifdef DEBUG_MMAP
|
#ifdef DEBUG_MMAP
|
||||||
printf("ret=0x" TARGET_FMT_lx "\n", start);
|
printf("ret=0x" TARGET_ABI_FMT_lx "\n", start);
|
||||||
page_dump(stdout);
|
page_dump(stdout);
|
||||||
printf("\n");
|
printf("\n");
|
||||||
#endif
|
#endif
|
||||||
|
@ -416,7 +435,9 @@ int target_munmap(abi_ulong start, abi_ulong len)
|
||||||
int prot, ret;
|
int prot, ret;
|
||||||
|
|
||||||
#ifdef DEBUG_MMAP
|
#ifdef DEBUG_MMAP
|
||||||
printf("munmap: start=0x%lx len=0x%lx\n", start, len);
|
printf("munmap: start=0x" TARGET_ABI_FMT_lx " len=0x"
|
||||||
|
TARGET_ABI_FMT_lx "\n",
|
||||||
|
start, len);
|
||||||
#endif
|
#endif
|
||||||
if (start & ~TARGET_PAGE_MASK)
|
if (start & ~TARGET_PAGE_MASK)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
Loading…
Reference in New Issue