From owner-freebsd-current Thu Sep 24 04:50:03 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id EAA17557 for freebsd-current-outgoing; Thu, 24 Sep 1998 04:50:03 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from gatekeeper.tsc.tdk.com (gatekeeper.tsc.tdk.com [207.113.159.21]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id EAA17518 for ; Thu, 24 Sep 1998 04:50:00 -0700 (PDT) (envelope-from gdonl@tsc.tdk.com) Received: from sunrise.gv.tsc.tdk.com (root@sunrise.gv.tsc.tdk.com [192.168.241.191]) by gatekeeper.tsc.tdk.com (8.8.8/8.8.8) with ESMTP id EAA23879; Thu, 24 Sep 1998 04:49:25 -0700 (PDT) (envelope-from gdonl@tsc.tdk.com) Received: from salsa.gv.tsc.tdk.com (salsa.gv.tsc.tdk.com [192.168.241.194]) by sunrise.gv.tsc.tdk.com (8.8.5/8.8.5) with ESMTP id EAA09001; Thu, 24 Sep 1998 04:49:24 -0700 (PDT) Received: (from gdonl@localhost) by salsa.gv.tsc.tdk.com (8.8.5/8.8.5) id EAA24754; Thu, 24 Sep 1998 04:49:23 -0700 (PDT) From: Don Lewis Message-Id: <199809241149.EAA24754@salsa.gv.tsc.tdk.com> Date: Thu, 24 Sep 1998 04:49:22 -0700 In-Reply-To: Alexander Litvin "Re: deadlock in vm_fault()" (Sep 24, 1:05pm) X-Mailer: Mail User's Shell (7.2.6 alpha(3) 7/19/95) To: Alexander Litvin , Luoqi Chen Subject: Re: deadlock in vm_fault() Cc: current@FreeBSD.ORG Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Sep 24, 1:05pm, Alexander Litvin wrote: } Subject: Re: deadlock in vm_fault() } In article <199809232224.SAA17260@lor.watermarkgroup.com> you wrote: } LC> I ran into a deadlock in vm_fault code today while making -j12 world. } LC> It's caused by a reversed lock acquisition order. The normal order of } LC> acquisition is vm map lock first and vnode lock next (if the fault is in } LC> a vnode backed object). During the course of the fault handling, lock on } LC> the vm map is released prior to paging io and has to be reacquired if it's } LC> modified by another process during the io. Before reacquiring the lock of } LC> vm map, we have to release the vnode lock we still hold, otherwise another } LC> page fault in the same map/vnode would send us into a deadlock. } } LC> Attached is a fix for this problem. Would any of the vm/lock experts out } LC> there review this? Thanks. } } I've seen something strange during the same -j12 buildworld. In fact, } it was just that ld hang, apparently not doing anything. The rest } of the system seemed to be alive. Though in some 3 or 4 hours machine } rebooted (it had kernel with broken crash dump generation, so I do } not know what actually happened). } } May it be related? Sounds likely. I've seen something else with -j12 (but not -j11 or lower). I don't have any particular reason to suspect the kernel on this one, but it is an interesting coincidence. --- config_h.sh --- cp -p /usr/src/gnu/usr.bin/perl/suidperl/../../../../contrib/perl5/config_h.SH config_h.sh --- config.sh --- cp -p /usr/src/gnu/usr.bin/perl/suidperl/../libperl/config.SH-elf.i386 config.sh --- cflags.sh --- cp -p /usr/src/gnu/usr.bin/perl/suidperl/../../../../contrib/perl5/cflags.SH cflags.sh --- writemain.sh --- --- myconfig --- --- writemain --- sh writemain.sh Extracting writemain (with variable substitutions) writemain: not found *** Error code 127 1 error *** Error code 2 1 error *** Error code 2 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message