As per https://wiki.gentoo.org/wiki/Kexec «Note that kexec may not work correctly due to devices not fully re-initializing when using this method, however that's rare occasion» This `rare` occasion happens all the time on all my notebooks that use i915 or iwlwifi w/ firmware loading. A temporary, working, solution is to manually remove the module(s) (`modprobe -r <modulename>`) before rebooting the system. I propose to add a new environment variable in /etc/conf.d/kexec (MODULES_TO_UNLOAD="") that could be either pre-populated w/ known defaults, or left to the user. The init script should then perform the `modprobe -r <modulename>` in its stop() method, around current line 196. Is this proposal acceptable? Is this the right place to discuss it? Reproducible: Always Steps to Reproduce: 1. service kexec start 2. reboot Actual Results: Various hardware doesn't work (iwlwifi, power saving on i915, ...) Expected Results: System reboots in a working state
You should report this to the relevant kernel maintainers upstream.