Lines Matching full:stack
29 * stack frame (if possible).
32 * NOT_STACK: not at all on the stack
33 * GOOD_FRAME: fully within a valid stack frame
34 * GOOD_STACK: within the current stack (when can't frame-check exactly)
35 * BAD_STACK: error condition (invalid stack position or bad stack frame)
39 const void * const stack = task_stack_page(current); in check_stack_object() local
40 const void * const stackend = stack + THREAD_SIZE; in check_stack_object()
43 /* Object is not on the stack at all. */ in check_stack_object()
44 if (obj + len <= stack || stackend <= obj) in check_stack_object()
48 * Reject: object partially overlaps the stack (passing the in check_stack_object()
49 * check above means at least one end is within the stack, in check_stack_object()
50 * so if this check fails, the other end is outside the stack). in check_stack_object()
52 if (obj < stack || stackend < obj + len) in check_stack_object()
56 ret = arch_within_stack_frames(stack, stackend, obj, len); in check_stack_object()
60 /* Finally, check stack depth if possible. */ in check_stack_object()
78 * __check_object_size() function. Normal stack buffer usage should never
219 * - fully contained by stack (or stack frame, when available)
232 /* Check for bad stack object. */ in __check_object_size()
235 /* Object is not touching the current process stack. */ in __check_object_size()
242 * process stack (when frame checking not available). in __check_object_size()
246 usercopy_abort("process stack", NULL, to_user, in __check_object_size()