From owner-freebsd-current Mon Mar 24 12:22:49 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id MAA02838 for current-outgoing; Mon, 24 Mar 1997 12:22:49 -0800 (PST) Received: from helbig.informatik.ba-stuttgart.de (helbig.informatik.ba-stuttgart.de [141.31.166.22]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id MAA02833 for ; Mon, 24 Mar 1997 12:22:36 -0800 (PST) Received: (from helbig@localhost) by helbig.informatik.ba-stuttgart.de (8.8.5/8.8.5) id VAA06956; Mon, 24 Mar 1997 21:20:25 +0100 (MET) From: Wolfgang Helbig Message-Id: <199703242020.VAA06956@helbig.informatik.ba-stuttgart.de> Subject: Re: todays world... In-Reply-To: <199703241754.RAA03608@shadows.aeon.net> from mika ruohotie at "Mar 24, 97 07:54:45 pm" To: bsdcur@shadows.aeon.net (mika ruohotie) Date: Mon, 24 Mar 1997 21:20:24 +0100 (MET) Cc: current@freebsd.org X-Mailer: ELM [version 2.4ME+ PL30 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-current@freebsd.org X-Loop: FreeBSD.org Precedence: bulk Hi Mika, > > ===> sbin/dumpfs > > cc -O2 -m486 -pipe -c /usr/src/sbin/dumpfs/dumpfs.c > > /usr/src/sbin/dumpfs/dumpfs.c: In function `dumpfs': > > /usr/src/sbin/dumpfs/dumpfs.c:150: structure has no member named `fs_headswitch'/usr/src/sbin/dumpfs/dumpfs.c:150: structure has no member named `fs_trkseek' > > *** Error code 1 > > > > Stop. > > > > died. > > > > cvsup:ed from cvsup.internat.freebsd.org around 9:ish GMT > > well... > > *gasp* > > i found an error and this was the fix i was able to figure easily, not > that i know it's the right one, but it might be the right one. > > i guess there's first time for everything... =) > > > shadows# diff -u fs.h.orig fs.h > --- fs.h.orig Mon Mar 24 19:38:20 1997 > +++ fs.h Mon Mar 24 19:41:03 1997 > @@ -176,6 +176,8 @@ > /* these are configuration parameters */ > int32_t fs_minfree; /* minimum percentage of free blocks */ > int32_t fs_rotdelay; /* num of ms for optimal next block */ > + int32_t fs_headswitch; /* dont expect me to know what i am */ > + int32_t fs_trkseek; /* actually doing, it might work tho */ > int32_t fs_rps; /* disk revolutions per second */ > /* these fields can be computed from the others */ > int32_t fs_bmask; /* ``blkoff'' calc of blk offsets */ > shadows# > > > after that it compiles... (ok, so it looks easy...) =) Sorry Mickey, but your fix does'not seem to work. As I learned from the cvs log messages for the two latest committments to sys/ufs/ffs/fs.h, the two fields fs_headswitch and fs_trkseek are not used any more and their space is taken by the new field fs_id[2]. The structure fs describes the superblock, i. e. a fixed length entity on the harddisk and you should by no means change the size of it in fs.h. Programs #including fs.h might crash your file system and you might have to resort to your backup tapes. For this reason I propose the following patch to be applied to dumpfs.c : (I *do* hope its not too late for you) Wishing you luck, Wolfgang Index: dumpfs.c =================================================================== RCS file: /usr/cvsroot/src/sbin/dumpfs/dumpfs.c,v retrieving revision 1.6 diff -c -r1.6 dumpfs.c *** dumpfs.c 1997/03/11 12:12:26 1.6 --- dumpfs.c 1997/03/24 19:42:20 *************** *** 146,153 **** printf("minfree\t%d%%\toptim\t%s\tmaxcontig %d\tmaxbpg\t%d\n", afs.fs_minfree, afs.fs_optim == FS_OPTSPACE ? "space" : "time", afs.fs_maxcontig, afs.fs_maxbpg); ! printf("rotdelay %dms\theadswitch %dus\ttrackseek %dus\trps\t%d\n", ! afs.fs_rotdelay, afs.fs_headswitch, afs.fs_trkseek, afs.fs_rps); printf("ntrak\t%d\tnsect\t%d\tnpsect\t%d\tspc\t%d\n", afs.fs_ntrak, afs.fs_nsect, afs.fs_npsect, afs.fs_spc); printf("symlinklen %d\ttrackskew %d\tinterleave %d\tcontigsumsize %d\n", --- 146,153 ---- printf("minfree\t%d%%\toptim\t%s\tmaxcontig %d\tmaxbpg\t%d\n", afs.fs_minfree, afs.fs_optim == FS_OPTSPACE ? "space" : "time", afs.fs_maxcontig, afs.fs_maxbpg); ! printf("rotdelay %dms\trps\t%d\n", ! afs.fs_rotdelay, afs.fs_rps); printf("ntrak\t%d\tnsect\t%d\tnpsect\t%d\tspc\t%d\n", afs.fs_ntrak, afs.fs_nsect, afs.fs_npsect, afs.fs_spc); printf("symlinklen %d\ttrackskew %d\tinterleave %d\tcontigsumsize %d\n",