As a postscript: The problem was a dynamic timer was freed without being stopped first. Obviously, the printf() should be removed from the final fix. After this discovery, I went through all of the callout_init() calls in the kernel and looked at those that may be freed before possibly being stopped. Beside the one in netinet6/mld6.c, I have 5 more that initially look like the memory for the callout struction could also be freed and still not have been stopped. These paths are problably not traveled much (detaches for less mainstream components), but stopping the callout is cheap and not at all risky. I will look at the 5 cases again and suggest all of these callout at risk be stopped under the same fix. --Mark TinguelyReceived on Thu Nov 10 2005 - 13:50:43 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:47 UTC