As the summary says, this is rather easy to reproduce.

I use resflash to build myself router images based on OpenBSD. Today I
built an image from 6.4 snapshot sets, and there's a panic, apparently
when unmounting the mfs filesystems resflash uses.

I booted up the image on a fresh QEMU VM with virt-manager defaults (1
vCPU, 1024GB of RAM, IDE disk). at the end is the entirety of the
serial console output from boot to crash.

The panic also occurs on my APU2.

I can also make available the full resflash image if needed (it
contains no significant customization besides resflash, just miniupnpd
and flashrom installed with pkg_add). It's about 200MB when compressed

rebooting...
>> OpenBSD/amd64 BOOT 3.41
boot> 
booting hd0d:/bsd: 10487559+2536464+266272+0+671744
[697576+119+850536+593286]=0xf5e110
entry point at 0x1000158
[ using 2142480 bytes of bsd ELF symbol table ]
Copyright (c) 1982, 1986, 1989, 1991, 1993
        The Regents of the University of California.  All rights
reserved.
Copyright (c) 1995-2018 OpenBSD. All rights reserved.  
https://www.OpenBSD.org

OpenBSD 6.4-beta (GENERIC.MP) #296: Fri Sep 14 22:53:46 MDT 2018
    [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.M
P
real mem = 1056833536 (1007MB)
avail mem = 1015603200 (968MB)
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.8 @ 0xf5b30 (9 entries)
bios0: vendor SeaBIOS version "?-20180531_142017-buildhw-
08.phx2.fedoraproject.org-1.fc28" date 04/01/2014
bios0: QEMU Standard PC (i440FX + PIIX, 1996)
acpi0 at bios0: rev 0
acpi0: sleep states S5
acpi0: tables DSDT FACP APIC
acpi0: wakeup devices
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel Core Processor (Haswell, no TSX, IBRS), 3392.57 MHz, 06-3c-
01
cpu0:
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36
,CFLUSH,MMX,FXSR,SSE,SSE2,SSE3,PCLMUL,SSSE3,FMA3,CX16,PCID,SSE4.1,SSE4.
2,x2APIC,MOVBE,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,HV,NXE,RDTSCP,
LONG,LAHF,ABM,FSGSBASE,BMI1,AVX2,SMEP,BMI2,ERMS,INVPCID,IBRS,IBPB,ARAT,
XSAVEOPT,MELTDOWN
cpu0: 64KB 64b/line 2-way I-cache, 64KB 64b/line 2-way D-cache, 512KB
64b/line 16-way L2 cache
cpu0: ITLB 255 4KB entries direct-mapped, 255 4MB entries direct-mapped
cpu0: DTLB 255 4KB entries direct-mapped, 255 4MB entries direct-mapped
cpu0: smt 0, core 0, package 0
mtrr: Pentium Pro MTRR support, 8 var ranges, 88 fixed ranges
cpu0: apic clock running at 1000MHz
ioapic0 at mainbus0: apid 0 pa 0xfec00000, version 11, 24 pins
acpiprt0 at acpi0: bus 0 (PCI0)
acpicpu0 at acpi0: C1(@1 halt!)
"ACPI0006" at acpi0 not configured
acpicmos0 at acpi0
"PNP0A06" at acpi0 not configured
"PNP0A06" at acpi0 not configured
"PNP0A06" at acpi0 not configured
"QEMU0002" at acpi0 not configured
"ACPI0010" at acpi0 not configured
pvbus0 at mainbus0: KVM
pci0 at mainbus0 bus 0
pchb0 at pci0 dev 0 function 0 "Intel 82441FX" rev 0x02
pcib0 at pci0 dev 1 function 0 "Intel 82371SB ISA" rev 0x00
pciide0 at pci0 dev 1 function 1 "Intel 82371SB IDE" rev 0x00: DMA,
channel 0 wired to compatibility, channel 1 wired to compatibility
wd0 at pciide0 channel 0 drive 0: <QEMU HARDDISK>
wd0: 16-sector PIO, LBA48, 1906MB, 3903488 sectors
wd0(pciide0:0:0): using PIO mode 4, DMA mode 2
pciide0: channel 1 disabled (no drives)
piixpm0 at pci0 dev 1 function 3 "Intel 82371AB Power" rev 0x03: apic 0
int 9
iic0 at piixpm0
vga1 at pci0 dev 2 function 0 "Red Hat QXL Video" rev 0x04
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
em0 at pci0 dev 3 function 0 "Intel 82540EM" rev 0x03: apic 0 int 11,
address 52:54:00:fc:51:31
uhci0 at pci0 dev 4 function 0 "Intel 82801I USB" rev 0x03: apic 0 int
11
uhci1 at pci0 dev 4 function 1 "Intel 82801I USB" rev 0x03: apic 0 int
10
uhci2 at pci0 dev 4 function 2 "Intel 82801I USB" rev 0x03: apic 0 int
10
ehci0 at pci0 dev 4 function 7 "Intel 82801I USB" rev 0x03: apic 0 int
11
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 configuration 1 interface 0 "Intel EHCI root hub" rev
2.00/1.00 addr 1
virtio0 at pci0 dev 5 function 0 "Qumranet Virtio Console" rev 0x00
virtio0: no matching child driver; not configured
virtio1 at pci0 dev 6 function 0 "Qumranet Virtio Memory" rev 0x00
viomb0 at virtio1
virtio1: apic 0 int 10
isa0 at pcib0
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
com0: console
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
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
usb1 at uhci0: USB revision 1.0
uhub1 at usb1 configuration 1 interface 0 "Intel UHCI root hub" rev
1.00/1.00 addr 1
usb2 at uhci1: USB revision 1.0
uhub2 at usb2 configuration 1 interface 0 "Intel UHCI root hub" rev
1.00/1.00 addr 1
usb3 at uhci2: USB revision 1.0
uhub3 at usb3 configuration 1 interface 0 "Intel UHCI root hub" rev
1.00/1.00 addr 1
vscsi0 at root
scsibus1 at vscsi0: 256 targets
softraid0 at root
scsibus2 at softraid0: 256 targets
root on wd0d (44e718b1dfef174e.d) swap on wd0b dump on wd0b
Automatic boot in progress: starting file system checks.
/dev/wd0d (44e718b1dfef174e.d): file system is clean; not checking
/dev/wd0a (44e718b1dfef174e.a): file system is clean; not checking
/dev/wd0f (44e718b1dfef174e.f): file system is clean; not checking
resflash: Relocating /dev /etc /var /usr/lib /usr/libexecfd0 at fdc0
drive 1: density unknown
 /usr/share/relink to mfs
resflash: Overlaying data from /cfg
setting tty flags
pf enabled
starting network
reordering libraries: done.
openssl: generating isakmpd/iked RSA keys... done.
ssh-keygen: generating new host keys: RSA DSA ECDSA ED25519 
starting early daemons: syslogd pflogd ntpd.
starting RPC daemons:.
savecore: /dev/wd0b: Device not configured
checking quotas: done.
clearing /tmp
kern.securelevel: 0 -> 1
creating runtime link editor directory cache.
preserving editor files.
starting network daemons: sshd smtpd(failed) sndiod.
starting local daemons: cron.
Sat Sep 15 12:14:32 MDT 2018

OpenBSD/amd64 (Amnesiac) (tty00)

login: root
Password:
OpenBSD 6.4-beta (GENERIC.MP) #296: Fri Sep 14 22:53:46 MDT 2018

Welcome to OpenBSD: The proactively secure Unix-like operating system.

Please use the sendbug(1) utility to report bugs in the system.
Before reporting a bug, please try to reproduce it with the latest
version of the code.  With bug reports, please try to ensure that
enough information to reproduce the problem is enclosed, and if a
known fix for it exists, include that as well.

You have mail.
#
mount                                                                 
/dev/wd0d on / type ffs (local, noatime, nodev, read-only)
mfs:50587 on /tmp type mfs (asynchronous, local, noatime, nodev,
nosuid, size=65536 512-blocks)
mfs:37315 on /dev type mfs (asynchronous, local, noatime, noexec,
size=12288 512-blocks)
mfs:38928 on /etc type mfs (asynchronous, local, noatime, nodev,
nosuid, size=131072 512-blocks)
mfs:66895 on /var type mfs (asynchronous, local, noatime, nodev,
noexec, size=131072 512-blocks)
mfs:94089 on /usr/lib type mfs (asynchronous, local, noatime, nodev,
nosuid, size=102400 512-blocks)
mfs:19996 on /usr/libexec type mfs (asynchronous, local, noatime,
nodev, size=126976 512-blocks)
# reboot
panic: kernel diagnostic assertion "vp->v_uvcount == 0" failed: file
"/usr/src/sys/kern/kern_unveil.c", line 746
Stopped at      db_enter+0x12:  popq    %r11
    TID    PID    UID     PRFLAGS     PFLAGS  CPU  COMMAND
*156716  66895      0           0          0    0K mount_mfs
db_enter() at db_enter+0x12
panic() at panic+0x120
__assert(ffffffff81488ae4,ffff800014bbc170,0,ffffff003369d4b8) at
__assert+0x24

unveil_removevnode(b888832faeade63e) at unveil_removevnode+0xf2
dounmount_leaf(ddcee1164af501e7,ffff800000338c00,0) at
dounmount_leaf+0x69
dounmount(b4045c301d32ae9b,ffff800000338c00,ffff800014b8b2d0) at
dounmount+0xfa

mfs_start(3e0e0f4bf8e2139b,ffff800000338c00,ffffff00377b93f8) at
mfs_start+0xf9

sys_mount(23bbdfdfe40595f3,150,ffff800014b8b2d0) at sys_mount+0x5b5
syscall(a6895eec37ded030) at syscall+0x32a
Xsyscall(6,15,7f7ffffdcc50,15,7f7ffffdd0ec,0) at Xsyscall+0x128
end of kernel
end trace frame: 0x7f7ffffdd440, count: 5
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{0}> ps   
   PID     TID   PPID    UID  S       FLAGS  WAIT          COMMAND
 79288  179205  56166      0  2         0x3                reboot
 56166  202662      1      0  2    0x10008b                ksh
 19996  202859      1      0  3        0x80  mfsidl        mount_mfs
*66895  156716      1      0  7           0                mount_mfs
 38928   16760      1      0  2        0x80                mount_mfs
 37315   20190      1      0  2        0x80                mount_mfs
 50587  233256      1      0  2        0x80                mount_mfs
  6190  162980      0      0  2     0x14200                zerothread
 79824  428075      0      0  3     0x14200  aiodoned      aiodoned
 64689  377635      0      0  3     0x14200  syncer        update
 74336  418366      0      0  3     0x14200  cleaner       cleaner
 98639  110601      0      0  3     0x14200  reaper        reaper
 30201  257151      0      0  3     0x14200  pgdaemon      pagedaemon
 13767  131495      0      0  3     0x14200  bored         crynlk
 32567  185018      0      0  3     0x14200  bored         crypto
 30689  227065      0      0  3     0x14200  bored         viomb
   104  449819      0      0  3     0x14200  usbtsk        usbtask
 76486  245558      0      0  3     0x14200  usbatsk       usbatsk
 71504  295712      0      0  3  0x40014200  acpi0         acpi0
 14153  359307      0      0  3     0x14200  bored         softnet
 92659   29590      0      0  3     0x14200  bored         systqmp
 91827  344464      0      0  2     0x14200                systq
 30413  249553      0      0  3  0x40014200  bored         softclock
  6966  129322      0      0  3  0x40014200                idle0
     1  394017      0      0  2        0x82                init
     0       0     -1      0  3     0x10200  scheduler     swapper
ddb{0}> 


Hope this helps

--
Jarkko Oranen <[email protected]>

Reply via email to