From: Stephen Hemminger <shemminger@osdl.org> Date: Mon, 28 Apr 2003 16:35:57 -0700 So unless dst.c is fixed, there needs to be a rule NEVER use dev->destructor in network modules. I don't understand what the problem is. Look, this code in the DST cache merely puts the device (which is legal from any context) if the device lacks a destructor. If it has a destructor, it keeps the reference and once the DST entry dies the dst->dev is dev_put(). So it does in fact do the "cleanup" contrary to what you say, this happens during dst entry garbage collection. If the dst has a dst->dev attached, the device has a reference and thus so does your module which created the device and thus your module cannot be unloaded. So to reiterate, what exactly is the problem? :-) - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html