From owner-freebsd-current Tue Sep 22 20:29:15 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id UAA13874 for freebsd-current-outgoing; Tue, 22 Sep 1998 20:29:15 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from smtp03.primenet.com (smtp03.primenet.com [206.165.6.133]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id UAA13846 for ; Tue, 22 Sep 1998 20:29:06 -0700 (PDT) (envelope-from tlambert@usr06.primenet.com) Received: (from daemon@localhost) by smtp03.primenet.com (8.8.8/8.8.8) id UAA09379; Tue, 22 Sep 1998 20:29:02 -0700 (MST) Received: from usr06.primenet.com(206.165.6.206) via SMTP by smtp03.primenet.com, id smtpd009334; Tue Sep 22 20:29:00 1998 Received: (from tlambert@localhost) by usr06.primenet.com (8.8.5/8.8.5) id UAA19271; Tue, 22 Sep 1998 20:28:56 -0700 (MST) From: Terry Lambert Message-Id: <199809230328.UAA19271@usr06.primenet.com> Subject: Re: Yet another patch to try for softupdates panic To: luoqi@watermarkgroup.com (Luoqi Chen) Date: Wed, 23 Sep 1998 03:28:56 +0000 (GMT) Cc: Don.Lewis@tsc.tdk.com, current@FreeBSD.ORG, luoqi@watermarkgroup.com, mckusick@flamingo.McKusick.COM In-Reply-To: <199809221605.MAA01306@lor.watermarkgroup.com> from "Luoqi Chen" at Sep 22, 98 12:05:22 pm X-Mailer: ELM [version 2.4 PL25] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > Yes, there's a race here, and also a couple of other places VOP_FSYNC() are > called. > > > You could tweak this call to VOP_FSYNC() to get it to avoid the > > call to softdep_fsync(), but how many other places in the kernel > > also need to be fixed? It may be better to only call softdep_fsync() > > from within the fsync() syscall handler. I don't know that any other > > users of VOP_FSYNC() need to ensure that the parent directories are > > pushed to disk. > > I totally agree. This is the way to go. I'll try this and let you know > how it turns out. I would be wary of this; specifically, consider the case of a softdep mounted root with a /dev directory, and the need to commit dirty blocks to a specfs device. I believe that Julian can comment on this, since we looked at this in the early days of the "sync not honoring dependency order" bug, and decided that there was a problem with the vm object commits for the devices themselves, and thus for things like the superblock and other "external" metadata. Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message