kld regression

John Baldwin jhb at freebsd.org
Thu Jan 31 09:56:01 PST 2008


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


More information about the freebsd-stable mailing list