Date: Mon, 15 Oct 2001 03:20:04 -0700 (PDT) From: "Crist J. Clark" <cristjc@earthlink.net> To: freebsd-bugs@FreeBSD.org Subject: Re: bin/31199: tunefs error is incorrect when enabling softupdates Message-ID: <200110151020.f9FAK4a06303@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR bin/31199; it has been noted by GNATS. From: "Crist J. Clark" <cristjc@earthlink.net> To: Rob Simmons <rsimmons@mail.wlcg.com> Cc: FreeBSD-gnats-submit@FreeBSD.ORG Subject: Re: bin/31199: tunefs error is incorrect when enabling softupdates Date: Mon, 15 Oct 2001 02:44:10 -0700 On Wed, Oct 10, 2001 at 11:46:07AM -0400, Rob Simmons wrote: [snip] > When tunefs is used to enable softupdates, it gives conflicting mesages if > the filesystem is mounted. > >How-To-Repeat: > run "tunefs -n enable <fs>" on a mounted filesystem. > > You will get the following output: > > bash-2.05$ tunefs -n enable /dev/ad0s1a > tunefs: soft updates set > tunefs: cannot open /dev/ad0s1a: Permission denied Looking at the code, I think the least obtrusive way to fix this is to slightly reword the messages a little more clear. tunefs(8) goes through all of the options before it actually tries to modify the file system. The messages should reflect that it is collecting the values before it actually tries to write them. Something more like, $ tunefs -n enable /dev/ad0s1a tunefs: setting soft updates... tunefs: cannot open /dev/ad0s1a: Permission denied And in a successful run (since tunefs(8) is already chatty on success), $ tunefs -n enable /dev/ad0s1a tunefs: setting soft updates... tunefs: changes on /dev/ad0s1 done This patch look good? Index: tunefs.c =================================================================== RCS file: /export/ncvs/src/sbin/tunefs/tunefs.c,v retrieving revision 1.20 diff -u -r1.20 tunefs.c --- tunefs.c 2001/09/30 14:57:08 1.20 +++ tunefs.c 2001/10/15 09:43:07 @@ -231,7 +231,7 @@ warnx("%s remains unchanged as %d", name, avalue); } else { - warnx("%s changes from %d to %d", + warnx("changing %s from %d to %d...", name, sblock.fs_maxcontig, avalue); sblock.fs_maxcontig = avalue; } @@ -242,7 +242,7 @@ warnx("%s remains unchanged as %dms", name, dvalue); } else { - warnx("%s changes from %dms to %dms", + warnx("changing %s from %dms to %dms...", name, sblock.fs_rotdelay, dvalue); sblock.fs_rotdelay = dvalue; } @@ -253,7 +253,7 @@ warnx("%s remains unchanged as %d", name, evalue); } else { - warnx("%s changes from %d to %d", + warnx("changing %s from %d to %d...", name, sblock.fs_maxbpg, evalue); sblock.fs_maxbpg = evalue; } @@ -264,7 +264,7 @@ warnx("%s remains unchanged as %d", name, fvalue); } else { - warnx("%s changes from %d to %d", + warnx("changing %s from %d to %d...", name, sblock.fs_avgfilesize, fvalue); sblock.fs_avgfilesize = fvalue; } @@ -275,7 +275,7 @@ warnx("%s remains unchanged as %d%%", name, mvalue); } else { - warnx("%s changes from %d%% to %d%%", + warnx("changing %s from %d%% to %d%%...", name, sblock.fs_minfree, mvalue); sblock.fs_minfree = mvalue; if (mvalue >= MINFREE && sblock.fs_optim == FS_OPTSPACE) @@ -294,14 +294,14 @@ name); } else { sblock.fs_flags |= FS_DOSOFTDEP; - warnx("%s set", name); + warnx("setting %s...", name); } } else if (strcmp(nvalue, "disable") == 0) { if ((~sblock.fs_flags & FS_DOSOFTDEP) == FS_DOSOFTDEP) { warnx("%s remains unchanged as disabled", name); } else { sblock.fs_flags &= ~FS_DOSOFTDEP; - warnx("%s cleared", name); + warnx("clearing %s...", name); } } } @@ -313,7 +313,7 @@ warnx("%s remains unchanged as %s", name, chg[ovalue]); } else { - warnx("%s changes from %s to %s", + warnx("changing %s from %s to %s...", name, chg[sblock.fs_optim], chg[ovalue]); sblock.fs_optim = ovalue; if (sblock.fs_minfree >= MINFREE && @@ -330,7 +330,7 @@ warnx("%s remains unchanged as %d", name, svalue); } else { - warnx("%s changes from %d to %d", + warnx("changing %s from %d to %d...", name, sblock.fs_avgfpdir, svalue); sblock.fs_avgfpdir = svalue; } @@ -396,6 +396,7 @@ for (i = 0; i < fs->fs_ncg; i++) bwrite(fsbtodb(fs, cgsblock(fs, i)), (const char *)fs, SBSIZE); + warnx("changes on %s done", file); close(fi); } -- Crist J. Clark | cjclark@alum.mit.edu | cjclark@jhu.edu http://people.freebsd.org/~cjc/ | cjc@freebsd.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200110151020.f9FAK4a06303>