Lines Matching refs:stack
162 * the stub stack page. We just have to copy it.
229 * @stack: pointer to the new userspace stack page, can be NULL, if? FIXME:
232 * This function will run on a temporary stack page.
242 static int userspace_tramp(void *stack)
262 if (stack != NULL) {
263 fd = phys_mapping(uml_to_phys(stack), &offset);
268 printk(UM_KERN_ERR "mapping segfault stack at 0x%lx failed, errno = %d\n",
273 if (stack != NULL) {
301 * @stub_stack: pointer to the stub stack. Can be NULL, if? FIXME:
303 * Setups a new temporary stack page that is used while userspace_tramp() runs
312 void *stack;
316 /* setup a temporary stack page */
317 stack = mmap(NULL, UM_KERN_PAGE_SIZE,
320 if (stack == MAP_FAILED) {
327 /* set stack pointer to the end of the stack page, so it can grow downwards */
328 sp = (unsigned long)stack + UM_KERN_PAGE_SIZE;
366 if (munmap(stack, UM_KERN_PAGE_SIZE) < 0) {
538 * prepare offset and fd of child's stack as argument for parent's
569 * parent's stack, and check, if bad result.
590 * child's stack and check it.
615 void new_thread(void *stack, jmp_buf *buf, void (*handler)(void))
618 (*buf)[0].JB_SP = (unsigned long) stack + UM_THREAD_SIZE -
640 int start_idle_thread(void *stack, jmp_buf *switch_buf)
650 * blocked, which can't be done on this stack.
658 (*switch_buf)[0].JB_SP = (unsigned long) stack +