rtems_bsdnet_do_dhcp_failsafe problems

Peter Dufault dufault at hda.com
Tue Aug 2 15:28:38 UTC 2011


On Aug 2, 2011, at 10:23 , Peter Dufault wrote:

> 2. Once I fix that it finds the interface, however, the carrier LED on the switch never comes on and it times out looking for an address:

I see where the LED goes off, but I don't know enough about networking to fix it yet.

1. After the network driver finishes initializing the carrier LED is on.
2. rtems_bsdnet_do_dhcp_failsafe() calls do_dhcp_init(), which calls remove_address().  This is different from the regular rtems_bsdnet_do_dhcp().
3. We finally get down into dhcp_init().  It finds out from dhcp_interface_has_ip() that the interface does not have an IP (it was removed above), and it calls bootpc_fakeup_interface().  The LED is still on.
4. bootpc_fakeup_interface() reads back the interface flags, ORs in the IFF_UP, and sets the flags.  At that point the LED goes out.

I'm guessing remove_address() is being too aggressive and clobbered some required flags?  Anyone know how this is supposed to work?

Peter
-----------------
Peter Dufault
HD Associates, Inc.      Software and System Engineering





More information about the users mailing list