From owner-freebsd-hackers Mon Feb 10 05:21:01 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id FAA01977 for hackers-outgoing; Mon, 10 Feb 1997 05:21:01 -0800 (PST) Received: from dg-rtp.dg.com (dg-rtp.rtp.dg.com [128.222.1.2]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id FAA01951 for ; Mon, 10 Feb 1997 05:20:46 -0800 (PST) Received: by dg-rtp.dg.com (5.4R3.10/dg-rtp-v02) id AA24719; Mon, 10 Feb 1997 08:20:08 -0500 Received: from ponds by dg-rtp.dg.com.rtp.dg.com; Mon, 10 Feb 1997 08:20 EST Received: from lakes.water.net (lakes [10.0.0.3]) by ponds.water.net (8.8.3/8.7.3) with ESMTP id HAA00407; Mon, 10 Feb 1997 07:46:03 -0500 (EST) Received: (from rivers@localhost) by lakes.water.net (8.8.3/8.6.9) id HAA26033; Mon, 10 Feb 1997 07:50:29 -0500 (EST) Date: Mon, 10 Feb 1997 07:50:29 -0500 (EST) From: Thomas David Rivers Message-Id: <199702101250.HAA26033@lakes.water.net> To: ponds!critter.dk.tfs.com!phk Subject: Re: daily panics, ffs_valloc: dup alloc - Good news! Cc: ponds!root.com!dg, ponds!freebsd.org!hackers, ponds!freebsd.org!joerg Content-Type: text Sender: owner-hackers@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Poul-Henning Kamp > > In message <199702091853.NAA24339@lakes.water.net>, Thomas David Rivers writes: > > > >I built a new "newfs", with NTRACKS bumped to 2 and NSECTORS dropped > >to 2048. > > > >It worked like a champ! No more panic: ffs_valloc: dup alloc. > > > >I'd say the problem is that the underlying code can't handle one > >track (head). > > > >We should probably go ahead and use this work-around in 2.1.7 and > >2.2. Perhaps, if we're so inclined, we can determine what a > >better fix would be to keep the 1 track idea. [It could possibly > >be simply setting fs->fs_cgmask to 0 if the number of tracks is 1; but > >I'm not sure.] That investigation could wait until after 2.2 and > >2.1.7. > > I've looked at the code, and I cannot see how it could be because > of fs_cgmask being 0xffffffff. > > There must be some other explanation. > > Do you have the first couple of hundred lines from a dumpfs on the > filesystem (when made with heads=1 ?) > I'll try getting it with a fixit floppy. But, if you'll read my previous writeup; you'll see that a fs_cgmask of 0xffffffff causes a problem in the cgstart macro: #define cgstart(fs, c) \ (cgbase(fs, c) + (fs)->fs_cgoffset * ((c) & ~((fs)->fs_cgmask))) effectively eliminating the fs_cgoffset value. This is what we're guessing is the problem. > -- > Poul-Henning Kamp | phk@FreeBSD.ORG FreeBSD Core-team.