>Synopsis:      ppp panic: locking against myself
>Category:      kernel
>Environment:
        System      : OpenBSD 6.9
        Details     : OpenBSD 6.9 (GENERIC) #2: Tue Aug 10 08:12:32 MDT 2021
                         
[email protected]:/usr/src/sys/arch/i386/compile/GENERIC

        Architecture: OpenBSD.i386
        Machine     : i386
>Description:
        Running pppd over a serial modem. (What year is it?)

        Ran pkg_add vim--no_x11, came back a half hour later and it had
        panicked while installing the last dependency.

com0: 2 silo overflows, 0 ibuf overflows
com0: 2 silo overflows, 0 ibuf overflows
com0: 2 silo overflows, 0 ibuf overflows
com0: 1 silo overflow, 0 ibuf overflows
com0: 4 silo overflows, 0 ibuf overflows
panic: mtx 0xd14b3054: locking against myself
Stopped at      db_enter+0x4:   popl    %ebp
panic: mtx 0xd14b3054: locking against myself
Stopped at      db_enter+0x4:   popl    %ebp
    TID    PID    UID     PRFLAGS     PFLAGS  CPU  COMMAND                      
 
* 67354   3343      0     0x14000      0x200    0  softnet                      
  
db_enter() at db_enter+0x4
panic(d0bc8c2b) at panic+0xd3
mtx_enter(d14b3054) at mtx_enter+0x4e
task_add(d14b3040,d0df4d7c) at task_add+0x1d
ppp_restart(d1511800) at ppp_restart+0x3a
pppstart(d17d2200) at pppstart+0x55
comintr(d14da000) at comintr+0x4a5
intr_handler(f17d69d8,d14b3740) at intr_handler+0x18
Xintr_legacy4_untramp() at Xintr_legacy4_untramp+0xfb
taskq_next_work(d14b3040,f17d6a40) at taskq_next_work+0x8d
taskq_thread(d14b3040) at taskq_thread+0x43
https://www.openbsd.org/ddb.html describes the minimum info required in bug
reports.  Insufficient info makes it difficult to find and fix bugs.

ddb>    PID     TID   PPID    UID  S       FLAGS  WAIT          COMMAND        
 64263  445515  71934     83  2    0x100012                ntpd           
 31904  177725  71934     83  3    0x100092  netcon2       ntpd           
  7660  481516  12028      0  3    0x100083  piperd        signify        
 27354  346941  12028     57  3    0x100083  netio         ftp            
 12028  341614  49563      0  3        0x93  piperd        perl           
 68506  467633    458      0  3        0xb3  select        pppd           
 95058  333899  40435   1000  3    0x100083  kqread        tail           
  2299  494146  39383     73  3    0x100090  kqread        syslogd        
 39383  366506      1      0  3    0x100082  netio         syslogd        
   458   76830      1   1000  3    0x10008b  sigsusp       ksh            
 59188  239633      1      0  3    0x100083  ttyin         getty          
 30290   45052      1      0  3    0x100083  ttyin         getty          
 49563  122264      1   1000  3    0x10008b  sigsusp       ksh            
 40435  432423      1   1000  3    0x10008b  sigsusp       ksh            
 11232   33999      1      0  3    0x100098  poll          cron           
 73616  107297      1     99  3    0x100090  poll          sndiod         
 45021  319802      1    110  3    0x100090  poll          sndiod         
 10917  170926      1      0  3        0x80  select        sshd           
 71934  409719      1      0  3    0x100080  poll          ntpd           
 42019  305027  79208     83  3    0x100092  poll          ntpd           
 79208  303571      1     83  3    0x100092  poll          ntpd           
 27991  400770  41546     74  3    0x100092  bpf           pflogd         
 41546   18301      1      0  3        0x80  netio         pflogd         
 80780  162847   4439    115  3    0x100092  kqread        slaacd         
 19836  126151   4439    115  3    0x100092  kqread        slaacd         
  4439  436623      1      0  3    0x100080  kqread        slaacd         
 18716  366663      0      0  3     0x14200  bored         smr            
  5633   47830      0      0  2     0x14200                zerothread     
 38482  217565      0      0  3     0x14200  aiodoned      aiodoned       
 70400  380061      0      0  2     0x14600                update         
 33987  346671      0      0  3     0x14200  cleaner       cleaner        
 57082  260775      0      0  3     0x14200  reaper        reaper         
 13633  306482      0      0  2     0x14200                pagedaemon     
 60750    3804      0      0  3     0x14200  bored         crynlk         
 89333   14215      0      0  3     0x14200  bored         crypto         
  5370  433569      0      0  3     0x14200  pcicev        pcic0,0,1      
 94217  111414      0      0  3     0x14200  pcicev        pcic0,0,0      
  9095   59398      0      0  3     0x14200  apmev         apm0           
* 3343   67354      0      0  7     0x14200                softnet        
 47611  505709      0      0  2     0x14200                systqmp        
 71690  260383      0      0  3     0x14200  bored         systq          
 97341  107188      0      0  3  0x40014200  bored         softclock      
 22807  466461      0      0  3  0x40014200                idle0          
 27673  381661      0      0  3     0x14200  kmalloc       kmthread       
     1  458777      0      0  3        0x82  wait          init           
     0       0     -1      0  3     0x10200  scheduler     swapper        


>How-To-Repeat:
        Time travel back to 1998, connect a serial modem, run pppd.
>Fix:


dmesg:
OpenBSD 6.9 (GENERIC) #2: Tue Aug 10 08:12:32 MDT 2021
    [email protected]:/usr/src/sys/arch/i386/compile/GENERIC
RTC BIOS diagnostic error 20<config_unit>
real mem  = 83378176 (79MB)
avail mem = 65540096 (62MB)
random: good seed from bootblocks
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: date 12/23/94, BIOS32 rev. 0 @ 0xeef80
apm0 at bios0: Power Management spec V1.2
pcibios0 at bios0: rev 2.1 @ 0xec000/0x81a
pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xf36e0/128 (6 entries)
pcibios0: no compatible PCI ICU found: ICU vendor 0x1004 product 0x0102
pcibios0: Warning, unable to fix up PCI interrupt routing
pcibios0: PCI bus #3 is the last bus
bios0: ROM list: 0xc0000/0x8000 0xe8000/0x4000! 0xec000/0x3800! 0xef800/0x800
cpu0 at mainbus0: (uniprocessor)
cpu0: Intel Pentium/MMX ("GenuineIntel" 586-class) 165 MHz, 05-04-03
cpu0: FPU,V86,DE,PSE,TSC,MSR,MCE,CX8,MMX,MELTDOWN
cpu0: F00F bug workaround installed
pci0 at mainbus0 bus 0: configuration mode 1 (bios)
pchb0 at pci0 dev 0 function 0 "VLSI 82C535" rev 0x03
ppb0 at pci0 dev 1 function 0 "VLSI 82C534" rev 0x03
pci1 at ppb0 bus 1
"VLSI 82C532" rev 0x02 at pci0 dev 2 function 0 not configured
vga1 at pci0 dev 3 function 0 "Neomagic Magicgraph 128ZV" rev 0x02
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
cbb0 at pci0 dev 4 function 0 "TI PCI1131 CardBus" rev 0x01: couldn't map 
interrupt
cbb1 at pci0 dev 4 function 1 "TI PCI1131 CardBus" rev 0x01: couldn't map 
interrupt
"VLSI 82C147" rev 0x02 at pci0 dev 6 function 0 not configured
isa0 at mainbus0
isadma0 at isa0
fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
pckbc0 at isa0 port 0x60/5 irq 1 irq 12
pckbd0 at pckbc0 (kbd slot)
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pms0 at pckbc0 (aux slot)
wsmouse0 at pms0 mux 0
wdc0 at isa0 port 0x1f0/8 irq 14
wd0 at wdc0 channel 0 drive 0: <FHM32GY25H>
wd0: 1-sector PIO, LBA, 30592MB, 62652416 sectors
wd0(wdc0:0:0): using BIOS timings
sb0 at isa0 port 0x220/24 irq 5 drq 1: dsp v3.01
midi0 at sb0: <SB MIDI UART>
audio0 at sb0
opl at sb0 not configured
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
lpt0 at isa0 port 0x378/4 irq 7
npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16
pcic0 at isa0 port 0x3e0/2 iomem 0xd0000/65536
pcic0 controller 0: <Intel 82365SL rev 2> has sockets A and B
pcmcia0 at pcic0 controller 0 socket 0
pcmcia1 at pcic0 controller 0 socket 1
pcic0: irq 3, polling enabled
vscsi0 at root
scsibus1 at vscsi0: 256 targets
softraid0 at root
scsibus2 at softraid0: 256 targets
root on wd0a (ff8c00e80793e99b.a) swap on wd0b dump on wd0b
WARNING: / was not properly unmounted
fd0 at fdc0 drive 0: 1.44MB 80 cyl, 2 head, 18 sec

usbdevs:
usbdevs: no USB controllers found

pcidump:
Domain /dev/pci0:
 0:0:0: VLSI 82C535
        0x0000: Vendor ID: 1004, Product ID: 0104
        0x0004: Command: 0006, Status: 2280
        0x0008: Class: 06 Bridge, Subclass: 00 Host,
                Interface: 00, Revision: 03
        0x000c: BIST: 00, Header Type: 00, Latency Timer: 00,
                Cache Line Size: 00
        0x0010: BAR empty (00000000)
        0x0014: BAR empty (00000000)
        0x0018: BAR empty (00000000)
        0x001c: BAR empty (00000000)
        0x0020: BAR empty (00000000)
        0x0024: BAR empty (00000000)
        0x0028: Cardbus CIS: 00000000
        0x002c: Subsystem Vendor ID: 0000 Product ID: 0000
        0x0030: Expansion ROM Base Address: 00000000
        0x0038: 00000000
        0x003c: Interrupt Pin: 00 Line: 00 Min Gnt: 00 Max Lat: 00
        0x0000: 01041004 22800006 06000003 00000000
        0x0010: 00000000 00000000 00000000 00000000
        0x0020: 00000000 00000000 00000000 00000000
        0x0030: 00000000 00000000 00000000 00000000
        0x0040: 0000ff00 00000000 00000000 00000000
        0x0050: 000010da 00ffffee 004a0ae5 000000c3
        0x0060: 00000064 000a0555 0000aaf0 00000000
        0x0070: 80c00000 00000000 00000000 00000000
        0x0080: 00000000 00000000 00000000 00000000
        0x0090: 00000000 00000000 00000000 00000000
        0x00a0: 00000000 00000000 00000000 00000000
        0x00b0: 00000000 00000000 00000000 00000000
        0x00c0: 00000000 00000000 00000000 00000000
        0x00d0: 00000000 00000000 00000000 00000000
        0x00e0: 00000000 00000000 00000000 00000000
        0x00f0: 00000000 00000000 00000000 00000000
 0:1:0: VLSI 82C534
        0x0000: Vendor ID: 1004, Product ID: 0102
        0x0004: Command: 000f, Status: 0280
        0x0008: Class: 06 Bridge, Subclass: 04 PCI,
                Interface: 00, Revision: 03
        0x000c: BIST: 00, Header Type: 01, Latency Timer: 00,
                Cache Line Size: 00
        0x0010: BAR empty (00000000)
        0x0014: BAR empty (00000000)
        0x0018: Primary Bus: 0, Secondary Bus: 1, Subordinate Bus: 1,
                Secondary Latency Timer: 00
        0x001c: I/O Base: 40, I/O Limit: 70, Secondary Status: 0280
        0x0020: Memory Base: 2000, Memory Limit: 2ff0
        0x0024: Prefetch Memory Base: 3000, Prefetch Memory Limit: 3ff0
        0x0028: Prefetch Memory Base Upper 32 Bits: 00000000
        0x002c: Prefetch Memory Limit Upper 32 Bits: 00000000
        0x0030: I/O Base Upper 16 Bits: 0000, I/O Limit Upper 16 Bits: 0000
        0x0038: Expansion ROM Base Address: 00000000
        0x003c: Interrupt Pin: 00, Line: 00, Bridge Control: 0040
        0x0000: 01021004 0280000f 06040003 00010000
        0x0010: 00000000 00000000 00010100 02807040
        0x0020: 2ff02000 3ff03000 00000000 00000000
        0x0030: 00000000 00000000 00000000 00400000
        0x0040: 00004024 0000050c 00000000 00000000
        0x0050: 00000000 03300220 00000388 0023212f
        0x0060: 12008010 4880ff00 00000000 15000000
        0x0070: 00080808 000005a0 00000000 3a000000
        0x0080: 0040001d 482dff2d 00000008 00000000
        0x0090: 00000000 00000000 00000000 00000000
        0x00a0: 00000000 00000000 00000000 00000000
        0x00b0: 00000000 00000000 00000000 00000000
        0x00c0: 00000000 00000000 00000000 00000000
        0x00d0: 00000000 00000000 00000000 00000000
        0x00e0: 00000000 00000000 00000000 00000000
        0x00f0: 00000000 00000000 00000000 00000000
 0:2:0: VLSI 82C532
        0x0000: Vendor ID: 1004, Product ID: 0101
        0x0004: Command: 0003, Status: 0280
        0x0008: Class: ff (unknown), Subclass: 00 (unknown),
                Interface: 00, Revision: 02
        0x000c: BIST: 00, Header Type: 00, Latency Timer: 00,
                Cache Line Size: 00
        0x0010: BAR empty (00000000)
        0x0014: BAR empty (00000000)
        0x0018: BAR empty (00000000)
        0x001c: BAR empty (00000000)
        0x0020: BAR empty (00000000)
        0x0024: BAR empty (00000000)
        0x0028: Cardbus CIS: 00000000
        0x002c: Subsystem Vendor ID: 0000 Product ID: 0000
        0x0030: Expansion ROM Base Address: 00000000
        0x0038: 00000000
        0x003c: Interrupt Pin: 00 Line: 00 Min Gnt: 00 Max Lat: 00
        0x0000: 01011004 02800003 ff000002 00000000
        0x0010: 00000000 00000000 00000000 00000000
        0x0020: 00000000 00000000 00000000 00000000
        0x0030: 00000000 00000000 00000000 00000000
        0x0040: 1f161700 cacacaca 40404040 0087d1d2
        0x0050: 80400010 00000280 00740080 ff000380
        0x0060: 13131313 00420105 00010815 00021a5d
        0x0070: 00008100 00000000 00000000 00000000
        0x0080: 00000000 00000000 00000000 00000000
        0x0090: 00000000 00000000 00000000 00000000
        0x00a0: 00000000 00000000 00000000 00000000
        0x00b0: 00000000 00000000 00000000 00000000
        0x00c0: 00000000 00000000 00000000 00000000
        0x00d0: 00000000 00000000 00000000 00000000
        0x00e0: 00000000 00000000 00000000 00000000
        0x00f0: 00000000 00000000 00000000 00000000
 0:3:0: Neomagic Magicgraph 128ZV
        0x0000: Vendor ID: 10c8, Product ID: 0003
        0x0004: Command: 0003, Status: 0280
        0x0008: Class: 03 Display, Subclass: 00 VGA,
                Interface: 00, Revision: 02
        0x000c: BIST: 00, Header Type: 00, Latency Timer: 00,
                Cache Line Size: 00
        0x0010: BAR mem prefetchable 32bit addr: 0xc0000000/0x00400000
        0x0014: BAR empty (00000000)
        0x0018: BAR empty (00000000)
        0x001c: BAR empty (00000000)
        0x0020: BAR empty (00000000)
        0x0024: BAR empty (00000000)
        0x0028: Cardbus CIS: 00000000
        0x002c: Subsystem Vendor ID: 0000 Product ID: 0000
        0x0030: Expansion ROM Base Address: 00000000
        0x0038: 00000000
        0x003c: Interrupt Pin: 01 Line: ff Min Gnt: 00 Max Lat: 00
        0x0000: 000310c8 02800003 03000002 00000000
        0x0010: c0000008 00000000 00000000 00000000
        0x0020: 00000000 00000000 00000000 00000000
        0x0030: 00000000 00000000 00000000 000001ff
        0x0040: 00000000 00000000 00000000 00000000
        0x0050: 00000000 00000000 00000000 00000000
        0x0060: 00000000 00000000 00000000 00000000
        0x0070: 00000000 00000000 00000000 00000000
        0x0080: 00000000 00000000 00000000 00000000
        0x0090: 00000000 00000000 00000000 00000000
        0x00a0: 00000000 00000000 00000000 00000000
        0x00b0: 00000000 00000000 00000000 00000000
        0x00c0: 00000000 00000000 00000000 00000000
        0x00d0: 00000000 00000000 00000000 00000000
        0x00e0: 00000000 00000000 00000000 00000000
        0x00f0: 00000000 00000000 00000000 00000000
 0:4:0: TI PCI1131 CardBus
        0x0000: Vendor ID: 104c, Product ID: ac15
        0x0004: Command: 0007, Status: 0200
        0x0008: Class: 06 Bridge, Subclass: 07 (unknown),
                Interface: 00, Revision: 01
        0x000c: BIST: 00, Header Type: 82, Latency Timer: 40,
                Cache Line Size: 00
        0x0010: Cardbus Control Registers Base Address: 05000000
        0x0018: Primary Bus: 0 Cardbus Bus: 2 Subordinate Bus: 2 
                Cardbus Latency Timer: 20
        0x001c: Memory Base 0: 00000000
        0x0020: Memory Limit 0: 00000000
        0x0024: Memory Base 1: 00000000
        0x0028: Memory Limit 1: 00000000
        0x002c: I/O Base 0: 00000000
        0x0030: I/O Limit 0: 00000000
        0x0034: I/O Base 1: 00000000
        0x0038: I/O Limit 1: 00000000
        0x003c: Interrupt Pin: 01 Line: ff Bridge Control: 0340
        0x0040: Subsystem Vendor ID: 0000 Product ID: 0000
        0x0044: 16-bit Legacy Mode Base Address: 000003e1
        0x0000: ac15104c 02000007 06070001 00824000
        0x0010: 05000000 02000000 20020200 00000000
        0x0020: 00000000 00000000 00000000 00000000
        0x0030: 00000000 00000000 00000000 034001ff
        0x0040: 00000000 000003e1 00000000 00000000
        0x0050: 00000000 00000000 00000000 00000000
        0x0060: 00000000 00000000 00000000 00000000
        0x0070: 00000000 00000000 00000000 00000000
        0x0080: 00043021 00000000 00000000 00000000
        0x0090: 00660200 00000000 00000000 00000000
        0x00a0: 00000000 00000000 00000000 00000000
        0x00b0: 00000000 00000000 00000000 00000000
        0x00c0: 00000000 00000000 00000000 00000000
        0x00d0: 00000000 00000000 00000000 00000000
        0x00e0: 00000000 00000000 00000000 00000000
        0x00f0: 00000000 00000000 00000000 00000000
 0:4:1: TI PCI1131 CardBus
        0x0000: Vendor ID: 104c, Product ID: ac15
        0x0004: Command: 0007, Status: 0200
        0x0008: Class: 06 Bridge, Subclass: 07 (unknown),
                Interface: 00, Revision: 01
        0x000c: BIST: 00, Header Type: 82, Latency Timer: 40,
                Cache Line Size: 00
        0x0010: Cardbus Control Registers Base Address: 05001000
        0x0018: Primary Bus: 0 Cardbus Bus: 3 Subordinate Bus: 3 
                Cardbus Latency Timer: 20
        0x001c: Memory Base 0: 00000000
        0x0020: Memory Limit 0: 00000000
        0x0024: Memory Base 1: 00000000
        0x0028: Memory Limit 1: 00000000
        0x002c: I/O Base 0: 00000000
        0x0030: I/O Limit 0: 00000000
        0x0034: I/O Base 1: 00000000
        0x0038: I/O Limit 1: 00000000
        0x003c: Interrupt Pin: 02 Line: ff Bridge Control: 0340
        0x0040: Subsystem Vendor ID: 0000 Product ID: 0000
        0x0044: 16-bit Legacy Mode Base Address: 000003e1
        0x0000: ac15104c 02000007 06070001 00824000
        0x0010: 05001000 02000000 20030300 00000000
        0x0020: 00000000 00000000 00000000 00000000
        0x0030: 00000000 00000000 00000000 034002ff
        0x0040: 00000000 000003e1 00000000 00000000
        0x0050: 00000000 00000000 00000000 00000000
        0x0060: 00000000 00000000 00000000 00000000
        0x0070: 00000000 00000000 00000000 00000000
        0x0080: 00041021 00000000 00000000 00000000
        0x0090: 00660200 00000000 00000000 00000000
        0x00a0: 00000000 00000000 00000000 00000000
        0x00b0: 00000000 00000000 00000000 00000000
        0x00c0: 00000000 00000000 00000000 00000000
        0x00d0: 00000000 00000000 00000000 00000000
        0x00e0: 00000000 00000000 00000000 00000000
        0x00f0: 00000000 00000000 00000000 00000000
 0:6:0: VLSI 82C147
        0x0000: Vendor ID: 1004, Product ID: 0105
        0x0004: Command: 0005, Status: 0280
        0x0008: Class: 0d Wireless, Subclass: 00 IrDA,
                Interface: 00, Revision: 02
        0x000c: BIST: 00, Header Type: 00, Latency Timer: 00,
                Cache Line Size: 00
        0x0010: BAR io addr: 0x00003000/0x0020
        0x0014: BAR empty (00000000)
        0x0018: BAR empty (00000000)
        0x001c: BAR empty (00000000)
        0x0020: BAR empty (00000000)
        0x0024: BAR empty (00000000)
        0x0028: Cardbus CIS: 00000000
        0x002c: Subsystem Vendor ID: 0000 Product ID: 0000
        0x0030: Expansion ROM Base Address: 00000000
        0x0038: 00000000
        0x003c: Interrupt Pin: 01 Line: 0a Min Gnt: 00 Max Lat: 00
        0x0000: 01051004 02800005 0d000002 00000000
        0x0010: 00003001 00000000 00000000 00000000
        0x0020: 00000000 00000000 00000000 00000000
        0x0030: 00000000 00000000 00000000 0000010a
        0x0040: 000000b0 00000000 00000000 00000000
        0x0050: 00000000 00000000 00000000 00000000
        0x0060: 00000000 00000000 00000000 00000000
        0x0070: 00000000 00000000 00000000 00000000
        0x0080: 00000000 00000000 00000000 00000000
        0x0090: 00000000 00000000 00000000 00000000
        0x00a0: 00000000 00000000 00000000 00000000
        0x00b0: 00000000 00000000 00000000 00000000
        0x00c0: 00000000 00000000 00000000 00000000
        0x00d0: 00000000 00000000 00000000 00000000
        0x00e0: 00000000 00000000 00000000 00000000
        0x00f0: 00000000 00000000 00000000 00000000

acpidump:

Reply via email to