rrs added a comment.

Adrian:

I know he said callout_drain, but just like in TCP that is *not* always 
possible. In
the case of the arp/nd6 code lock are held (same as TCP) so you can't do a 
callout_drain. Thats
why the original author put ref-counting in with the idea that the timer would 
kill it if it had
to execute.. they just did not anticipate that by having the callout grab the 
lock, it would
then be making references to it after they deleted it in this one case.

Maybe I need to go back through the code and using jhb's a-n outline point out 
the lines of code
so everyone can follow along how this fixes it...

REVISION DETAIL
  https://reviews.freebsd.org/D1777

To: rrs, imp, sbruno, gnn, rwatson, lstewart, kostikbel, adrian, bz, jhb
Cc: bz, emaste, hiren, julian, hselasky, freebsd-net
_______________________________________________
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"

Reply via email to