From owner-cvs-sys Fri Apr 18 23:04:24 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id XAA28030 for cvs-sys-outgoing; Fri, 18 Apr 1997 23:04:24 -0700 (PDT) Received: (from kato@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id XAA28022; Fri, 18 Apr 1997 23:04:20 -0700 (PDT) Date: Fri, 18 Apr 1997 23:04:20 -0700 (PDT) From: KATO Takenori Message-Id: <199704190604.XAA28022@freefall.freebsd.org> To: CVS-committers, cvs-all, cvs-sys Subject: cvs commit: src/sys/miscfs/union union_vfsops.c src/sys/miscfs/nullfs null_vfsops.c Sender: owner-cvs-sys@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk kato 97/04/18 23:04:17 Modified: sys/miscfs/nullfs null_vfsops.c sys/miscfs/union union_vfsops.c Log: Avoid `lock against myself' panic by following operation: # mount -t union (or null) dir1 dir2 # mount -t union (or null) dir2 dir1 The function namei in union_mount calls union_root. The upper vnode has been already locked and vn_lock in union_root causes above panic. Add printf's included in `#ifdef DIAGNOSTIC' for EDEADLK cases. Revision Changes Path 1.17 +17 -4 src/sys/miscfs/nullfs/null_vfsops.c 1.16 +16 -2 src/sys/miscfs/union/union_vfsops.c