[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 07/18] linux-user: fix target_mprotect/target_munmap
From: |
Laurent Vivier |
Subject: |
[Qemu-devel] [PULL 07/18] linux-user: fix target_mprotect/target_munmap error return values |
Date: |
Tue, 13 Mar 2018 18:33:44 +0100 |
From: Max Filippov <address@hidden>
target_mprotect/target_munmap return value goes through get_errno at the
call site, thus the functions must either set errno to host error code
and return -1 or return negative guest error code. Do the latter.
Cc: address@hidden
Cc: Riku Voipio <address@hidden>
Cc: Laurent Vivier <address@hidden>
Signed-off-by: Max Filippov <address@hidden>
Reviewed-by: Laurent Vivier <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Laurent Vivier <address@hidden>
---
linux-user/mmap.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/linux-user/mmap.c b/linux-user/mmap.c
index df81f9b803..84b15c9a16 100644
--- a/linux-user/mmap.c
+++ b/linux-user/mmap.c
@@ -77,11 +77,11 @@ int target_mprotect(abi_ulong start, abi_ulong len, int
prot)
#endif
if ((start & ~TARGET_PAGE_MASK) != 0)
- return -EINVAL;
+ return -TARGET_EINVAL;
len = TARGET_PAGE_ALIGN(len);
end = start + len;
if (!guest_range_valid(start, len)) {
- return -ENOMEM;
+ return -TARGET_ENOMEM;
}
prot &= PROT_READ | PROT_WRITE | PROT_EXEC;
if (len == 0)
@@ -621,10 +621,10 @@ int target_munmap(abi_ulong start, abi_ulong len)
start, len);
#endif
if (start & ~TARGET_PAGE_MASK)
- return -EINVAL;
+ return -TARGET_EINVAL;
len = TARGET_PAGE_ALIGN(len);
if (len == 0 || !guest_range_valid(start, len)) {
- return -EINVAL;
+ return -TARGET_EINVAL;
}
mmap_lock();
--
2.14.3
- [Qemu-devel] [PULL 00/18] Linux user for 2.12 patches, Laurent Vivier, 2018/03/13
- [Qemu-devel] [PULL 03/18] linux-user: allows to use "--systemd ALL" with qemu-binfmt-conf.sh, Laurent Vivier, 2018/03/13
- [Qemu-devel] [PULL 07/18] linux-user: fix target_mprotect/target_munmap error return values,
Laurent Vivier <=
- [Qemu-devel] [PULL 06/18] linux-user: fix assertion in shmdt, Laurent Vivier, 2018/03/13
- [Qemu-devel] [PULL 05/18] linux-user: fix mmap/munmap/mprotect/mremap/shmat, Laurent Vivier, 2018/03/13
- [Qemu-devel] [PULL 04/18] linux-user: Support f_flags in statfs when available., Laurent Vivier, 2018/03/13
- [Qemu-devel] [PULL 09/18] qemu-binfmt-conf.sh: add qemu-xtensa, Laurent Vivier, 2018/03/13
- [Qemu-devel] [PULL 02/18] linux-user: Remove the unused "not implemented" signal handling stubs, Laurent Vivier, 2018/03/13
- [Qemu-devel] [PULL 08/18] linux-user: drop unused target_msync function, Laurent Vivier, 2018/03/13
- [Qemu-devel] [PULL 01/18] linux-user: Drop unicore32 code, Laurent Vivier, 2018/03/13
- [Qemu-devel] [PULL 10/18] linux-user: Use #if to only call validate_guest_space for 32-bit ARM target, Laurent Vivier, 2018/03/13
- [Qemu-devel] [PULL 12/18] linux-user: init_guest_space: Clean up if we can't initialize the commpage, Laurent Vivier, 2018/03/13
- [Qemu-devel] [PULL 17/18] linux-user: init_guest_space: Don't try to align if we'll reject it, Laurent Vivier, 2018/03/13