From owner-cvs-all Wed Oct 9 0:28:37 2002 Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A647F37B401; Wed, 9 Oct 2002 00:28:36 -0700 (PDT) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 57D1143E42; Wed, 9 Oct 2002 00:28:36 -0700 (PDT) (envelope-from mckusick@FreeBSD.org) Received: from freefall.freebsd.org (mckusick@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.6/8.12.6) with ESMTP id g997SaCo040234; Wed, 9 Oct 2002 00:28:36 -0700 (PDT) (envelope-from mckusick@freefall.freebsd.org) Received: (from mckusick@localhost) by freefall.freebsd.org (8.12.6/8.12.6/Submit) id g997SamI040233; Wed, 9 Oct 2002 00:28:36 -0700 (PDT) Message-Id: <200210090728.g997SamI040233@freefall.freebsd.org> From: Kirk McKusick Date: Wed, 9 Oct 2002 00:28:36 -0700 (PDT) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/ufs/ufs inode.h X-FreeBSD-CVS-Branch: HEAD Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG mckusick 2002/10/09 00:28:36 PDT Modified files: sys/ufs/ufs inode.h Log: When creating a snapshot, create a list of initially allocated blocks. Whenever doing a copy-on-write check, first look in the list of initially allocated blocks to see if it is there. If so, no further check is needed. If not, fall through and do the full check. This change eliminates one of two known deadlocks caused by snapshots. Handling the second deadlock will be the subject of another check-in. This change also reduces the cost of the copy-on-write check by speeding up the verification of frequently checked blocks. Sponsored by: DARPA & NAI Labs. Revision Changes Path 1.41 +3 -1 src/sys/ufs/ufs/inode.h To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message