[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Cleanup loader STEP_IP failure recovery


While talking to Richard Hughes about a 'preupgrade' use case that requires
networking to download stage#2 during the install process, we discussed adding
boot options "ksdevice=link ip=dhcp" to get things working with no user prompts
for 95% of users.  For the other 5% that [do,can] not use DHCP, loader doesn't
currently let you go back and choose a different interface or tweak the IP
parameters once you boot with "ksdevice=____ and ip=____".  Basically, you are
presented with a dialog to [Retry] which won't work unless there is a DHCP
server responding.

To explore, and potentially correct this behavior, I tweaked net.c and loader.c
to allow you to manually walk through STEP_IFACE and STEP_IP in the event that
configuring the network has failed.  One problem was that configureTCPIP() was
using FL_IP_PARAM(flags) and FL_IPV6_PARAM(flags) to determine whether or not
to setup the network.  However, if those parameters didn't work, we never
cleared them when network activation failed.  Along with that fix, there are a
few spots where we needed to clear the values so the user could be re-prompted
for networking information.  Also, I've adjusted that to instead use
iface->ipv4Method and iface->ipv6Method.  There are a few other logMessage()
additions I found helpful when tracking the flow.

I've tested this out using a virtual guest with multiple NICs, no dhcp server
responding, different combinations of IPv6 and IPv4 networking, and networking
provided as boot args and kickstart.  The attached patch seems to have held up.
I'm sure I'm forgetting something, so I thought I'd send this out to the list
for feedback.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]