NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/52553: Panic on "ifconfig athn0 up"
The following reply was made to PR kern/52553; it has been noted by GNATS.
From: Nick Hudson <skrll%netbsd.org@localhost>
To: gnats-bugs%NetBSD.org@localhost, kern-bug-people%netbsd.org@localhost,
gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost
Cc:
Subject: Re: kern/52553: Panic on "ifconfig athn0 up"
Date: Wed, 20 Sep 2017 08:39:20 +0100
On 09/18/17 17:05, Andreas Gustafsson wrote:
> It looks like the trap actually occurred in athn_usb_init_locked(),
> but gdb is unable to correctly display the stack frame in case,
> which is rather unfortunate and a bug in itself. OTOH, ddb does
> pinpoint the trap to athn_usb_init_locked+0x110:
>
> --- trap (number 6) ---
> athn_usb_init_locked(c2685ae4,c2685000,c2685000,c2752d40,d95f6cf0,c0503465,c2685ae4,80906910,c279d188,0) at netbsd:athn_usb_init_locked+0x110
> athn_usb_init(c2685ae4,80906910,c279d188,0,c2685000,c2685000,c2685030,0,d95f6e00,c0cae54d) at netbsd:athn_usb_init+0x2f
>
> which would be near the end of this code block:
>
> (gdb) x/30i athn_usb_init_locked
> 0xc0503624 <athn_usb_init_locked>: push %ebp
> 0xc0503625 <athn_usb_init_locked+1>: mov %esp,%ebp
> 0xc0503627 <athn_usb_init_locked+3>: push %edi
> 0xc0503628 <athn_usb_init_locked+4>: push %esi
> 0xc0503629 <athn_usb_init_locked+5>: push %ebx
> 0xc050362a <athn_usb_init_locked+6>: sub $0xb4,%esp
> 0xc0503630 <athn_usb_init_locked+12>: mov 0x8(%ebp),%eax
> 0xc0503633 <athn_usb_init_locked+15>: mov %eax,-0xa4(%ebp)
> 0xc0503639 <athn_usb_init_locked+21>: mov 0xc16ad420,%eax
> 0xc050363e <athn_usb_init_locked+26>: mov %eax,-0x10(%ebp)
> 0xc0503641 <athn_usb_init_locked+29>: xor %eax,%eax
> 0xc0503643 <athn_usb_init_locked+31>: mov -0xa4(%ebp),%eax
> 0xc0503649 <athn_usb_init_locked+37>: mov (%eax),%eax
> 0xc050364b <athn_usb_init_locked+39>: mov %eax,-0x94(%ebp)
> 0xc0503651 <athn_usb_init_locked+45>: mov -0x94(%ebp),%eax
> 0xc0503657 <athn_usb_init_locked+51>: mov %eax,-0x90(%ebp)
> 0xc050365d <athn_usb_init_locked+57>: mov -0x94(%ebp),%eax
> 0xc0503663 <athn_usb_init_locked+63>: add $0x1ad4,%eax
> 0xc0503668 <athn_usb_init_locked+68>: mov %eax,-0x8c(%ebp)
> 0xc050366e <athn_usb_init_locked+74>: mov -0x94(%ebp),%eax
> 0xc0503674 <athn_usb_init_locked+80>: add $0x30,%eax
> 0xc0503677 <athn_usb_init_locked+83>: mov %eax,-0x88(%ebp)
> 0xc050367d <athn_usb_init_locked+89>: mov -0x90(%ebp),%eax
> 0xc0503683 <athn_usb_init_locked+95>: mov 0x1db0(%eax),%eax
> 0xc0503689 <athn_usb_init_locked+101>: test %eax,%eax
> 0xc050368b <athn_usb_init_locked+103>: je 0xc0503697 <athn_usb_init_locked+115>
> 0xc050368d <athn_usb_init_locked+105>: mov $0x6,%eax
> 0xc0503692 <athn_usb_init_locked+110>: jmp 0xc0503ded <athn_usb_init_locked+1993>
> 0xc0503697 <athn_usb_init_locked+115>: mov -0x90(%ebp),%eax
> 0xc050369d <athn_usb_init_locked+121>: add $0x1d88,%eax
+110 is not +0x110 unfortunately...
> Here is the full dmesg:
...
> athn0 at uhub0 port 2
> : Atheros AR9271
> athn0: rev 1 (1T1R), ROM rev 15, address 48:5d:60:57:7d:4f
> athn0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
> athn0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
> uvm_fault(0xc261b9f0, 0, 1) -> 0xe
> fatal page fault in supervisor mode
> trap type 6 code 0 eip 0xc0503734 cs 0x8 eflags 0x10246 cr2 0xc ilevel 0x6 esp 0xc2686d8c
The trap is caused by the instruction at 0xc0503734 (i.e.
athn_usb_init_locked+0x110 )
addr2line -e netbsd.gdb -f 0xc0503734
Will give us the offending line
Nick
Home |
Main Index |
Thread Index |
Old Index