If device_suspend(PMSG_FREEZE) is not ready to be called in kernel_restart it is definitely not ready to be called in the even more fickle kernel_kexec.
Unified · Split
| @@ -392,7 +392,6 @@ void kernel_kexec(void) · 391 unmodified lines | ||
| 392 | 392 | } |
| 393 | 393 | notifier_call_chain(&reboot_notifier_list, SYS_RESTART, NULL); |
| 394 | 394 | system_state = SYSTEM_RESTART; |
| 395 | − device_suspend(PMSG_FREEZE); | |
| 396 | 395 | device_shutdown(); |
| 397 | 396 | printk(KERN_EMERG "Starting new kernel\n"); |
| 398 | 397 | machine_shutdown(); |