diff options
Diffstat (limited to 'meta/recipes-devtools/qemu/qemu/0011-Revert-linux-user-fix-mmap-munmap-mprotect-mremap-sh.patch')
-rw-r--r-- | meta/recipes-devtools/qemu/qemu/0011-Revert-linux-user-fix-mmap-munmap-mprotect-mremap-sh.patch | 29 |
1 files changed, 15 insertions, 14 deletions
diff --git a/meta/recipes-devtools/qemu/qemu/0011-Revert-linux-user-fix-mmap-munmap-mprotect-mremap-sh.patch b/meta/recipes-devtools/qemu/qemu/0011-Revert-linux-user-fix-mmap-munmap-mprotect-mremap-sh.patch index 41626eb87c..066ea7865a 100644 --- a/meta/recipes-devtools/qemu/qemu/0011-Revert-linux-user-fix-mmap-munmap-mprotect-mremap-sh.patch +++ b/meta/recipes-devtools/qemu/qemu/0011-Revert-linux-user-fix-mmap-munmap-mprotect-mremap-sh.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 3ed26be2091436296933ed2146f7269c791c7bfe Mon Sep 17 00:00:00 2001 | 1 | From 496231774f8bc17ecfaf543a6603e3cad3f3f74e Mon Sep 17 00:00:00 2001 |
2 | From: Martin Jansa <martin.jansa@lge.com> | 2 | From: Martin Jansa <martin.jansa@lge.com> |
3 | Date: Fri, 1 Jun 2018 08:41:07 +0000 | 3 | Date: Fri, 1 Jun 2018 08:41:07 +0000 |
4 | Subject: [PATCH] Revert "linux-user: fix mmap/munmap/mprotect/mremap/shmat" | 4 | Subject: [PATCH] Revert "linux-user: fix mmap/munmap/mprotect/mremap/shmat" |
@@ -14,6 +14,7 @@ http://lists.openembedded.org/pipermail/openembedded-core/2018-June/151382.html | |||
14 | This reverts commit ebf9a3630c911d0cfc9c20f7cafe9ba4f88cf583. | 14 | This reverts commit ebf9a3630c911d0cfc9c20f7cafe9ba4f88cf583. |
15 | 15 | ||
16 | Upstream-Status: Pending | 16 | Upstream-Status: Pending |
17 | |||
17 | --- | 18 | --- |
18 | include/exec/cpu-all.h | 6 +----- | 19 | include/exec/cpu-all.h | 6 +----- |
19 | include/exec/cpu_ldst.h | 16 +++++++++------- | 20 | include/exec/cpu_ldst.h | 16 +++++++++------- |
@@ -22,10 +23,10 @@ Upstream-Status: Pending | |||
22 | 4 files changed, 15 insertions(+), 29 deletions(-) | 23 | 4 files changed, 15 insertions(+), 29 deletions(-) |
23 | 24 | ||
24 | diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h | 25 | diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h |
25 | index f4fa94e966..0b141683f0 100644 | 26 | index 117d2fbb..90558c14 100644 |
26 | --- a/include/exec/cpu-all.h | 27 | --- a/include/exec/cpu-all.h |
27 | +++ b/include/exec/cpu-all.h | 28 | +++ b/include/exec/cpu-all.h |
28 | @@ -159,12 +159,8 @@ extern unsigned long guest_base; | 29 | @@ -163,12 +163,8 @@ extern unsigned long guest_base; |
29 | extern int have_guest_base; | 30 | extern int have_guest_base; |
30 | extern unsigned long reserved_va; | 31 | extern unsigned long reserved_va; |
31 | 32 | ||
@@ -40,12 +41,12 @@ index f4fa94e966..0b141683f0 100644 | |||
40 | 41 | ||
41 | #include "exec/hwaddr.h" | 42 | #include "exec/hwaddr.h" |
42 | diff --git a/include/exec/cpu_ldst.h b/include/exec/cpu_ldst.h | 43 | diff --git a/include/exec/cpu_ldst.h b/include/exec/cpu_ldst.h |
43 | index 5de8c8a5af..191f2e962a 100644 | 44 | index 95906849..ed17b3f6 100644 |
44 | --- a/include/exec/cpu_ldst.h | 45 | --- a/include/exec/cpu_ldst.h |
45 | +++ b/include/exec/cpu_ldst.h | 46 | +++ b/include/exec/cpu_ldst.h |
46 | @@ -51,13 +51,15 @@ | 47 | @@ -62,13 +62,15 @@ typedef uint64_t abi_ptr; |
47 | /* All direct uses of g2h and h2g need to go away for usermode softmmu. */ | 48 | /* All direct uses of g2h and h2g need to go away for usermode softmmu. */ |
48 | #define g2h(x) ((void *)((unsigned long)(target_ulong)(x) + guest_base)) | 49 | #define g2h(x) ((void *)((unsigned long)(abi_ptr)(x) + guest_base)) |
49 | 50 | ||
50 | -#define guest_addr_valid(x) ((x) <= GUEST_ADDR_MAX) | 51 | -#define guest_addr_valid(x) ((x) <= GUEST_ADDR_MAX) |
51 | -#define h2g_valid(x) guest_addr_valid((unsigned long)(x) - guest_base) | 52 | -#define h2g_valid(x) guest_addr_valid((unsigned long)(x) - guest_base) |
@@ -67,10 +68,10 @@ index 5de8c8a5af..191f2e962a 100644 | |||
67 | #define h2g_nocheck(x) ({ \ | 68 | #define h2g_nocheck(x) ({ \ |
68 | unsigned long __ret = (unsigned long)(x) - guest_base; \ | 69 | unsigned long __ret = (unsigned long)(x) - guest_base; \ |
69 | diff --git a/linux-user/mmap.c b/linux-user/mmap.c | 70 | diff --git a/linux-user/mmap.c b/linux-user/mmap.c |
70 | index 9168a2051c..de85669aab 100644 | 71 | index 41e0983c..d0ee1c53 100644 |
71 | --- a/linux-user/mmap.c | 72 | --- a/linux-user/mmap.c |
72 | +++ b/linux-user/mmap.c | 73 | +++ b/linux-user/mmap.c |
73 | @@ -80,7 +80,7 @@ int target_mprotect(abi_ulong start, abi_ulong len, int prot) | 74 | @@ -79,7 +79,7 @@ int target_mprotect(abi_ulong start, abi_ulong len, int prot) |
74 | return -TARGET_EINVAL; | 75 | return -TARGET_EINVAL; |
75 | len = TARGET_PAGE_ALIGN(len); | 76 | len = TARGET_PAGE_ALIGN(len); |
76 | end = start + len; | 77 | end = start + len; |
@@ -79,7 +80,7 @@ index 9168a2051c..de85669aab 100644 | |||
79 | return -TARGET_ENOMEM; | 80 | return -TARGET_ENOMEM; |
80 | } | 81 | } |
81 | prot &= PROT_READ | PROT_WRITE | PROT_EXEC; | 82 | prot &= PROT_READ | PROT_WRITE | PROT_EXEC; |
82 | @@ -482,8 +482,8 @@ abi_long target_mmap(abi_ulong start, abi_ulong len, int prot, | 83 | @@ -490,8 +490,8 @@ abi_long target_mmap(abi_ulong start, abi_ulong len, int prot, |
83 | * It can fail only on 64-bit host with 32-bit target. | 84 | * It can fail only on 64-bit host with 32-bit target. |
84 | * On any other target/host host mmap() handles this error correctly. | 85 | * On any other target/host host mmap() handles this error correctly. |
85 | */ | 86 | */ |
@@ -90,7 +91,7 @@ index 9168a2051c..de85669aab 100644 | |||
90 | goto fail; | 91 | goto fail; |
91 | } | 92 | } |
92 | 93 | ||
93 | @@ -623,10 +623,8 @@ int target_munmap(abi_ulong start, abi_ulong len) | 94 | @@ -631,10 +631,8 @@ int target_munmap(abi_ulong start, abi_ulong len) |
94 | if (start & ~TARGET_PAGE_MASK) | 95 | if (start & ~TARGET_PAGE_MASK) |
95 | return -TARGET_EINVAL; | 96 | return -TARGET_EINVAL; |
96 | len = TARGET_PAGE_ALIGN(len); | 97 | len = TARGET_PAGE_ALIGN(len); |
@@ -102,7 +103,7 @@ index 9168a2051c..de85669aab 100644 | |||
102 | mmap_lock(); | 103 | mmap_lock(); |
103 | end = start + len; | 104 | end = start + len; |
104 | real_start = start & qemu_host_page_mask; | 105 | real_start = start & qemu_host_page_mask; |
105 | @@ -681,13 +679,6 @@ abi_long target_mremap(abi_ulong old_addr, abi_ulong old_size, | 106 | @@ -689,13 +687,6 @@ abi_long target_mremap(abi_ulong old_addr, abi_ulong old_size, |
106 | int prot; | 107 | int prot; |
107 | void *host_addr; | 108 | void *host_addr; |
108 | 109 | ||
@@ -117,10 +118,10 @@ index 9168a2051c..de85669aab 100644 | |||
117 | 118 | ||
118 | if (flags & MREMAP_FIXED) { | 119 | if (flags & MREMAP_FIXED) { |
119 | diff --git a/linux-user/syscall.c b/linux-user/syscall.c | 120 | diff --git a/linux-user/syscall.c b/linux-user/syscall.c |
120 | index 643b8833de..271f215147 100644 | 121 | index 280137da..efdd0006 100644 |
121 | --- a/linux-user/syscall.c | 122 | --- a/linux-user/syscall.c |
122 | +++ b/linux-user/syscall.c | 123 | +++ b/linux-user/syscall.c |
123 | @@ -4919,9 +4919,6 @@ static inline abi_ulong do_shmat(CPUArchState *cpu_env, | 124 | @@ -3818,9 +3818,6 @@ static inline abi_ulong do_shmat(CPUArchState *cpu_env, |
124 | return -TARGET_EINVAL; | 125 | return -TARGET_EINVAL; |
125 | } | 126 | } |
126 | } | 127 | } |
@@ -130,7 +131,7 @@ index 643b8833de..271f215147 100644 | |||
130 | 131 | ||
131 | mmap_lock(); | 132 | mmap_lock(); |
132 | 133 | ||
133 | @@ -7497,7 +7494,7 @@ static int open_self_maps(void *cpu_env, int fd) | 134 | @@ -6582,7 +6579,7 @@ static int open_self_maps(void *cpu_env, int fd) |
134 | } | 135 | } |
135 | if (h2g_valid(min)) { | 136 | if (h2g_valid(min)) { |
136 | int flags = page_get_flags(h2g(min)); | 137 | int flags = page_get_flags(h2g(min)); |