On Sat, 2009-03-07 at 20:43 +0100, Daniel Lezcano wrote:Right and unlock_kernel too :)
case LINUX_REBOOT_CMD_HALT:
- kernel_halt();
- unlock_kernel();
- do_exit(0);
+ if (power_off_pid_ns(current->nsproxy->pid_ns)) {
+ kernel_halt();
+ unlock_kernel();
+ do_exit(0);
+ }
Even if current will get SIGKILLed when zap_pid_ns_processes() is
called, I see no reason it doesn't call do_exit(0).
break;
case LINUX_REBOOT_CMD_POWER_OFF:
- kernel_power_off();
- unlock_kernel();
- do_exit(0);
+ if (power_off_pid_ns(current->nsproxy->pid_ns)) {
+ kernel_power_off();
+ unlock_kernel();
+ do_exit(0);
+ }
Same.
break;