Re: 8.0RC1 - Kernel panic when loading a ndisgen-generated module (rtl8180_sys)

From: Paul B. Mahol <onemda_at_gmail.com>
Date: Tue, 22 Sep 2009 12:43:49 +0200
On 9/22/09, Raphael Kubo da Costa <kubito_at_gmail.com> wrote:
> Hi there,
>
> I'm not sure this is the proper place to send this, so please tell me
> if I should send this mail to another mailing list or file a PR about
> this.
>
> I used freebsd-update to upgrade from 7.2-RELEASE-p3 to 8.0-RC1.
> Everything went fine, but I had to regenerate my wireless card
> (Realtek RTL8180L) module with ndisgen. However, when I load the
> generated module with kldload I get a kernel panic and the system
> reboots. I also have a 67mb vmcore; I can try to make it available if
> needed.

You are saying that it worked without problems on 7.2?

There were very little changes with sys/compat/ndis between that two versions
so if problem really exist it must be somewhere in if_ndis module.
Are you sure that complete world and kernel are in sync? And you really did
loaded regenerated module?

>
> I'll paste some sections from core.txt; I can attach the whole file if you
> want.
>
> -----------
>
> Unread portion of the kernel message buffer:
>
>
> Fatal trap 12: page fault while in kernel mode
> cpuid = 0; apic id = 00
> fault virtual address	= 0xc4ea831a
> fault code		= supervisor read, page not present
> instruction pointer	= 0x20:0xc4df96b3
> stack pointer	        = 0x28:0xe3744a44
> frame pointer	        = 0x28:0xe3744aac
> code segment		= base 0x0, limit 0xfffff, type 0x1b
> 			= DPL 0, pres 1, def32 1, gran 1
> processor eflags	= interrupt enabled, resume, IOPL = 0
> current process		= 1110 (ifconfig)
> trap number		= 12
> panic: page fault
> cpuid = 0
> Uptime: 36s
> Physical memory: 883 MB
> Dumping 67 MB: 52 36 20 4
>
> Reading symbols from /boot/kernel/snd_hda.ko...Reading symbols from
> /boot/kernel/snd_hda.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/snd_hda.ko
> Reading symbols from /boot/kernel/sound.ko...Reading symbols from
> /boot/kernel/sound.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/sound.ko
> Reading symbols from /boot/kernel/linprocfs.ko...Reading symbols from
> /boot/kernel/linprocfs.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/linprocfs.ko
> Reading symbols from /boot/kernel/linux.ko...Reading symbols from
> /boot/kernel/linux.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/linux.ko
> Reading symbols from /boot/kernel/reiserfs.ko...Reading symbols from
> /boot/kernel/reiserfs.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/reiserfs.ko
> Reading symbols from /boot/kernel/logo_saver.ko...Reading symbols from
> /boot/kernel/logo_saver.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/logo_saver.ko
> Reading symbols from /boot/modules/rtl8180_sys.ko...done.
> Loaded symbols for /boot/modules/rtl8180_sys.ko
> Reading symbols from /boot/kernel/if_ndis.ko...Reading symbols from
> /boot/kernel/if_ndis.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/if_ndis.ko
> Reading symbols from /boot/kernel/ndis.ko...Reading symbols from
> /boot/kernel/ndis.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/ndis.ko
> #0  doadump () at pcpu.h:246
> 246	pcpu.h: No such file or directory.
> 	in pcpu.h
> (kgdb) #0  doadump () at pcpu.h:246
> #1  0xc08823c7 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:416
> #2  0xc08826b9 in panic (fmt=Variable "fmt" is not available.
> ) at /usr/src/sys/kern/kern_shutdown.c:579
> #3  0xc0bb346c in trap_fatal (frame=0xe3744a04, eva=3303703322)
>     at /usr/src/sys/i386/i386/trap.c:933
> #4  0xc0bb36f0 in trap_pfault (frame=0xe3744a04, usermode=0, eva=3303703322)
>     at /usr/src/sys/i386/i386/trap.c:846
> #5  0xc0bb40d5 in trap (frame=0xe3744a04) at
> /usr/src/sys/i386/i386/trap.c:528
> #6  0xc0b96a4b in calltrap () at /usr/src/sys/i386/i386/exception.s:165
> #7  0xc4df96b3 in ndis_rtl8180_sys_drv_data_start ()
>    from /boot/modules/rtl8180_sys.ko
> Previous frame inner to this frame (corrupt stack?)
> (kgdb)
>
>
> ------ Last lines from dmesg --------
> Tue Sep 22 01:02:49 BRT 2009
> Sep 22 01:02:55 borges login: ROOT LOGIN (root) ON ttyv0
> warning: KLD '/boot/modules/rtl8180_sys.ko' is newer than the linker.hints
> file
> ndis0: <Realtek RTL8180 Wireless LAN (Mini-)PCI NIC> port
> 0xe800-0xe8ff mem 0xdffffc00-0xdffffcff irq 16 at device 6.0 on pci1
> ndis0: [ITHREAD]
> ndis0: NDIS API version: 5.1
> ifa_add_loopback_route: insertion failed

Try to enable debug.ndis sysctl.
>
>
> Fatal trap 12: page fault while in kernel mode
> cpuid = 0; apic id = 00
> fault virtual address	= 0xc4ea831a
> fault code		= supervisor read, page not present
> instruction pointer	= 0x20:0xc4df96b3
> stack pointer	        = 0x28:0xe3744a44
> frame pointer	        = 0x28:0xe3744aac
> code segment		= base 0x0, limit 0xfffff, type 0x1b
> 			= DPL 0, pres 1, def32 1, gran 1
> processor eflags	= interrupt enabled, resume, IOPL = 0
> current process		= 1110 (ifconfig)

What commands are to reproduce this?

> trap number		= 12
> panic: page fault
> cpuid = 0
> Uptime: 36s
> Physical memory: 883 MB
> Dumping 67 MB: 52 36 20 4
>
> ------------------------------------------------------------------------
> kernel config
>
> config: File /boot/kernel/kernel doesn't contain configuration file.
> Either unsupported, or not compiled with INCLUDE_CONFIG_FILE
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"
>


-- 
Paul
Received on Tue Sep 22 2009 - 08:43:50 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:55 UTC