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