From owner-freebsd-stable Wed May 12 8: 0:19 1999 Delivered-To: freebsd-stable@freebsd.org Received: from point.osg.gov.bc.ca (point.osg.gov.bc.ca [142.32.102.44]) by hub.freebsd.org (Postfix) with ESMTP id BB2EA1552D; Wed, 12 May 1999 08:00:10 -0700 (PDT) (envelope-from cy@cschuber.net.gov.bc.ca) Received: (from daemon@localhost) by point.osg.gov.bc.ca (8.8.7/8.8.8) id IAA02535; Wed, 12 May 1999 08:01:23 -0700 Received: from cschuber.net.gov.bc.ca(142.31.240.113), claiming to be "cwsys.cwsent.com" via SMTP by point.osg.gov.bc.ca, id smtpda02533; Wed May 12 08:01:13 1999 Received: (from uucp@localhost) by cwsys.cwsent.com (8.9.3/8.9.1) id HAA27314; Wed, 12 May 1999 07:59:53 -0700 (PDT) Message-Id: <199905121459.HAA27314@cwsys.cwsent.com> Received: from localhost.cwsent.com(127.0.0.1), claiming to be "cwsys" via SMTP by localhost.cwsent.com, id smtpdi27310; Wed May 12 07:59:46 1999 X-Mailer: exmh version 2.0.2 2/24/98 Reply-To: Cy Schubert - ITSD Open Systems Group From: Cy Schubert - ITSD Open Systems Group X-OS: FreeBSD 2.2.8-RELEASE X-Sender: cy To: dg@root.com Cc: Cliff Skolnick , Mike Tancsa , freebsd-stable@FreeBSD.ORG, luoqi@FreeBSD.ORG, Matthew Dillon Subject: Re: vm_fault deadlock and PR 8416 ... NOT fixed! In-reply-to: Your message of "Wed, 12 May 1999 00:55:29 PDT." <199905120755.AAA01361@implode.root.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Wed, 12 May 1999 07:59:44 -0700 Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Would plan B risk corruption of any data? Could itself be the likely cause of any potential panics? Assuming plan B has no major risks, this might be a temporary workaround until we can wrap our minds around this one. It's just a rework of Luoqi's patch, just in case we want to try plan B again. --- kern_lock.c.orig Tue May 11 08:34:52 1999 +++ kern_lock.c Wed May 12 05:38:52 1999 @@ -215,7 +215,9 @@ * lock itself ). */ if (lkp->lk_lockholder != pid) { - if (p->p_flag & P_DEADLKTREAT) { + if ((p->p_flag & P_DEADLKTREAT) || + ((lkp->lk_flags & LK_SHARE_NONZERO) != 0 && + (flags & LK_CANRECURSE) != 0) { error = acquire( lkp, extflags, If this workaround doesn't work, then setting error = 0 and allowing the code to fall through to the subsequent sharelock may be our only choice for now. The other point I wish to make for all on this list is that Matt's patch fixes a read()/mmap() deadlock. It doesn't fix a write()/mmap() deadlock. Regards, Phone: (250)387-8437 Cy Schubert Fax: (250)387-5766 Open Systems Group Internet: Cy.Schubert@uumail.gov.bc.ca ITSD Cy.Schubert@gems8.gov.bc.ca Province of BC "e**(i*pi)+1=0" In message <199905120755.AAA01361@implode.root.com>, David Greenman writes: > >Well a few minutes ago my system went into deadlock - and this is with the > >kern_lock.c dated 5/11. This patch is different than the one in 8416 that > >solved my problem before. I'd say this the problem is still there. > > Time is very short for getting this fixed before the release deadline. I > think Luoqi's patch that was in the PR was suseptible to a priority inversion > problem and has risks associated with using it. The fix that Matt Dillion > made for -current that I back-ported to -stable was an attempt to fix the > problem while minimizing the side effects. If it doesn't fix the problem > then we'll proceed with plan B which is probably to just go with Luoqi's > fix or to possibly troubleshoot Matt's fix (but as I said, time is short). > > >Once again my server is useless, deadlocked. No panic, responding to pings, > >no ability to do disk I/O or any VM related stuff. > > > >An unhappy freebsd user once again, > > Is this really necessary? It sure doesn't help the debugging process. > > -DG > > David Greenman > Co-founder/Principal Architect, The FreeBSD Project - http://www.freebsd.org > Creator of high-performance Internet servers - http://www.terasolutions.com > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-stable" in the body of the message > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message