diff options
Diffstat (limited to 'arch/um/os-Linux/skas/process.c')
-rw-r--r-- | arch/um/os-Linux/skas/process.c | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/arch/um/os-Linux/skas/process.c b/arch/um/os-Linux/skas/process.c index 8548f126d628..e60d6e6c5a58 100644 --- a/arch/um/os-Linux/skas/process.c +++ b/arch/um/os-Linux/skas/process.c | |||
@@ -191,22 +191,23 @@ static int userspace_tramp(void *stack) | |||
191 | int fd; | 191 | int fd; |
192 | unsigned long long offset; | 192 | unsigned long long offset; |
193 | fd = phys_mapping(to_phys(&__syscall_stub_start), &offset); | 193 | fd = phys_mapping(to_phys(&__syscall_stub_start), &offset); |
194 | addr = mmap64((void *) UML_CONFIG_STUB_CODE, UM_KERN_PAGE_SIZE, | 194 | addr = mmap64((void *) STUB_CODE, UM_KERN_PAGE_SIZE, |
195 | PROT_EXEC, MAP_FIXED | MAP_PRIVATE, fd, offset); | 195 | PROT_EXEC, MAP_FIXED | MAP_PRIVATE, fd, offset); |
196 | if (addr == MAP_FAILED) { | 196 | if (addr == MAP_FAILED) { |
197 | printk(UM_KERN_ERR "mapping mmap stub failed, " | 197 | printk(UM_KERN_ERR "mapping mmap stub at 0x%lx failed, " |
198 | "errno = %d\n", errno); | 198 | "errno = %d\n", STUB_CODE, errno); |
199 | exit(1); | 199 | exit(1); |
200 | } | 200 | } |
201 | 201 | ||
202 | if (stack != NULL) { | 202 | if (stack != NULL) { |
203 | fd = phys_mapping(to_phys(stack), &offset); | 203 | fd = phys_mapping(to_phys(stack), &offset); |
204 | addr = mmap((void *) UML_CONFIG_STUB_DATA, | 204 | addr = mmap((void *) STUB_DATA, |
205 | UM_KERN_PAGE_SIZE, PROT_READ | PROT_WRITE, | 205 | UM_KERN_PAGE_SIZE, PROT_READ | PROT_WRITE, |
206 | MAP_FIXED | MAP_SHARED, fd, offset); | 206 | MAP_FIXED | MAP_SHARED, fd, offset); |
207 | if (addr == MAP_FAILED) { | 207 | if (addr == MAP_FAILED) { |
208 | printk(UM_KERN_ERR "mapping segfault stack " | 208 | printk(UM_KERN_ERR "mapping segfault stack " |
209 | "failed, errno = %d\n", errno); | 209 | "at 0x%lx failed, errno = %d\n", |
210 | STUB_DATA, errno); | ||
210 | exit(1); | 211 | exit(1); |
211 | } | 212 | } |
212 | } | 213 | } |
@@ -214,11 +215,11 @@ static int userspace_tramp(void *stack) | |||
214 | if (!ptrace_faultinfo && (stack != NULL)) { | 215 | if (!ptrace_faultinfo && (stack != NULL)) { |
215 | struct sigaction sa; | 216 | struct sigaction sa; |
216 | 217 | ||
217 | unsigned long v = UML_CONFIG_STUB_CODE + | 218 | unsigned long v = STUB_CODE + |
218 | (unsigned long) stub_segv_handler - | 219 | (unsigned long) stub_segv_handler - |
219 | (unsigned long) &__syscall_stub_start; | 220 | (unsigned long) &__syscall_stub_start; |
220 | 221 | ||
221 | set_sigstack((void *) UML_CONFIG_STUB_DATA, UM_KERN_PAGE_SIZE); | 222 | set_sigstack((void *) STUB_DATA, UM_KERN_PAGE_SIZE); |
222 | sigemptyset(&sa.sa_mask); | 223 | sigemptyset(&sa.sa_mask); |
223 | sigaddset(&sa.sa_mask, SIGIO); | 224 | sigaddset(&sa.sa_mask, SIGIO); |
224 | sigaddset(&sa.sa_mask, SIGWINCH); | 225 | sigaddset(&sa.sa_mask, SIGWINCH); |
@@ -382,10 +383,10 @@ static int __init init_thread_regs(void) | |||
382 | { | 383 | { |
383 | get_safe_registers(thread_regs); | 384 | get_safe_registers(thread_regs); |
384 | /* Set parent's instruction pointer to start of clone-stub */ | 385 | /* Set parent's instruction pointer to start of clone-stub */ |
385 | thread_regs[REGS_IP_INDEX] = UML_CONFIG_STUB_CODE + | 386 | thread_regs[REGS_IP_INDEX] = STUB_CODE + |
386 | (unsigned long) stub_clone_handler - | 387 | (unsigned long) stub_clone_handler - |
387 | (unsigned long) &__syscall_stub_start; | 388 | (unsigned long) &__syscall_stub_start; |
388 | thread_regs[REGS_SP_INDEX] = UML_CONFIG_STUB_DATA + UM_KERN_PAGE_SIZE - | 389 | thread_regs[REGS_SP_INDEX] = STUB_DATA + UM_KERN_PAGE_SIZE - |
389 | sizeof(void *); | 390 | sizeof(void *); |
390 | #ifdef __SIGNAL_FRAMESIZE | 391 | #ifdef __SIGNAL_FRAMESIZE |
391 | thread_regs[REGS_SP_INDEX] -= __SIGNAL_FRAMESIZE; | 392 | thread_regs[REGS_SP_INDEX] -= __SIGNAL_FRAMESIZE; |
@@ -443,7 +444,7 @@ int copy_context_skas0(unsigned long new_stack, int pid) | |||
443 | * child's stack and check it. | 444 | * child's stack and check it. |
444 | */ | 445 | */ |
445 | wait_stub_done(pid); | 446 | wait_stub_done(pid); |
446 | if (child_data->err != UML_CONFIG_STUB_DATA) | 447 | if (child_data->err != STUB_DATA) |
447 | panic("copy_context_skas0 - stub-child reports error %ld\n", | 448 | panic("copy_context_skas0 - stub-child reports error %ld\n", |
448 | child_data->err); | 449 | child_data->err); |
449 | 450 | ||