1 |
Hi, |
2 |
|
3 |
here's v2 based on some IRC feedback (grammar- and punctuation-related) |
4 |
I am planning to add for tomorrow. |
5 |
|
6 |
|
7 |
--- |
8 |
Title: Multiple root kernel command-line arguments |
9 |
Author: Thomas Deutschmann <whissi@g.o> |
10 |
Posted: 2020-08-05 |
11 |
Revision: 1 |
12 |
News-Item-Format: 2.0 |
13 |
|
14 |
Due to genkernel-4.1 development which is changing device manager |
15 |
from MDEV to (E)UDEV it was noticed that some tools like kexec |
16 |
append an additional root argument to kernel command-line. If these |
17 |
tools will set root to a non-persistent device name like |
18 |
root=/dev/dm-3, the next boot might fail if there is *no* root device |
19 |
named like that in start environment (i.e. initramfs). |
20 |
|
21 |
While kexec's runscript was changed in >=sys-apps/kexec-tools-2.0.20-r2 |
22 |
to no longer append root kernel command-line argument when an option |
23 |
like "--reuse-cmdline" (default) is used, a cold reboot *without* |
24 |
kexec may be needed to restore kernel command-line. |
25 |
|
26 |
NOTE: This issue is *not* specific to kexec or genkernel usage. |
27 |
Kernel will always use last set root kernel command-line argument. |
28 |
Any tool which might be appending root argument without a persistent |
29 |
device name might cause a boot failure if system cannot find that |
30 |
referenced root device during boot. |
31 |
|
32 |
To avoid boot problems, user should revise their current kernel |
33 |
command-line (/proc/cmdline) to ensure that only *one* root kernel |
34 |
command-line argument is set. The usage of persistent device names |
35 |
like root=UUID=<...> is highly recommended. |
36 |
|
37 |
|
38 |
-- |
39 |
Regards, |
40 |
Thomas Deutschmann / Gentoo Linux Developer |
41 |
C4DD 695F A713 8F24 2AA1 5638 5849 7EE5 1D5D 74A5 |