Hi, In message <15bebcc1-4756-46ad-a424-e5232065b...@mailbox.org> on Fri, 22 Apr 2022 19:39:35 +0200, "J. Hannken-Illjes" <hann...@mailbox.org> wrote: >> #5 0xffffffff80e69314 in VOP_FDISCARD (vp=0xffff879fb253da40, >> pos=<optimized out>, len=<optimized out>) >> at /usr/src/sys/kern/vnode_if.c:845 >> #6 0xffffffff80e69314 in VOP_FDISCARD (vp=0xffff879fb2e99cc0, >> pos=pos@entry=5843857408, len=len@entry=2048) >> at /usr/src/sys/kern/vnode_if.c:845 > > This one is different from the previous stack trace, two VOP_FDISCARD(). > > Could you print the vnodes and mounts from frame #6 and #5, > ( print *vp and print *vp->v_mount ) please? (gdb) frame #5 0xffffffff80e69314 in VOP_FDISCARD (vp=0xffff8380cab3d7c0, pos=<optimized out>, len=<optimized out>) at /usr/src/sys/kern/vnode_if.c:845 845 error = (VCALL(vp, VOFFSET(vop_fdiscard), &a)); (gdb) p *vp $4 = {v_uobj = {vmobjlock = 0xffff83874d7d4200, pgops = 0xffffffff813589c0 <uvm_vnodeops>, uo_npages = 0, uo_refs = 1, uo_pages = {t_root = 0x0, t_height = 0}, uo_ubc = {lh_first = 0x0}}, v_size = 0, v_writesize = 0, v_cv = {cv_opaque = {0x0, 0xffffffff81491feb}}, v_iflag = 0, v_uflag = 0, v_usecount = -2147483647, v_numoutput = 0, v_writecount = 1, v_holdcnt = 0, v_cleanblkhd = {lh_first = 0x0}, v_dirtyblkhd = {lh_first = 0x0}, v_vflag = 16, v_interlock = 0xffff83874d47eec0, v_mount = 0xffff83874d498000, v_op = 0xffff83874b39f400, v_un = {vu_mountedhere = 0xffff838748345a00, vu_socket = 0xffff838748345a00, vu_specnode = 0xffff838748345a00, vu_fifoinfo = 0xffff838748345a00, vu_ractx = 0xffff838748345a00}, v_type = VBLK, v_tag = VT_NON, v_data = 0x0, v_klist = {slh_first = 0x0}, v_klist_interest = 0, v_segvguard = 0x0} (gdb) p *vp->v_mount $5 = {mnt_vnodelock = 0xffff83874d47e200, mnt_op = 0xffffffff8188f860 <dead_vfsops>, mnt_vnodecovered = 0x0, mnt_lower = 0x0, mnt_transinfo = 0xffff83874c3aa1c0, mnt_data = 0x0, mnt_renamelock = 0xffff83874d47e1c0, mnt_flag = 0, mnt_iflag = 256, mnt_fs_bshift = 0, mnt_dev_bshift = 0, mnt_specdataref = { specdataref_container = 0x0, specdataref_lock = {u = {mtxa_owner = 0, s = { mtxs_dummy = 0 '\000', mtxs_ipl = {_ipl = 0 '\000'}, mtxs_lock = 0 '\000', mtxs_unused = 0 '\000'}}}}, mnt_updating = 0xffff83874d47e240, mnt_wapbl_op = 0x0, mnt_wapbl = 0x0, mnt_wapbl_replay = 0x0, mnt_gen = 0, mnt_refcnt = 5, mnt_synclist_slot = 0, mnt_vnodelist = {tqh_first = 0xffff8380cab3d2c0, tqh_last = 0xffff8380cae9d9d8}, mnt_stat = {f_flag = 0, f_bsize = 0, f_frsize = 0, f_iosize = 0, f_blocks = 0, f_bfree = 0, f_bavail = 0, f_bresvd = 0, f_files = 0, f_ffree = 0, f_favail = 0, f_fresvd = 0, f_syncreads = 0, f_syncwrites = 0, f_asyncreads = 0, f_asyncwrites = 0, f_fsidx = {__fsid_val = {0, 0}}, f_fsid = 0, f_namemax = 0, f_owner = 0, f_spare = {0, 0, 0, 0}, f_fstypename = '\000' <repeats 31 times>, f_mntonname = '\000' <repeats 1023 times>, f_mntfromname = '\000' <repeats 1023 times>, f_mntfromlabel = '\000' <repeats 1023 times>}} (gdb) up #6 0xffffffff80e69314 in VOP_FDISCARD (vp=0xffff8380cc0e0cc0, pos=pos@entry=3024259072, len=len@entry=2048) at /usr/src/sys/kern/vnode_if.c:845 845 error = (VCALL(vp, VOFFSET(vop_fdiscard), &a)); (gdb) p *vp $6 = {v_uobj = {vmobjlock = 0xffff8380cb4a9e40, pgops = 0xffffffff813589c0 <uvm_vnodeops>, uo_npages = 0, uo_refs = 1, uo_pages = {t_root = 0x0, t_height = 0}, uo_ubc = {lh_first = 0x0}}, v_size = 0, v_writesize = 0, v_cv = {cv_opaque = {0x0, 0xffffffff81491feb}}, v_iflag = 16384, v_uflag = 0, v_usecount = -1073741810, v_numoutput = 0, v_writecount = 0, v_holdcnt = 8, v_cleanblkhd = { lh_first = 0xffff8380cd540a88}, v_dirtyblkhd = { lh_first = 0xffff8380cd540cb8}, v_vflag = 16, v_interlock = 0xffff8380cb4d8340, v_mount = 0xffff8380cad11000, v_op = 0xffff838748392600, v_un = {vu_mountedhere = 0xffff8380cad1e6c0, vu_socket = 0xffff8380cad1e6c0, vu_specnode = 0xffff8380cad1e6c0, vu_fifoinfo = 0xffff8380cad1e6c0, vu_ractx = 0xffff8380cad1e6c0}, v_type = VBLK, v_tag = VT_UFS, v_data = 0xffff8380cb787b90, v_klist = { slh_first = 0x0}, v_klist_interest = 0, v_segvguard = 0x0} (gdb) p *vp->v_mount $7 = {mnt_vnodelock = 0xffff83874d47ef00, mnt_op = 0xffffffff81885180 <ffs_vfsops>, mnt_vnodecovered = 0x0, mnt_lower = 0x0, mnt_transinfo = 0xffff8380cad1e040, mnt_data = 0xffff8380cace87c0, mnt_renamelock = 0xffff83874d47ef40, mnt_flag = 8409088, mnt_iflag = 2016, mnt_fs_bshift = 14, mnt_dev_bshift = 9, mnt_specdataref = {specdataref_container = 0x0, specdataref_lock = {u = {mtxa_owner = 0, s = {mtxs_dummy = 0 '\000', mtxs_ipl = {_ipl = 0 '\000'}, mtxs_lock = 0 '\000', mtxs_unused = 0 '\000'}}}}, mnt_updating = 0xffff83874d47ef80, mnt_wapbl_op = 0x0, mnt_wapbl = 0x0, mnt_wapbl_replay = 0x0, mnt_gen = 2, mnt_refcnt = 3069, mnt_synclist_slot = 16, mnt_vnodelist = { tqh_first = 0xffff8380cab3da40, tqh_last = 0xffff8380cc8a3c18}, mnt_stat = {f_flag = 0, f_bsize = 16384, f_frsize = 2048, f_iosize = 16384, f_blocks = 508263, f_bfree = 382265, f_bavail = 356852, f_bresvd = 25413, f_files = 127102, f_ffree = 119915, f_favail = 119915, f_fresvd = 0, f_syncreads = 6653, f_syncwrites = 10, f_asyncreads = 0, f_asyncwrites = 37, f_fsidx = {__fsid_val = {43012, 1931}}, f_fsid = 43012, f_namemax = 255, f_owner = 0, f_spare = {0, 0, 0, 0}, f_fstypename = "ffs", '\000' <repeats 28 times>, f_mntonname = "/", '\000' <repeats 1022 times>, f_mntfromname = "/dev/dk4", '\000' <repeats 1015 times>, f_mntfromlabel = "root", '\000' <repeats 1019 times>}}
> What is mounted ( /etc/fstab and mount )? It is a great hint for me! I completely forgot that I added "discard" option. After removing it, no more panic() without patch to ffs_alloc.c. # cat /etc/fstab /dev/dk0 /efi msdos rw,noauto 0 0 /dev/dk4 / ffs rw,discard 1 1 /dev/dk9 none swap sw 0 0 /dev/dk5 /var ffs rw,discard 1 2 /dev/dk6 /usr ffs rw,discard 1 3 /dev/dk7 /data ffs rw,discard 1 4 /dev/dk8 /home ffs rw,discard 1 5 tmpfs /tmp tmpfs rw 0 0 tmpfs /var/run tmpfs rw,-sram%25 0 0 tmpfs /var/shm tmpfs rw,-m1777,-sram%25 0 0 none /proc procfs rw,linux 0 0 ptyfs /dev/pts ptyfs rw 0 0 Best regards. -- Takahiro Kambe <t...@back-street.net>