Date: Fri, 7 Dec 2012 18:50:01 GMT From: Eitan Adler <lists@eitanadler.com> To: freebsd-bugs@FreeBSD.org Subject: Re: kern/174236: "kldunload ipdivert" corrupts kernel Message-ID: <201212071850.qB7Io17U040917@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/174236; it has been noted by GNATS. From: Eitan Adler <lists@eitanadler.com> To: Lutz Donnerhacke <lutz@donnerhacke.de> Cc: freebsd-bugs@freebsd.org, bug-followup <bug-followup@freebsd.org> Subject: Re: kern/174236: "kldunload ipdivert" corrupts kernel Date: Fri, 7 Dec 2012 13:42:29 -0500 On 7 December 2012 09:50, Lutz Donnerhacke <lutz@donnerhacke.de> wrote: > The following reply was made to PR kern/174236; it has been noted by GNATS. > > From: Lutz Donnerhacke <lutz@donnerhacke.de> > To: bug-followup@FreeBSD.org > Cc: > Subject: Re: kern/174236: "kldunload ipdivert" corrupts kernel > Date: Fri, 7 Dec 2012 15:45:00 +0100 > > Any module which returns an error on unload will cause the problem. > It's not specific to ipdivert.ko or ipfw.ko or anything else. > > Relevant code section is: > > static int > div_modevent(module_t mod, int type, void *unused) > { > int err = 0; > switch (type) { > [...] > case MOD_QUIESCE: > err = EPERM; > break; > [...] > } > return err; > } > > Please note: Forced unload of ipdivert.ko works fine. If you are able and willing to debug: <avg> I'd recommend him to enter debugger and run ps there <avg> and get backtraces of the hanging threads <dwhite-> it sounds like a leaked lock in the error case If not, just leaving this here for the record ;) -- Eitan Adler
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201212071850.qB7Io17U040917>