From owner-freebsd-current@FreeBSD.ORG Thu Dec 11 00:45:52 2008 Return-Path: Delivered-To: current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4BD7B1065673 for ; Thu, 11 Dec 2008 00:45:52 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from ebb.errno.com (ebb.errno.com [69.12.149.25]) by mx1.freebsd.org (Postfix) with ESMTP id 077F48FC0C for ; Thu, 11 Dec 2008 00:45:51 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from trouble.errno.com (trouble.errno.com [10.0.0.248]) (authenticated bits=0) by ebb.errno.com (8.13.6/8.12.6) with ESMTP id mBB0jo7Z073547 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 10 Dec 2008 16:45:51 -0800 (PST) (envelope-from sam@freebsd.org) Message-ID: <494062BE.5050202@freebsd.org> Date: Wed, 10 Dec 2008 16:45:50 -0800 From: Sam Leffler Organization: FreeBSD Project User-Agent: Thunderbird 2.0.0.9 (X11/20071125) MIME-Version: 1.0 To: Jille Timmermans References: <49403F27.3020605@quis.cx> <4940440E.9050805@freebsd.org> <49405EC7.8080906@quis.cx> In-Reply-To: <49405EC7.8080906@quis.cx> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-DCC--Metrics: ebb.errno.com; whitelist Cc: FreeBSD Current Subject: Re: Panic when loading if_ath X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Dec 2008 00:45:52 -0000 Jille Timmermans wrote: > Sam Leffler schreef: > >> Jille Timmermans wrote: >> >>> Hello list, >>> >>> A panic with if_ath (Atheros 2413) >>> >>> root /sys/modules/ath_rate_amrr# make >>> root /sys/modules/ath_rate_amrr# make install >>> root ~# kldload if_ath >>> warning: KLD '/boot/kernel/if_ath.ko' is newer than the linker.hints file >>> ath0: mem 0xc9000000-0xc900ffff irq 18 at device 1.0 on >>> pci5 >>> ath0: [ITHREAD] >>> >>> Fatal trap 12: page fault while in kernel mode >>> cpuid = 0; apic id = 00 >>> fault virtual address = 0x0 >>> fault code = supervisor read, page not present >>> instruction pointer = 0x20:0x0 >>> stack pointer = 0x28:0xc43cc748 >>> frame pointer = 0x28:0xc43cc75c >>> 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 = 993 (kldload) >>> trap number = 12 >>> panic: page fault >>> cpuid = 0 >>> >>> [dump] >>> [reboot] >>> WARNING: /tmp was not properly dismounted >>> WARNING: /usr was not properly dismounted >>> WARNING: /var was not properly dismounted >>> >>> Fatal trap 12: page fault while in kernel mode >>> cpuid = 0; apic id = 00 >>> fault virtual address = 0x5bbfe499 >>> fault code = supervisor read, page not present >>> instruction pointer = 0x20:0xc0684c37 >>> stack pointer = 0x28:0xc4364a5c >>> frame pointer = 0x28:0xc4364c28 >>> 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 = 136 (ifconfig) >>> trap number = 12 >>> panic: page fault >>> cpuid = 0 >>> >>> [a few crashes later, when it comes to mind to get a backtrace] >>> root ~# kldload ath_rate >>> root ~# kldload if_ath >>> ath0: mem 0xc9000000-0xc900ffff irq 18 at device 1.0 on >>> pci5 >>> ath0: [ITHREAD] >>> [panic] >>> uart_z8530_class(c4ac5000, 0, 1, 1, c4390000, ...) at 0 >>> ar5212Attach(1a, c48b0000, 1, c4389000, c437c8ec, ...) at >>> ar5212Attach+0x211 >>> ath_hal_attach(1a, c48b0000, 1, c4389000, c437c8ec, ...) at >>> ath_hal_attach+0x56 >>> ath_attach(1a, c48b0000, 3, c437c940, ffffffff, ...) at ath_attach+0x9e >>> ath_pci_attach(c46bb200, c4823854, c09fcf80, c099dc60, 80000000, ...) at >>> ath_pci_attach+0x332 >>> device_attach([snip]) at device_attach+0x36f >>> device_probe_and_attach([snip) at ...+0x43 >>> pci_driver_added([snip]) at +0x104 >>> devclass_add_driver([snip]) at +0xe8 >>> driver_module_handler([snip]) at +0x79 >>> module_register_init() >>> linker_load_module() >>> kern_kldload() >>> >>> (Please don't tell me you want any of that snips.) >>> >>> Any extra information I can provide to you ? >>> I am willing to help debugging / crashing. >>> >>> >>> >> Try building the driver into the kernel. Also use sample and not amrr. >> > root ~# cd /sys/modules/ath_rate_sample > root /sys/modules/ath_rate_sample# make > root /sys/modules/ath_rate_sample# make install > root /sys/modules/ath_rate_sample# kldload if_ath > link_elf: symbol ath_hal_computetxtime undefined > KLD if_ath.ko: depends on ath_rate - not available > kldload: can't load if_ath: No such file or directory > root /sys/modules/ath_rate_sample# kldload ath_rate > link_elf: symbol ath_hal_computetxtime undefined > kldload: can't load ath_rate: No such file or directory > > I'll try compiling it in. > > I know module building is broken; I posted recently to just build things into the kernel. I've got a possible solution in p4 in the sam_vap branch if you want to try it. I removed the ath_rate_* modules and just smooshed the code into the ath module so we go from (ath+ath_hal+ath_rate) to just (ath). Right now I want to see if your problem is in the module mess, ath_rate_amrr, or something else. I tested 2413 w/ the driver built into the kernel so I'm guessing it's amrr which I may just nuke entirely (along with onoe). Sam