Re: OpenBSD 6.3 Kernel Panic?

2018-04-16 Thread Mike Larkin
On Mon, Apr 16, 2018 at 04:31:21PM +1000, Jonathan Gray wrote:
> On Sun, Apr 15, 2018 at 10:04:13PM -0700, Mike Larkin wrote:
> > On Sun, Apr 15, 2018 at 11:47:45PM -0500, Juan Morado wrote:
> > > System:  OpenBSD 6.3
> > > Details: OpenBSD 6.3 (GENERIC.MP) #107: Sat Mar 24 14:21:59 MDT 2018
> > > dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/
> > > GENERIC.MP
> > > 
> > > Architecture: OpenBSD.amd64
> > > Machine:  amd64
> > > 
> > > Description:  Touching the track pad of this ASUS X541SA laptop during 
> > > boot
> > > causes a kernel panic when running 6.3. Touching/using the trackpad after 
> > > X
> > > starts causes the system to become unresponsive (hang).
> > > 
> > > How to repeat: Reboot the system, swipe a finger on the track pad while
> > > booting. Or use the track pad after the machine has booted and X has
> > > started.
> > > 
> > > Fix: no known work around or fix
> > > 
> > > "show panic", trace, ps, and "show registers" output attached in
> > > ddb_trace.txt
> > > 
> > > dmesg.txt contains the dmesg.
> > 
> > > addr 1: xHCI root hub, Intel
> > >  addr 2: USB Flash Disk, General
> > 
> > 
> > jsg, kettenis? Thoughts?
> > 
> > -ml
> > 

Heh, thanks Jonathan. I meant jcs@ but the diff below might help :)

-ml

> > 
> > 
> > 
> > 
> > > Domain /dev/pci0:
> > >  0:0:0: Intel Braswell Host
> > >  0:2:0: Intel HD Graphics
> > >  0:11:0: Intel Braswell Power
> > >  0:19:0: Intel Braswell AHCI
> > >  0:20:0: Intel Braswell xHCI
> > >  0:26:0: Intel Braswell TXE
> > >  0:27:0: Intel Braswell HD Audio
> > >  0:28:0: Intel Braswell PCIE
> > >  0:28:2: Intel Braswell PCIE
> > >  0:28:3: Intel Braswell PCIE
> > >  0:31:0: Intel Braswell PCU LPC
> > >  0:31:3: Intel Braswell SMBus
> > >  2:0:0: Realtek 8101E
> > >  3:0:0: Realtek 8191SE
> > 
> > > System:  OpenBSD 6.3
> > > Details: OpenBSD 6.3 (GENERIC.MP) #107: Sat Mar 24 14:21:59 MDT 2018
> > > 
> > > dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP
> > > 
> > > Architecture: OpenBSD.amd64
> > > Machine:  amd64
> > > 
> > > Description:  Touching the track pad of this ASUS X541SA laptop during 
> > > boot causes a kernel panic. Touching/using the trackpad after X starts 
> > > causes the system to become unresponsive (hang).
> > > 
> > > How to repeat: Reboot the system, swip a finger on the track pad while 
> > > booting. Or use the track pad after the machine has booted and X has 
> > > started. 
> > > 
> > > Fix: no known work around or fix
> > > 
> > > 
> > > ddb{0}> show panic
> > > kernel page fault
> > > uvm_fault(0x81afca80, 0x806f8000, 0, 1) -> e
> > > ihidev_intr(800d9300) at ihidev_intr+0x18a
> > > end trace frame: 0x8000314a3ac8, count: 0
> > > 
> > > ddb{0}> trace
> > > ihidev_intr(800d9300) at ihidev_intr+0x18a
> > > intr_handler(0,80127280) at intr_handler+0x57
> > > Xintr_ioapic_level17_untramp() at Xintr_ioapic_level17_untramp+0x12c
> > > --- interrupt ---
> > > acpicpu_idle() at acpicpu_idle+0x1d9
> > > cpu_idle_cycle(0,0,81abbff0,817e4290,817e44b5,fff181c1f0)
> > >  at cpu_idle_cycle+0x10
> > > end trace frame: 0x0, count: -5
> 
> I'm curious if disestablishing the interrupt handler in attach in the
> early returns before sc_ibuf has been allocated changes anything.
> 
> Index: ihidev.c
> ===
> RCS file: /cvs/src/sys/dev/i2c/ihidev.c,v
> retrieving revision 1.16
> diff -u -p -r1.16 ihidev.c
> --- ihidev.c  12 Jan 2018 08:11:47 -  1.16
> +++ ihidev.c  16 Apr 2018 06:17:48 -
> @@ -139,8 +139,14 @@ ihidev_attach(struct device *parent, str
>   (char *)ia->ia_cookie);
>  
>   sc->sc_nrepid = ihidev_maxrepid(sc->sc_report, sc->sc_reportlen);
> - if (sc->sc_nrepid < 0)
> + if (sc->sc_nrepid < 0) {
> + printf("%s: nrepid %d\n", sc->sc_dev.dv_xname, sc->sc_nrepid);
> + if (sc->sc_ih) {
> + intr_disestablish(sc->sc_ih);
> + sc->sc_ih = NULL;
> + }
>   return;
> + }
>  
>   printf("%s: %d report id%s\n", sc->sc_dev.dv_xname, sc->sc_nrepid,
>   sc->sc_nrepid > 1 ? "s" : "");
> @@ -150,6 +156,10 @@ ihidev_attach(struct device *parent, str
>   M_DEVBUF, M_NOWAIT | M_ZERO);
>   if (sc->sc_subdevs == NULL) {
>   printf("%s: failed allocating memory\n", sc->sc_dev.dv_xname);
> + if (sc->sc_ih) {
> + intr_disestablish(sc->sc_ih);
> + sc->sc_ih = NULL;
> + }
>   return;
>   }
>  



Re: OpenBSD 6.3 Kernel Panic?

2018-04-16 Thread Jonathan Gray
On Sun, Apr 15, 2018 at 10:04:13PM -0700, Mike Larkin wrote:
> On Sun, Apr 15, 2018 at 11:47:45PM -0500, Juan Morado wrote:
> > System:  OpenBSD 6.3
> > Details: OpenBSD 6.3 (GENERIC.MP) #107: Sat Mar 24 14:21:59 MDT 2018
> > dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/
> > GENERIC.MP
> > 
> > Architecture: OpenBSD.amd64
> > Machine:  amd64
> > 
> > Description:  Touching the track pad of this ASUS X541SA laptop during boot
> > causes a kernel panic when running 6.3. Touching/using the trackpad after X
> > starts causes the system to become unresponsive (hang).
> > 
> > How to repeat: Reboot the system, swipe a finger on the track pad while
> > booting. Or use the track pad after the machine has booted and X has
> > started.
> > 
> > Fix: no known work around or fix
> > 
> > "show panic", trace, ps, and "show registers" output attached in
> > ddb_trace.txt
> > 
> > dmesg.txt contains the dmesg.
> 
> > addr 1: xHCI root hub, Intel
> >  addr 2: USB Flash Disk, General
> 
> 
> jsg, kettenis? Thoughts?
> 
> -ml
> 
> 
> 
> 
> 
> > Domain /dev/pci0:
> >  0:0:0: Intel Braswell Host
> >  0:2:0: Intel HD Graphics
> >  0:11:0: Intel Braswell Power
> >  0:19:0: Intel Braswell AHCI
> >  0:20:0: Intel Braswell xHCI
> >  0:26:0: Intel Braswell TXE
> >  0:27:0: Intel Braswell HD Audio
> >  0:28:0: Intel Braswell PCIE
> >  0:28:2: Intel Braswell PCIE
> >  0:28:3: Intel Braswell PCIE
> >  0:31:0: Intel Braswell PCU LPC
> >  0:31:3: Intel Braswell SMBus
> >  2:0:0: Realtek 8101E
> >  3:0:0: Realtek 8191SE
> 
> > System:  OpenBSD 6.3
> > Details: OpenBSD 6.3 (GENERIC.MP) #107: Sat Mar 24 14:21:59 MDT 2018
> > 
> > dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP
> > 
> > Architecture: OpenBSD.amd64
> > Machine:  amd64
> > 
> > Description:  Touching the track pad of this ASUS X541SA laptop during boot 
> > causes a kernel panic. Touching/using the trackpad after X starts causes 
> > the system to become unresponsive (hang).
> > 
> > How to repeat: Reboot the system, swip a finger on the track pad while 
> > booting. Or use the track pad after the machine has booted and X has 
> > started. 
> > 
> > Fix: no known work around or fix
> > 
> > 
> > ddb{0}> show panic
> > kernel page fault
> > uvm_fault(0x81afca80, 0x806f8000, 0, 1) -> e
> > ihidev_intr(800d9300) at ihidev_intr+0x18a
> > end trace frame: 0x8000314a3ac8, count: 0
> > 
> > ddb{0}> trace
> > ihidev_intr(800d9300) at ihidev_intr+0x18a
> > intr_handler(0,80127280) at intr_handler+0x57
> > Xintr_ioapic_level17_untramp() at Xintr_ioapic_level17_untramp+0x12c
> > --- interrupt ---
> > acpicpu_idle() at acpicpu_idle+0x1d9
> > cpu_idle_cycle(0,0,81abbff0,817e4290,817e44b5,fff181c1f0)
> >  at cpu_idle_cycle+0x10
> > end trace frame: 0x0, count: -5

I'm curious if disestablishing the interrupt handler in attach in the
early returns before sc_ibuf has been allocated changes anything.

Index: ihidev.c
===
RCS file: /cvs/src/sys/dev/i2c/ihidev.c,v
retrieving revision 1.16
diff -u -p -r1.16 ihidev.c
--- ihidev.c12 Jan 2018 08:11:47 -  1.16
+++ ihidev.c16 Apr 2018 06:17:48 -
@@ -139,8 +139,14 @@ ihidev_attach(struct device *parent, str
(char *)ia->ia_cookie);
 
sc->sc_nrepid = ihidev_maxrepid(sc->sc_report, sc->sc_reportlen);
-   if (sc->sc_nrepid < 0)
+   if (sc->sc_nrepid < 0) {
+   printf("%s: nrepid %d\n", sc->sc_dev.dv_xname, sc->sc_nrepid);
+   if (sc->sc_ih) {
+   intr_disestablish(sc->sc_ih);
+   sc->sc_ih = NULL;
+   }
return;
+   }
 
printf("%s: %d report id%s\n", sc->sc_dev.dv_xname, sc->sc_nrepid,
sc->sc_nrepid > 1 ? "s" : "");
@@ -150,6 +156,10 @@ ihidev_attach(struct device *parent, str
M_DEVBUF, M_NOWAIT | M_ZERO);
if (sc->sc_subdevs == NULL) {
printf("%s: failed allocating memory\n", sc->sc_dev.dv_xname);
+   if (sc->sc_ih) {
+   intr_disestablish(sc->sc_ih);
+   sc->sc_ih = NULL;
+   }
return;
}
 



Re: OpenBSD 6.3 Kernel Panic?

2018-04-15 Thread Mike Larkin
On Sun, Apr 15, 2018 at 11:47:45PM -0500, Juan Morado wrote:
> System:  OpenBSD 6.3
> Details: OpenBSD 6.3 (GENERIC.MP) #107: Sat Mar 24 14:21:59 MDT 2018
> dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/
> GENERIC.MP
> 
> Architecture: OpenBSD.amd64
> Machine:  amd64
> 
> Description:  Touching the track pad of this ASUS X541SA laptop during boot
> causes a kernel panic when running 6.3. Touching/using the trackpad after X
> starts causes the system to become unresponsive (hang).
> 
> How to repeat: Reboot the system, swipe a finger on the track pad while
> booting. Or use the track pad after the machine has booted and X has
> started.
> 
> Fix: no known work around or fix
> 
> "show panic", trace, ps, and "show registers" output attached in
> ddb_trace.txt
> 
> dmesg.txt contains the dmesg.

> addr 1: xHCI root hub, Intel
>  addr 2: USB Flash Disk, General


jsg, kettenis? Thoughts?

-ml





> Domain /dev/pci0:
>  0:0:0: Intel Braswell Host
>  0:2:0: Intel HD Graphics
>  0:11:0: Intel Braswell Power
>  0:19:0: Intel Braswell AHCI
>  0:20:0: Intel Braswell xHCI
>  0:26:0: Intel Braswell TXE
>  0:27:0: Intel Braswell HD Audio
>  0:28:0: Intel Braswell PCIE
>  0:28:2: Intel Braswell PCIE
>  0:28:3: Intel Braswell PCIE
>  0:31:0: Intel Braswell PCU LPC
>  0:31:3: Intel Braswell SMBus
>  2:0:0: Realtek 8101E
>  3:0:0: Realtek 8191SE

> System:  OpenBSD 6.3
> Details: OpenBSD 6.3 (GENERIC.MP) #107: Sat Mar 24 14:21:59 MDT 2018
> 
> dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP
> 
> Architecture: OpenBSD.amd64
> Machine:  amd64
> 
> Description:  Touching the track pad of this ASUS X541SA laptop during boot 
> causes a kernel panic. Touching/using the trackpad after X starts causes the 
> system to become unresponsive (hang).
> 
> How to repeat: Reboot the system, swip a finger on the track pad while 
> booting. Or use the track pad after the machine has booted and X has started. 
> 
> Fix: no known work around or fix
> 
> 
> ddb{0}> show panic
> kernel page fault
> uvm_fault(0x81afca80, 0x806f8000, 0, 1) -> e
> ihidev_intr(800d9300) at ihidev_intr+0x18a
> end trace frame: 0x8000314a3ac8, count: 0
> 
> ddb{0}> trace
> ihidev_intr(800d9300) at ihidev_intr+0x18a
> intr_handler(0,80127280) at intr_handler+0x57
> Xintr_ioapic_level17_untramp() at Xintr_ioapic_level17_untramp+0x12c
> --- interrupt ---
> acpicpu_idle() at acpicpu_idle+0x1d9
> cpu_idle_cycle(0,0,81abbff0,817e4290,817e44b5,fff181c1f0)
>  at cpu_idle_cycle+0x10
> end trace frame: 0x0, count: -5
> 
> ddb{0}> ps
>PID TID   PPIDUID  S   FLAGS  WAIT   COMMAND
>  528358347  1  0  30x100083  ttyin  sh
>  76019  175490  0  0  3 0x14200  pgzero zerothread
>  30483  496508  0  0  3 0x14200  aiodoned   aiodoned
>948  362717  0  0  3 0x14200  syncer update
>   1949  453616  0  0  3 0x14200  cleanercleaner
>  26029  294724  0  0  3 0x14200  reaper reaper
>  18743  298789  0  0  3 0x14200  pgdaemon   pagedaemon
>  28581   79910  0  0  3 0x14200  bored  crynlk
>  97795  229607  0  0  3 0x14200  bored  crypto
>  16773  446113  0  0  3 0x14200  usbtsk usbtask
>  61990  288021  0  0  3 0x14200  usbatskusbatsk
>  94885  395225  0  0  3 0x14200  bored  i915-hangcheck
>  48105  320945  0  0  3 0x14200  bored  i915-dp
>   7881  153295  0  0  3 0x14200  bored  i915
>   9456  456631  0  0  3  0x40014200  acpi0  acpi0
>  91266  493503  0  0  7  0x40014200 idle3
>   3868  334465  0  0  7  0x40014200 idle2
>  764245227  0  0  7  0x40014200 idle1
>  89477  301153  0  0  3 0x14200  bored  sensors
>  19949  102167  0  0  3 0x14200  bored  softnet
>  44473  451175  0  0  3 0x14200  bored  systqmp
>  72870   81586  0  0  3 0x14200  bored  systq
>  93434  377883  0  0  3  0x40014200  bored  softclock
> *65461   77822  0  0  7  0x40014200 idle0
>  1  474704  0  0  30x82  wait   init
>  0   0 -1  0  3 0x10200  scheduler  swapper
> 
> ddb{0}> show registers
> rdi 0x6d218cacpi_pdirpa+0x6bdff4
> rsi   0x80025e73
> rbp   0x8000314a3a88
> rbx   0xc1abbff0cpu_info_full_primary+0x1ff0
> rdx   0xfffe
> rcx0
> rax 0x6d218dacpi_pdirpa+0x6bdff5
> r8 0
> r90xfffe
> r10 

OpenBSD 6.3 Kernel Panic?

2018-04-15 Thread Juan Morado
System:  OpenBSD 6.3
Details: OpenBSD 6.3 (GENERIC.MP) #107: Sat Mar 24 14:21:59 MDT 2018
dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/
GENERIC.MP

Architecture: OpenBSD.amd64
Machine:  amd64

Description:  Touching the track pad of this ASUS X541SA laptop during boot
causes a kernel panic when running 6.3. Touching/using the trackpad after X
starts causes the system to become unresponsive (hang).

How to repeat: Reboot the system, swipe a finger on the track pad while
booting. Or use the track pad after the machine has booted and X has
started.

Fix: no known work around or fix

"show panic", trace, ps, and "show registers" output attached in
ddb_trace.txt

dmesg.txt contains the dmesg.
addr 1: xHCI root hub, Intel
 addr 2: USB Flash Disk, General


acpidump.tar.gz
Description: application/gzip
Domain /dev/pci0:
 0:0:0: Intel Braswell Host
 0:2:0: Intel HD Graphics
 0:11:0: Intel Braswell Power
 0:19:0: Intel Braswell AHCI
 0:20:0: Intel Braswell xHCI
 0:26:0: Intel Braswell TXE
 0:27:0: Intel Braswell HD Audio
 0:28:0: Intel Braswell PCIE
 0:28:2: Intel Braswell PCIE
 0:28:3: Intel Braswell PCIE
 0:31:0: Intel Braswell PCU LPC
 0:31:3: Intel Braswell SMBus
 2:0:0: Realtek 8101E
 3:0:0: Realtek 8191SE
System:  OpenBSD 6.3
Details: OpenBSD 6.3 (GENERIC.MP) #107: Sat Mar 24 14:21:59 MDT 2018
dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP

Architecture: OpenBSD.amd64
Machine:  amd64

Description:  Touching the track pad of this ASUS X541SA laptop during boot 
causes a kernel panic. Touching/using the trackpad after X starts causes the 
system to become unresponsive (hang).

How to repeat: Reboot the system, swip a finger on the track pad while booting. 
Or use the track pad after the machine has booted and X has started. 

Fix: no known work around or fix


ddb{0}> show panic
kernel page fault
uvm_fault(0x81afca80, 0x806f8000, 0, 1) -> e
ihidev_intr(800d9300) at ihidev_intr+0x18a
end trace frame: 0x8000314a3ac8, count: 0

ddb{0}> trace
ihidev_intr(800d9300) at ihidev_intr+0x18a
intr_handler(0,80127280) at intr_handler+0x57
Xintr_ioapic_level17_untramp() at Xintr_ioapic_level17_untramp+0x12c
--- interrupt ---
acpicpu_idle() at acpicpu_idle+0x1d9
cpu_idle_cycle(0,0,81abbff0,817e4290,817e44b5,fff181c1f0)
 at cpu_idle_cycle+0x10
end trace frame: 0x0, count: -5

ddb{0}> ps
   PID TID   PPIDUID  S   FLAGS  WAIT   COMMAND
 528358347  1  0  30x100083  ttyin  sh
 76019  175490  0  0  3 0x14200  pgzero zerothread
 30483  496508  0  0  3 0x14200  aiodoned   aiodoned
   948  362717  0  0  3 0x14200  syncer update
  1949  453616  0  0  3 0x14200  cleanercleaner
 26029  294724  0  0  3 0x14200  reaper reaper
 18743  298789  0  0  3 0x14200  pgdaemon   pagedaemon
 28581   79910  0  0  3 0x14200  bored  crynlk
 97795  229607  0  0  3 0x14200  bored  crypto
 16773  446113  0  0  3 0x14200  usbtsk usbtask
 61990  288021  0  0  3 0x14200  usbatskusbatsk
 94885  395225  0  0  3 0x14200  bored  i915-hangcheck
 48105  320945  0  0  3 0x14200  bored  i915-dp
  7881  153295  0  0  3 0x14200  bored  i915
  9456  456631  0  0  3  0x40014200  acpi0  acpi0
 91266  493503  0  0  7  0x40014200 idle3
  3868  334465  0  0  7  0x40014200 idle2
 764245227  0  0  7  0x40014200 idle1
 89477  301153  0  0  3 0x14200  bored  sensors
 19949  102167  0  0  3 0x14200  bored  softnet
 44473  451175  0  0  3 0x14200  bored  systqmp
 72870   81586  0  0  3 0x14200  bored  systq
 93434  377883  0  0  3  0x40014200  bored  softclock
*65461   77822  0  0  7  0x40014200 idle0
 1  474704  0  0  30x82  wait   init
 0   0 -1  0  3 0x10200  scheduler  swapper

ddb{0}> show registers
rdi 0x6d218cacpi_pdirpa+0x6bdff4
rsi   0x80025e73
rbp   0x8000314a3a88
rbx   0xc1abbff0cpu_info_full_primary+0x1ff0
rdx   0xfffe
rcx0
rax 0x6d218dacpi_pdirpa+0x6bdff5
r8 0
r90xfffe
r10   0x8000314a9948
r11  0x8
r120
r130
r14   0x800d9300
r15  0x1
rip   0x8146ad3aihidev_intr+0x18a
cs