Re: Machine check on suspend
On Sun, 11 May 2014 17:05:02 -0700 Adrian Chadd wrote: > It's getting an interrupt what, after the slot is powered down? That's what it looks like. > > Why's cbb_func_intr passing up an interrupt? :p Your guess is as good as mine. I don't disable interrupts yet, but I do lock Giant (means little these days, of course). cbb_func_intr() is supposed to handle the device going away between interrupt firing and the function being called. - Justin > > > -a > > > On 11 May 2014 16:57, Justin Hibbits wrote: > > Obviously this is a different case than most. I'm working on > > suspend/resume for PowerPC (PowerBooks, to be precise), and part of > > that involves testing the cardbus. > > > > When suspending, it suspends children first (obviously), followed by > > parents, etc. In this case, I have a ar5416 card in a cardbus slot. > > The ath0 suspends, followed by cbb0, then a machine check: > > > > Suspending ath0, child of cardbus0 > > Suspending cardbus0, child of cbb0 > > pci1:1:0:0: Resource still owned, oops. (type=3, rid=16, > > addr=8800) pci1:1:0:0: Resource still owned, oops. (type=1, > > rid=0, addr=3a) > > > > fatal kernel trap: > > > >exception = 0x200 (machine check) > >srr0= 0x5d5530 > >srr1= 0x149030 > >lr = 0xd20896f8 > >curthread = 0x4c6e620 > > pid = 12, comm = irq58: cbb0 ath0 > > > > [ thread pid 12 tid 100108 ] > > Stopped at 0x5d5530: sync > > db> bt > > Tracing pid 12 tid 100108 td 0x4c6e620 > > 0xe4770a20: at +0x226530(326cbc) > > 0xe4770a50: at ar5416IsInterruptPending+0x3c(d20ca368) > > 0xe4770a70: at ath_intr+0xf0(d2064ef4) > > 0xe4770ab0: at cbb_func_intr+0x40(d1fd71b4) > > 0xe4770ad0: at +0x2074d4(307c60) > > 0xe4770b00: at +0x209034(3097c0) > > 0xe4770b50: at +0x203e78(304604) > > 0xe4770b80: at +0x4e4b70(5e52fc) > > > > I'm using the projects/pmac_pmu branch, for anyone who may want to > > test (synced with head a couple weeks ago). > > > > Does anything need to be done before actually suspending the devices > > (kill wpa_supplicant, or anything else)? > > > > - Justin > > ___ > > freebsd-wireless@freebsd.org mailing list > > http://lists.freebsd.org/mailman/listinfo/freebsd-wireless > > To unsubscribe, send any mail to > > "freebsd-wireless-unsubscr...@freebsd.org" ___ freebsd-wireless@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-wireless To unsubscribe, send any mail to "freebsd-wireless-unsubscr...@freebsd.org"
Re: Machine check on suspend
It's getting an interrupt what, after the slot is powered down? Why's cbb_func_intr passing up an interrupt? :p -a On 11 May 2014 16:57, Justin Hibbits wrote: > Obviously this is a different case than most. I'm working on > suspend/resume for PowerPC (PowerBooks, to be precise), and part of > that involves testing the cardbus. > > When suspending, it suspends children first (obviously), followed by > parents, etc. In this case, I have a ar5416 card in a cardbus slot. > The ath0 suspends, followed by cbb0, then a machine check: > > Suspending ath0, child of cardbus0 > Suspending cardbus0, child of cbb0 > pci1:1:0:0: Resource still owned, oops. (type=3, rid=16, addr=8800) > pci1:1:0:0: Resource still owned, oops. (type=1, rid=0, addr=3a) > > fatal kernel trap: > >exception = 0x200 (machine check) >srr0= 0x5d5530 >srr1= 0x149030 >lr = 0xd20896f8 >curthread = 0x4c6e620 > pid = 12, comm = irq58: cbb0 ath0 > > [ thread pid 12 tid 100108 ] > Stopped at 0x5d5530: sync > db> bt > Tracing pid 12 tid 100108 td 0x4c6e620 > 0xe4770a20: at +0x226530(326cbc) > 0xe4770a50: at ar5416IsInterruptPending+0x3c(d20ca368) > 0xe4770a70: at ath_intr+0xf0(d2064ef4) > 0xe4770ab0: at cbb_func_intr+0x40(d1fd71b4) > 0xe4770ad0: at +0x2074d4(307c60) > 0xe4770b00: at +0x209034(3097c0) > 0xe4770b50: at +0x203e78(304604) > 0xe4770b80: at +0x4e4b70(5e52fc) > > I'm using the projects/pmac_pmu branch, for anyone who may want to test > (synced with head a couple weeks ago). > > Does anything need to be done before actually suspending the devices > (kill wpa_supplicant, or anything else)? > > - Justin > ___ > freebsd-wireless@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-wireless > To unsubscribe, send any mail to "freebsd-wireless-unsubscr...@freebsd.org" ___ freebsd-wireless@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-wireless To unsubscribe, send any mail to "freebsd-wireless-unsubscr...@freebsd.org"
Machine check on suspend
Obviously this is a different case than most. I'm working on suspend/resume for PowerPC (PowerBooks, to be precise), and part of that involves testing the cardbus. When suspending, it suspends children first (obviously), followed by parents, etc. In this case, I have a ar5416 card in a cardbus slot. The ath0 suspends, followed by cbb0, then a machine check: Suspending ath0, child of cardbus0 Suspending cardbus0, child of cbb0 pci1:1:0:0: Resource still owned, oops. (type=3, rid=16, addr=8800) pci1:1:0:0: Resource still owned, oops. (type=1, rid=0, addr=3a) fatal kernel trap: exception = 0x200 (machine check) srr0= 0x5d5530 srr1= 0x149030 lr = 0xd20896f8 curthread = 0x4c6e620 pid = 12, comm = irq58: cbb0 ath0 [ thread pid 12 tid 100108 ] Stopped at 0x5d5530: sync db> bt Tracing pid 12 tid 100108 td 0x4c6e620 0xe4770a20: at +0x226530(326cbc) 0xe4770a50: at ar5416IsInterruptPending+0x3c(d20ca368) 0xe4770a70: at ath_intr+0xf0(d2064ef4) 0xe4770ab0: at cbb_func_intr+0x40(d1fd71b4) 0xe4770ad0: at +0x2074d4(307c60) 0xe4770b00: at +0x209034(3097c0) 0xe4770b50: at +0x203e78(304604) 0xe4770b80: at +0x4e4b70(5e52fc) I'm using the projects/pmac_pmu branch, for anyone who may want to test (synced with head a couple weeks ago). Does anything need to be done before actually suspending the devices (kill wpa_supplicant, or anything else)? - Justin ___ freebsd-wireless@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-wireless To unsubscribe, send any mail to "freebsd-wireless-unsubscr...@freebsd.org"