panic: assertion: _ifac->ifa_magic == IFA_CONTAINER_MAGIC in _IFAFREE

Matthew Dillon dillon at apollo.backplane.com
Mon Mar 17 13:49:40 PDT 2008


:I have changed this test program a little bit.  Run it in following way:
:./test_udp remote_ip
:
:...
:I think we need to fix following entry points:
:1) udp_output(): after ip_output() if old_lport==0 and
:mycpuid!=udp_addrcpu(inpcb addr/port pair) then free inpcb's route
:entry
:2) udp_connect(): this function always happens on CPU0, so if
:udp_addrcpu(inpcb addr/port pair)!=mycpuid(0 here), then we need to
:free inpcb's route entry
:3) udp_disconnect(): at the end of it, if mycpuid!=udp_addrcpu(inpcb
:addr/port pair) then free inpcb's route entry
:
:I may miss some entry points here, so please point them out to me, if
:some pop up in your mind.
:
:Best Regards,
:sephe

    I'm not sure how appropriate my idea is but... what if we simply
    do not cache the route until after the addr/port pair is assigned?

					-Matt
					Matthew Dillon 
					<dillon at backplane.com>





More information about the Bugs mailing list