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]>