Date: Thu, 31 Jan 2008 11:52:39 -0500 From: John Baldwin <jhb@freebsd.org> To: Andriy Gapon <avg@icyb.net.ua> Cc: freebsd-stable@freebsd.org Subject: Re: kld regression Message-ID: <200801311152.40064.jhb@freebsd.org> In-Reply-To: <47A1E3D5.6040301@icyb.net.ua> References: <47A0B642.9060000@icyb.net.ua> <47A1C198.6090802@icyb.net.ua> <47A1E3D5.6040301@icyb.net.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday 31 January 2008 10:05:57 am Andriy Gapon wrote: > on 31/01/2008 14:39 Andriy Gapon said the following: > > on 31/01/2008 13:07 John Baldwin said the following: > >> On Wednesday 30 January 2008 12:39:14 pm Andriy Gapon wrote: > >>> The problem is as follows: > >>> 1. put udf_load="YES" in loader.conf > >>> 2. you can mount and unmount udf filesystems > >>> 3. you can kldunload udf if no udf filesystems are mounted > >>> 4. now mount udf fs while udf.ko is unloaded > >>> 5. udf is auto loaded and fs is mounted > >>> 6. unmount fs > >>> 7. try to kldunload udf > >>> kldunload: can't unload file: Device busy > >>> kernel message: kldunload: attempt to unload file that was loaded by the > >>> kernel > >>> > >>> Yeah, it was loaded by kernel indeed, but WTF - what is the difference > >>> from manual/loader.conf loading and why I can not manage my modules as I > >>> wish? > >> Hmm, the relevant code (vfs_init.c) hasn't changed in 6.x since 6.0. There > >> were some changes in 7.0, but this should work in both branches. What is the > >> previous release that this worked on? > >> > > > > Maybe I was wrong when I called this regression, but this was very > > surprising behavior for me. And in 5.X I did a lot of udf > > debugging/experimenting and never encountered such a problem. Maybe I > > always did kldload before mount, I can't tell now. > > Anyway, this seems like an annoyance at the very least, pinning a kernel > > module without any important reasons. > > > > Hmm, I found one difference with previous setups: in step 1 I also have > udf_iconv_load="YES" and udf_iconv.ko module is what seems to prevent > udf.ko from unloading in step 7. I can actually unload udf_iconv and > then I am able again to unload udf. > > Still don't understand what is a big difference here. > > And if I had UDF_ICONV built into kernel then I wouldn't have this > work-around. Ah, I don't think we can safely unload modules loaded from the loader IIRC. -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200801311152.40064.jhb>