Lines Matching full:stack
28 * stack frame (if possible).
31 * NOT_STACK: not at all on the stack
32 * GOOD_FRAME: fully within a valid stack frame
33 * GOOD_STACK: within the current stack (when can't frame-check exactly)
34 * BAD_STACK: error condition (invalid stack position or bad stack frame)
38 const void * const stack = task_stack_page(current); in check_stack_object() local
39 const void * const stackend = stack + THREAD_SIZE; in check_stack_object()
42 /* Object is not on the stack at all. */ in check_stack_object()
43 if (obj + len <= stack || stackend <= obj) in check_stack_object()
47 * Reject: object partially overlaps the stack (passing the in check_stack_object()
48 * check above means at least one end is within the stack, in check_stack_object()
49 * so if this check fails, the other end is outside the stack). in check_stack_object()
51 if (obj < stack || stackend < obj + len) in check_stack_object()
55 ret = arch_within_stack_frames(stack, stackend, obj, len); in check_stack_object()
59 /* Finally, check stack depth if possible. */ in check_stack_object()
77 * __check_object_size() function. Normal stack buffer usage should never
208 * - fully contained by stack (or stack frame, when available)
224 /* Check for bad stack object. */ in __check_object_size()
227 /* Object is not touching the current process stack. */ in __check_object_size()
234 * process stack (when frame checking not available). in __check_object_size()
238 usercopy_abort("process stack", NULL, to_user, in __check_object_size()