TASK_FREEZABLE
prepare_to_wait(&thread->wait, &wait, TASK_INTERRUPTIBLE|TASK_FREEZABLE);
set_current_state(TASK_UNINTERRUPTIBLE|TASK_FREEZABLE);
TASK_KILLABLE | TASK_FREEZABLE)) {
TASK_UNINTERRUPTIBLE|TASK_FREEZABLE);
(TASK_KILLABLE | TASK_FREEZABLE)))
__set_current_state(TASK_INTERRUPTIBLE|TASK_FREEZABLE);
wait_woken(&waiter.wait, TASK_INTERRUPTIBLE|TASK_FREEZABLE,
(TASK_KILLABLE|TASK_FREEZABLE));
set_current_state(TASK_KILLABLE|TASK_FREEZABLE);
set_current_state(TASK_INTERRUPTIBLE|TASK_FREEZABLE);
set_current_state(TASK_INTERRUPTIBLE | TASK_FREEZABLE);
READ_ONCE(curr->__state) & TASK_FREEZABLE)
#define TASK_FREEZABLE_UNSAFE (TASK_FREEZABLE | __TASK_FREEZABLE_UNSAFE)
___wait_event(wq_head, condition, (TASK_INTERRUPTIBLE|TASK_FREEZABLE), \
(TASK_INTERRUPTIBLE|TASK_FREEZABLE), 0, timeout, \
___wait_event(wq, condition, (TASK_INTERRUPTIBLE|TASK_FREEZABLE), 1, 0,\
set_current_state(TASK_IDLE|TASK_FREEZABLE);
unsigned int state = TASK_KILLABLE|TASK_FREEZABLE;
if (!(state & (TASK_FREEZABLE | __TASK_STOPPED | __TASK_TRACED)))
if (state & TASK_FREEZABLE)
set_current_state(TASK_INTERRUPTIBLE|TASK_FREEZABLE);
set_current_state(TASK_INTERRUPTIBLE|TASK_FREEZABLE);
(freeze ? TASK_FREEZABLE : 0));
__set_current_state(TASK_INTERRUPTIBLE|TASK_FREEZABLE);
__set_current_state(TASK_INTERRUPTIBLE|TASK_FREEZABLE);
set_current_state(TASK_INTERRUPTIBLE|TASK_FREEZABLE);
state |= TASK_FREEZABLE;
__set_current_state(TASK_INTERRUPTIBLE|TASK_FREEZABLE);
TASK_KILLABLE|TASK_FREEZABLE);
set_current_state(TASK_IDLE | TASK_FREEZABLE);
set_current_state(TASK_IDLE | TASK_FREEZABLE);
unsigned int state = TASK_INTERRUPTIBLE | freezable * TASK_FREEZABLE;