current->flags |= PF_FROZEN; while (current->flags & PF_FROZEN)
while (frozen(current))
void refrigerator(unsigned long flag){	/* Hmm, should we be allowed to suspend when there are realtime	   processes around? */	long save;	save = current->state;	current->state = TASK_UNINTERRUPTIBLE;	pr_debug("%s entered refrigerator\n", current->comm);	printk("=");	current->flags &= ~PF_FREEZE;	spin_lock_irq(&current->sighand->siglock);	recalc_sigpending(); /* We sent fake signal, clean it up */	spin_unlock_irq(&current->sighand->siglock);	current->flags |= PF_FROZEN;	while (current->flags & PF_FROZEN)		schedule();	pr_debug("%s left refrigerator\n", current->comm);	current->state = save;}