On Sun, Dec 27, 2015 at 03:38:48AM -0500, Shawn Webb wrote: > Hey All, > > This is from booting a new installer ISO, generated today from a very > recent commit: > > === Begin Log === > Trying to mount root from cd9660:/dev/iso9660/11_0__HBSD_AMD64_CD [ro]... > lock order reversal: > 1st 0xfffffe00f6222e40 bufwait (bufwait) _at_ /jenkins/workspace/HardenedBSD-master-amd64/sys/vm/vm_pager.c:380 > 2nd 0xfffff800063785f0 isofs (isofs) _at_ /jenkins/workspace/HardenedBSD-master-amd64/sys/kern/imgact_elf.c:883 > stack backtrace: > #0 0xffffffff80a7ce70 at witness_debugger+0x70 > #1 0xffffffff80a7cd71 at witness_checkorder+0xe71 > #2 0xffffffff80a0033b at __lockmgr_args+0xd3b > #3 0xffffffff80ac2fdc at vop_stdlock+0x3c > #4 0xffffffff80fc0fc0 at VOP_LOCK1_APV+0x100 > #5 0xffffffff80ae397a at _vn_lock+0x9a > #6 0xffffffff809c4b01 at exec_elf64_imgact+0xa91 > #7 0xffffffff809e35e9 at kern_execve+0x4b9 > #8 0xffffffff809e2ddc at sys_execve+0x4c > #9 0xffffffff809c760a at start_init+0x26a > #10 0xffffffff809eadb4 at fork_exit+0x84 > #11 0xffffffff80e4e9ae at fork_trampoline+0xe > userret: returning with the following locks held: > exclusive lockmgr bufwait (bufwait) r = 0 (0xfffffe00f6222c10) locked _at_ /jenkins/workspace/HardenedBSD-master-amd64/sys/vm/vm_pager.c:380 > exclusive lockmgr bufwait (bufwait) r = 0 (0xfffffe00f6222e40) locked _at_ /jenkins/workspace/HardenedBSD-master-amd64/sys/vm/vm_pager.c:380 > panic: witness_warn > === End Log === > > This is 11-CURRENT/amd64, based on HardenedBSD commit > f0a4c61a2e9e2433db632d70d5764e79c5b84b7a. I booted the ISO up in bhyve > using vmrun.sh. I haven't ruled out anything on HardenedBSD's side, yet, > but we don't have any changes that would cause a panic'ing LOR in > vm_pager.c. I'll do some more investigative work when I get some more > sleep. But if anyone has any ideas, please let me know. I kinda wonder > if this is related to the recent VFS changes by FreeBSD. The following change would fix your problem, I did not tested it. diff --git a/sys/vm/vnode_pager.c b/sys/vm/vnode_pager.c index ff30f4d..66dd29d 100644 --- a/sys/vm/vnode_pager.c +++ b/sys/vm/vnode_pager.c _at__at_ -806,6 +806,7 _at__at_ vnode_pager_generic_getpages(struct vnode *vp, vm_page_t *m, int count, * than a page size, then use special small filesystem code. */ if (pagesperblock == 0) { + relpbuf(bp, freecnt); for (i = 0; i < count; i++) { PCPU_INC(cnt.v_vnodein); PCPU_INC(cnt.v_vnodepgsin);Received on Sun Dec 27 2015 - 09:09:34 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:01 UTC