Sorry, I think that fix is incomplete (though it'll prolly stop the
crashes). I think there should be a destroy_dev() call for each created
device in the MOD_UNLOAD case also.
I'll make a patch and send-pr it once I get back to my home machine,
unless someone more experienced feels the need to do it.
--
Peter.


"Peter Edwards (local)" wrote:
> 
> Hi,
> After a (very) quick look at the source it looks like there's a missing
> cdevsw_remove() missing from the MOD_UNLOAD/MOD_SHUTDOWN event handling
> I haven't time to test it, but try this:
> 
> *** vn.c.old    Wed Apr 26 16:23:03 2000
> --- vn.c        Wed Apr 26 16:24:06 2000
> ***************
> *** 762,767 ****
> --- 762,768 ----
>         case MOD_UNLOAD:
>                 /* fall through */
>         case MOD_SHUTDOWN:
> +               cdevsw_remove(&vn_cdevsw);
>                 for (;;) {
>                         vn = SLIST_FIRST(&vn_list);
>                         if (!vn)
> 
> Maxim Sobolev wrote:
> >
> > Hi,
> >
> > I've already submitted this crash report earlier but it seems that developers
> > in -current list are too busy discussing whether Matt allowed to commit his SMP
> > work into 4.0 to pay attention to "ordinary" panic reports :-(. Following is
> > slightly simplified course of actions which is known to produce kernel panic on
> > both 4.0 and 5.0:
> >
> > root@notebook# kldstat
> > Id Refs Address    Size     Name
> >  1    2 0xc0100000 1c2f48   kernel
> >  2    1 0xc02c3000 30c8     splash_bmp.ko
> > root@notebook# mount /dev/vn0c /mnt
> > mount: Device not configured
> > root@notebook# kldload /modules/vn.ko
> > root@notebook# kldstat
> > Id Refs Address    Size     Name
> >  1    3 0xc0100000 1c2f48   kernel
> >  2    1 0xc02c3000 30c8     splash_bmp.ko
> >  3    1 0xc0823000 3000     vn.ko
> > root@notebook# kldunload -i 3
> > root@notebook# mount /dev/vn0c /mnt
> > [BINGO]
> > Fatal trap 12: page fault while in kernel mode
> > [...]
> >
> > -Maxim
> >
> > To Unsubscribe: send mail to [EMAIL PROTECTED]
> > with "unsubscribe freebsd-current" in the body of the message
> 
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-current" in the body of the message


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to