-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Wed, 2 Jun 2010, Chris Lumens wrote:
Loader has 3 ways to configure the network:
1) interactive user input
2) boot parameters
3) readNetInfo
Option 3 is used to transfer the configuration of the already configured
network of linuxrc.s390. Linuxrc.s390 has to configure the network early
since the default terminals on s390 provide line mode but no full screen.
The user then logs in over ssh to provide a full screen terminal in which
loader can be executed. Since linuxrc already did the network config,
we want to skip interactive user input in loader. Hence, 3 replaces 1 and 2
on s390.
Before 0d5f432a39178f78754698e33a89905440584e4c, loader's readNetinfo
iterated over all existing ifcfg files, which is only fine for s390
where linuxrc currently only ever configures at most one network device.
Since readNetInfo is called for all platforms there could maybe exist
more than one ifcfg file so we need a way for linuxrc to tell loader the
name of the specific configured device.
Linuxrc.s390 has 3 ways to activate loader:
1) ssh login as user install, which has /sbin/loader as login shell
2) ssh login as user root (/bin/bash) and executing loader manually
3) boot option RUNKS=1
Passing exported environment variables only works for 3 where loader
is a child of linuxrc. 2 only worked by accident since linuxrc wrote
the content of /tmp/install.cfg into /etc/profile so root could see it.
However, in the general and often used case 1 there is neither an ancestor
relationship between linuxrc and loader nor a shell involved.
Therefore, introduce a new file /tmp/s390net to pass the name to loader.
This works the same for all three cases.
Since QETHPARM and CHANDEV are no longer used, we can get rid of
the old /tmp/install.cfg entirely.
This commit message is ridiculous. Please describe the problem
*concisely* and *directly*. A page full of text is not concise. No
one's going to sit down and read all this.
Holding off on applying this patch until we get a better commit message.
Steffen, something like this would get your point across:
Pass configured network device on s390 to loader via /tmp/s390net rather than
the DEVICE environment variable. Using the environment variable only works
when loader is the child process of /sbin/init, which only happens for ks
installs. Interactive installs on s390 invoke loader as the ssh login shell,
so they never see the DEVICE environment variable.
- --
David Cantrell <dcantrell@xxxxxxxxxx>
Red Hat / Honolulu, HI
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (GNU/Linux)
iEYEARECAAYFAkwGeFcACgkQ5hsjjIy1VkleDQCgyUHRfp3Wr6TgalAGm7eA5TYK
heYAn198TxEtciQF7t3nkX5uao6n5sXs
=XZ9Y
-----END PGP SIGNATURE-----
_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/anaconda-devel-list