要重新启动的内核模块 linux

Kernel Module to reboot linux

如何在我的动态模块中 EXPORT_SYMBOL 重新启动我的 linux 系统。

EXPORT_SYMBOL(register_restart_handler);
EXPORT_SYMBOL(unregister_restart_handler);
EXPORT_SYMBOL_GPL(kernel_restart);

如何在void kernel_restart(char *cmd)中使用struct notifier_blockchar *cmd

我找到了解决方案,只需添加 kernel_restart(NULL)。无需注册处理程序。

   int init_module(void)
{

    mdelay(5000);

    kernel_restart(NULL);

    return 0;
}