Lines Matching refs:stackptr
129 i386_validate_stackptr(vm_offset_t stackptr)
133 if (!stackptr || (stackptr & 0x3))
138 if (!kvtophys(stackptr))
144 if (((PAGE_SIZE - (stackptr & PAGE_MASK)) < i386_RETURN_OFFSET) &&
145 !kvtophys(stackptr + i386_RETURN_OFFSET))
167 x86_64_validate_stackptr(vm_offset_t stackptr)
171 if (!stackptr || (stackptr & 0x7) || !x86_64_validate_raddr(stackptr))
176 if (!kvtophys(stackptr))
182 if (((PAGE_SIZE - (stackptr & PAGE_MASK)) < x86_64_RETURN_OFFSET) &&
183 !kvtophys(stackptr + x86_64_RETURN_OFFSET))
207 vm_offset_t stackptr, stackptr_prev, raddr;
210 __asm__ volatile("movl %%ebp, %0" : "=m" (stackptr));
212 if (!i386_validate_stackptr(stackptr))
215 raddr = *((vm_offset_t *) (stackptr + i386_RETURN_OFFSET));
223 stackptr_prev = stackptr;
224 stackptr = *((vm_offset_t *) stackptr_prev);
226 if (!i386_validate_stackptr(stackptr))
229 if (stackptr < stackptr_prev)
232 if ((stackptr - stackptr_prev) > SANE_i386_FRAME_SIZE)
235 raddr = *((vm_offset_t *) (stackptr + i386_RETURN_OFFSET));
249 vm_offset_t stackptr, stackptr_prev, raddr;
253 __asm__ volatile("movq %%rbp, %0" : "=m" (stackptr));
255 if (!x86_64_validate_stackptr(stackptr))
258 raddr = *((vm_offset_t *) (stackptr + x86_64_RETURN_OFFSET));
266 stackptr_prev = stackptr;
267 stackptr = *((vm_offset_t *) stackptr_prev);
269 if (!x86_64_validate_stackptr(stackptr))
272 if (stackptr < stackptr_prev)
275 if ((stackptr - stackptr_prev) > SANE_x86_64_FRAME_SIZE)
278 raddr = *((vm_offset_t *) (stackptr + x86_64_RETURN_OFFSET));