History log of /freebsd-10.1-release/sbin/fsck/
Revision Date Author Comments
272461 03-Oct-2014 gjb

Copy stable/10@r272459 to releng/10.1 as part of
the 10.1-RELEASE process.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


241807 21-Oct-2012 uqs

Make fsck and fsck_msdosfs WARNS=6 clean

- sprinkle const
- add volatile qualifier to avoid vfork clobbering

Inspired by: NetBSD
PR: bin/139802
Reviewed by: ed


241806 21-Oct-2012 uqs

sbin/fsck: s/perror/perr/ to avoid shadowing

- rename some other vars too
- merge NetBSD license changes

Obtained from: NetBSD
PR: bin/139802
Reviewed by: ed


227081 04-Nov-2011 ed

Add missing static keywords for global variables to tools in sbin/.

These tools declare global variables without using the static keyword,
even though their use is limited to a single C-file, or without placing
an extern declaration of them in the proper header file.


226711 25-Oct-2011 sobomax

Add new option -c to specify alternatve location of the /etc/fstab
file.

MFC after: 1 month


210933 06-Aug-2010 joel

Fix typos and spelling mistakes.


210382 22-Jul-2010 mckusick

Note that foreground fsck should be run after a filesystem related panic.

Suggested by: Mikhail Teterin (mi@)
MFC after: 1 week


199582 20-Nov-2009 netchild

Fix minor resource leak in a function which was introduced by changing an
err() to a return in r106254.

MFC after: 1 week


187931 30-Jan-2009 obrien

Add the '-C' "check clean" flag. If the FS is marked clean, skip file
system checking. However, if the file system is not clean, perform a
full fsck.

Reviewed by: delphij
Obtained from: Juniper Networks


141611 10-Feb-2005 ru

Sync program's usage() with manpage's SYNOPSIS.


141580 09-Feb-2005 ru

Fixed the misplaced $FreeBSD$.


131506 03-Jul-2004 ru

Deal with double whitespace.


131488 02-Jul-2004 ru

Mechanically kill hard sentence breaks.


128073 09-Apr-2004 markm

Remove advertising clause from University of California Regent's license,
per letter dated July 22, 1999.

Approved by: core, imp


123890 27-Dec-2003 bde

Use __printflike() and __dead2 instead of hard-coded gccisms.

Declare perror(). We define and use a home made version of perror(3)
that can't simply be removed (although it has the same interface as
perror(3)) since it is very different (it prints on stdout, doesn't
always print the program name, and sometimes exits). Declare it to
get a reminder of this brokenness when WARNS is increased enough.


123889 27-Dec-2003 bde

Garbage-collected hotroot, rawname() and unrawname() again. These
became garbage when block devices were axed and were removed a few
months later, but they came back (with hotroot renamed to hot + hotroot())
when the NetBSD fsck was mismerged.


123888 27-Dec-2003 bde

fsck_msdosfs/main.c:
- Don't use errexit() to (mis)implement usage(). Using errexit() just
gave the bogus exit code 8.
- Fixed 3 other style bugs in usage().

fsck/fsutil.[ch]:
- Garbage-collected errexit(). It is essentially just one of NetBSD's
fsck_ext2fs error printing functions, but we don't have fsck_ext2fs
and the function is unsuitable for use there too (since pfatal() is
also used and it printf to a different stream).


121690 29-Oct-2003 trhodes

Bump WARNS level and add a '?' to WARNS=.


121689 29-Oct-2003 trhodes

Remove redundant declaration of the perror() function, it's provided by stdio.h.
Don't define DKTYPENAMES without using it.


118062 26-Jul-2003 maxim

o Fix usage(): remove '-l', add missed '-f', sort.


118057 26-Jul-2003 simon

Remove references to the '-l' option in synopsis. The rest of the
description of this option was removed in v. 1.22.

PR: docs/54880
Submitted by: Lukas Ertl <l.ertl@univie.ac.at>
Approved by: ceri (mentor)


117031 29-Jun-2003 gordon

Convert fsck and mount to using execvP to find fsck_foo and mount_foo.
This simplifies the code path and makes the default path easy to override
in the /rescue case.

Submitted by: Tim Kientzle <kientzle@acm.org>


113994 25-Apr-2003 jmallett

Back out previous delta to fix fsck on filesystems without an fstab entry,
where we want to take the disklabel filesystem type of "4.2BSD" and use
fsck_4.2bsd on those filesystems.

Add a comment about why the code is there, now that we know:

* XXX This is a kludge to make automatic filesystem type guessing
* from the disklabel work for "4.2BSD" filesystems. It does a
* very limited subset of transliteration to a normalised form of
* filesystem name, and we do not seem to enforce a filesystem
* name character set.


111803 03-Mar-2003 jmallett

Strip out bogus difference from when this came from NetBSD: transliterating
upper-case alphabetical characters to lower-case ones, and spaces to dashes.
The person who added this when bringing the code from NetBSD has no idea why
he added it, and nobody on freebsd-fs came up with any cases where the icky
part (the conversion of spaces to underscores) was needed. The removal of
the upper-case conversion follows an even more obvious logic: it avoids any
sort of namespace issues. People using StUdLy caps for filesystem names
deserve everything they get. Otherwise, Efs and efs might be totally different
things, but would use the same fsck. And we don't want that, right? That
just provokes the sort of foot-shooting this would prevent.

If you have problems with this, I'll walk you through using sed on your fstab,
cause the only way you could have problems is if you spelled ufs as "UFS".
Most likely, you haven't done that.

MFC after: 1 month


108317 27-Dec-2002 schweikh

english(4) police.


107987 17-Dec-2002 phk

Straighten out a compound if() to improve readability marginally.


107788 12-Dec-2002 ru

Uniformly refer to a file system as "file system".

Approved by: re


106254 31-Oct-2002 phk

Give a meaningfull diagnostic when we cannot determine the filesystem type.


102231 21-Aug-2002 trhodes

s/filesystem/file system/g as discussed on -developers


99501 06-Jul-2002 charnier

The .Nm utility


96707 16-May-2002 trhodes

more file system > filesystem


95258 22-Apr-2002 des

Usage style sweep: spell "usage" with a small 'u'.
Also change one case of blatant __progname abuse (several more remain)
This commit does not touch anything in src/{contrib,crypto,gnu}/.


93102 24-Mar-2002 markm

Replace __progname with the functionally identical but more
acceptable (documented) getprogname(3).


92839 20-Mar-2002 imp

o __P removed
o ansi function prototypes
o unifdef -D__STDC__
o __dead2 on usage prototype
o remove now-bogus main prototype


87325 04-Dec-2001 obrien

Default to WARNS=2.
Binary builds that cannot handle this must explicitly set WARNS=0.

Reviewed by: mike


82139 22-Aug-2001 ru

mdoc(7) police: Fixed broken xrefs.


81911 19-Aug-2001 kris

Silence non-constant format string warnings by marking functions
as __printflike()/__printf0like(), adding const, or adding missing "%s"
format strings, as appropriate.

MFC after: 2 weeks


79754 15-Jul-2001 dd

Remove whitespace at EOL.


76143 30-Apr-2001 mckusick

Update usage message with new options.

Submitted by: Ruslan Ermilov <ru@FreeBSD.org>


76062 27-Apr-2001 ru

mdoc(7) police: update document date, sort xrefs, fix markup.


75936 25-Apr-2001 mckusick

Add support for running foreground (-F) and background (-B) checks.
Traditionally, fsck is invoked before the filesystems are mounted
and all checks are done to completion at that time. If background
checking is available, fsck is invoked twice. It is first invoked
at the traditional time, before the filesystems are mounted, with
the -F flag to do checking on all the filesystems that cannot do
background checking. It is then invoked a second time, after the
system has completed going multiuser, with the -B flag to do checking
on all the filesystems that can do background checking. Unlike
the foreground checking, the background checking is started
asynchonously so that other system activity can proceed even on
the filesystems that are being checked.

At the moment, only the fast filesystem supports background checking.
To be able to do background checking, a filesystem must have been
running with soft updates, not have been marked as needing a
foreground check, and be mounted and writable when the background
check is to be done (i.e., not listed as `noauto' in /etc/fstab).

These changes are the final piece needed to support background
filesystem checking. They will not have any effect until you update
your /etc/rc to invoke fsck in its new mode of operation. I am
still playing around with exactly what those changes should be
and should be committing them later this week.


75289 07-Apr-2001 phk

Don't make fsck go quite _that_ fast:
In Preen mode we only checked one partition per disk device.


75163 04-Apr-2001 ru

mdoc(7) police: use .Nm instead of hardcoded name.


75015 30-Mar-2001 phk

This change sanitizes the way fsck deals with pass numbers.

Consider this /etc/fstab:

# Device Mountpoint FStype Options Dump Pass#
/dev/ad1s1b none swap sw 0 0
/dev/ad0s1b none swap sw 0 0
/dev/ad0s1a / ufs rw 1 1
/dev/ad0s1e /home ufs rw 2 2
/dev/ad1s1e /tmp ufs rw 2 2
/dev/ad1s1f /usr ufs rw 2 2
/dev/ccd0c /syv ufs rw 2 11
proc /proc procfs rw 0 0

ccd0c is striped over /dev/ad0f and /dev/ad1g

Without this pass, fsck in preen mode will check ad0s1a first,
and then issue three processes in parallel:

One process doing ad0s1e
One process doing ad1s1e and ad1s1f
One process doing ccd0c

There is no way to tell it that ccd0c overlaps ad0 and ad1.

With the patch, it will do it this way:

pass 2:
One process doing ad0s1e
One process doing ad1s1e and ad1s1f

and when they are complete:

pass 11:
One process doing ccd0c

This is much faster and more sane.

Valid pass numbers are anything from 1 to INTMAX-1.

I retired the '-l' option which tried to allow people to do
something like this, but which didn't work and which complicated
the code an awful lot.


74815 26-Mar-2001 ru

- Backout botched attempt to introduce MANSECT feature.
- MAN[1-9] -> MAN.


74531 20-Mar-2001 ru

Set the default manual section for sbin/ to 8.


71895 01-Feb-2001 ru

mdoc(7) police: split punctuation characters + misc fixes.


70522 30-Dec-2000 phk

Use macro API to <sys/queue.h>

Submitted by: "Peter Avalos" <pavalos@theshell.com>
Reviewed by: /sbin/md5


70415 27-Dec-2000 phk

When trying to deduce the diskname from the name so we can run
parallel fsck's one per drive, use the shortest prefix ending in
a digit rather than the longest prefix ending in a digit.

This makes "/dev/ad0s1a" and "/dev/ad0s2a" appear to both reside
on the disk "/dev/ad0" and consequently they will be fsck'ed
sequentially rather than in parallel as now.

In general this heuristic is rather soft and errorprone. For
instance ccd may often reside on two or more physical disks. A
good solution would be to look for passes larger than 1 until no
disks are found in a particular pass, that way people could put
ccd stripes in pass 3... and have them fsck'ed sequentially.

Reviewed by: mjacob


70413 27-Dec-2000 phk

Use official API to <sys/queue.h> instead of groping around inside the
data structures.

Reviewed by: imp


70152 18-Dec-2000 ru

Prepare for mdoc(7)NG.


68960 20-Nov-2000 ru

mdoc(7) police: use the new features of the Nm macro.


68878 18-Nov-2000 ru

mdoc(7) police: fix errors uncovered by the new feature of the Nm macro.


66918 10-Oct-2000 obrien

We want the FreeBSD ID as the RCS ID, not the NetBSD one.


66915 10-Oct-2000 bde

Fixed breakage of CFLAGS and misplacement of $FreeBSD$ in previous commit.


66869 09-Oct-2000 adrian

.. fsck wrappers aftercommit #1: I don't know how these files got lost,
but they did. Oops.


66868 09-Oct-2000 adrian

Reviewed by: rwatson, bp
Approved by: rwatson
Obtained from: NetBSD source tree

Second part of the fsck wrappers commit. This commit enables the new fsck
code (removing the fsck/* code and replacing it with the netbsd fsck
wrapper code), and enabling some FFS-based utilities to compile.

Details:

* quotacheck, fsdb required modification to use the fsck_ffs/ code rather
than fsck/ . This might change later since quotacheck requires preen.c
which should exist in fsck/ rather than fsck_ffs/

* src/Makefile has fsck_ffs added to it so it it built as part of the tree
now

* share/doc/smm/03.fsck/ uses the SMM.doc/ stuff from fsck_ffs, not fsck.

I've tested this, and it shouldn't require any changes on your machine.
The fsck wrapper reads /etc/fsck and is command-line-compatible enough
to not require rc changes (well, most changes unless you want to do
anything nifty by specifying the fs types explicityly, read the man page
if you want further details on what it can do.)

This now allows us to support multiple filesystem types during bootup.


66773 06-Oct-2000 kris

Format string fix.


63810 24-Jul-2000 mckusick

If the lost+found directory is created by fsck, it will do a cacheino()
which sets the inoinfo's i_parent and i_dotdot to 0, but they never get
set to ROOTINO. This means that propagate will never find lost+found and
its descendents, subdirectories will remain DSTATE (instead of DFOUND)
even though they *are* correctly linked in, and pass4.c will try to
clear them unsuccessfully, thinking that there is no link count from the
DSTATE directory's parent. The result is that you need to run fsck twice
and get link count increasing errors (which are unexpected and fatal
when running in preen mode). The fix is to set i_parent and i_dotdot to
"parent" after the second cacheino() call in dir.c:allocdir().

Obtained from: "Ethan Solomita" <ethan@geocast.com> (of the NetBSD Project)


63231 15-Jul-2000 mckusick

Make a tighter test for valid inode numbers in getnextinode().


63003 12-Jul-2000 mckusick

Ensure that block and character devices as well as fifo's and sockets
all have zero length. A non-zero length panic's the kernel when one
of these is deleted.

PR: 19426
Submitted by: Ian Dowse <iedowse@maths.tcd.ie>
Reviewed by: dwmalone@FreeBSD.org


62668 06-Jul-2000 mckusick

Teach fsck about snapshot files. These changes should have no
effect on operation of fsck on filesystems without snapshots.
If you get compilation errors, be sure that you have copies of
/usr/include/sys/mount.h (1.94), /usr/include/sys/stat.h (1.21),
and /usr/include/ufs/ffs/fs.h (1.16) as of July 4, 2000 or later.


57573 28-Feb-2000 mckusick

Yesterday I had to fix a badly broken disk, and found that fsck kept dying:

DIR I=64512 CONNECTED. PARENT WAS I=4032
fsck: cannot find inode 995904

fsdb found the inodes with no problem:

fsdb (inum: 64512)> inode 995904
current inode: directory
I=995904 MODE=40777 SIZE=512
MTIME=Feb 14 15:27:07 2000 [0 nsec]
CTIME=Feb 14 15:27:07 2000 [0 nsec]
ATIME=Feb 24 10:31:58 2000 [0 nsec]
OWNER=nobody GRP=nobody LINKCNT=4 FLAGS=0 BLKCNT=2 GEN=38a41386
Direct blocks: 8094568 0 0 0 0 0 0 0 0 0 0 0
Indirect blocks: 0 0 0

The problem turns out to be a program logic error in fsck. It stores
directory inodes internally in hash lists, using the number of
directories to form the hash key:

inpp = &inphead[inumber % numdirs];

Elsewhere, however, it increments numdirs when it finds unattached
directories. I've made the following fix, which solved the problem in
the case in hand.

Submitted by: Greg Lehey <grog@lemis.com>
Reviewed by: Matthew Dillon <dillon@apollo.backplane.com>
Approved by: Kirk McKusick <mckusick@mckusick.com>


55773 10-Jan-2000 peter

Fix the use of an uninitialized variable in the previous commit.

Also, in addition to the previous log message, the last change had a fix
for the case where where f.mntfromname is a relative path like da0a.

Submitted by: bde


55725 10-Jan-2000 peter

- Style/bde changes.
- Don't use realpath as stat does the right thing.
- Only check ufs filesystems in getmntpt.
- Dont' bother checking that the ufs-mounted-on
device is a special file. It *must* be a special
file, or ufs wouldn't have mounted it.

Submitted by: Paul Saab <ps@yahoo-inc.com>


55724 10-Jan-2000 peter

- Forgot to nuke hotroot completely.

Submitted by: Paul Saab <ps@yahoo-inc.com>


55275 30-Dec-1999 peter

Make fsck(8) do a MNT_RELOAD after cleaning for all read-only mounted
filesystems, not just for the root fs.

Reviewed by: mckusick
Submitted by: Paul Saab <ps@yahoo-inc.com>


53781 27-Nov-1999 phk

Make fsck even more char/blk dev tolerant.


53754 27-Nov-1999 phk

Allow root-reloading also for chr devices.


50476 28-Aug-1999 peter

$Id$ -> $FreeBSD$


48935 20-Jul-1999 phk

Also check against chardevs when looking for root.


41477 03-Dec-1998 julian

Cosmetic and documentation changes brought from earlier FreeBSD versions.
(e.g. RCS Id:)


41474 03-Dec-1998 julian

Reviewed by: Don Lewis <Don.Lewis@tsc.tdk.com>
Submitted by: Kirk McKusick <mckusick@McKusick.COM>
Obtained from: Mckusick, BSDI and a host of others

This exactly matches Kirks sources imported under the
Tag MCKUSICK2. These are as supplied by kirk with one small
change needed to compile under freeBSD.

Some FreeBSD patches will be added back, though many have been
added to Kirk's sources already.


41471 02-Dec-1998 julian

These shouldn't have been checked in here..

Reviewee by:


41462 02-Dec-1998 julian

This commit was generated by cvs2svn to compensate for changes in r41461,
which included commits to RCS files with non-trunk default branches.


40918 05-Nov-1998 mjacob

For large filesystems you can run past default resource limits causing
fsck to exit unhappily. Fix this by doing a getrlimit/setrlimit for
RLIMIT_DATA. I made the same fix in NetBSD.

Reviewed by: dg@root.com


39584 23-Sep-1998 nate

- Back out softupdate change that already existed in FreeBSD from V1.6,
which caused the reference count of a directory to get doubly
decremented.

PR: bin/8030
Reviewed by: nate
Submitted by: Don Lewis <Don.Lewis@tsc.tdk.com>


38328 15-Aug-1998 dfr

Use explicitly sized types when laying out the cylinder groups. This
bug was the cause of the 'freeing free frag' panics that people have been
seeing with FreeBSD/alpha. I have a similar patch to newfs but I've not
finished testing it.


38067 04-Aug-1998 phk

There seem to be two messages that were added with soft-updates
support, which need a final "\n". I only observed one line of
mangled output, but I think there is another one which suffers
from the same problem, and thus I provide a patch that covers
both.

PR: 7483
Reviewed by: phk
Submitted by: Stefan Esser <se@FreeBSD.org>


38002 01-Aug-1998 dfr

Avoid trying to malloc > (1<<32) bytes of memory due to an arithmetic
underflow on the alpha.


37443 06-Jul-1998 bde

Restored rev.1.11, which I somehow clobbered in rev.1.12.


37236 28-Jun-1998 bde

Fixed printf format errors.


37000 15-Jun-1998 charnier

Correct use of .Nm. Add rcsid. Remove unused #includes. Use err(3).


36681 05-Jun-1998 julian

Reviewed by: Kirk Mckusick (mckusick@mckusick.com)
Submitted by: luoqi Chen
fix a type in fsck.
(also add a comment that got picked up by mistake but is worth adding)


35095 07-Apr-1998 bde

Guess the position of the drive number in the device name better so
that `fsck -p' doesn't check multiple slices on the same drive
concurrently. Don't invoke undefined behaviour when searching for
the drive number in strange device names.

PR: 6129
Reviewed by: phk
Submitted by: Yuichi MATSUTAKA <matutaka@osa.att.ne.jp>, but rewritten
by me.


34266 08-Mar-1998 julian

Reviewed by: dyson@freebsd.org (john Dyson), dg@root.com (david greenman)
Submitted by: Kirk McKusick (mcKusick@mckusick.com)
Obtained from: WHistle development tree


34033 04-Mar-1998 phk

If numdirs is zero, print a helpful message instead of divding by zero later.


33139 06-Feb-1998 jhay

opt_diagnostic.h isn't needed anymore.


33118 05-Feb-1998 jhay

fsdb and fsck use the ffs code which needs opt_diagnostic.h.


32622 19-Jan-1998 bde

Guard against a block size of 0 in the label. When the first
superblock is invalid, fsck looks at the label to help guess where
the next superblock should be. If the partition type is 4.2BSD,
fsck assumed that the block size was valid and divided by it, so
it dumped core if the size was 0.

Initialization of the label was broken almost 3 years ago in rev.1.9
of newfs/newfs.c. Newfs does not change the label at all, so there
is no problem (except the breakage of the automatic search for
backup superblocks) unless something else sets the partition type
to 4.2BSD. However, it is too easy to set partition types to
4.2.BSD by copying an old label or by using a disktab entry to
create the label.

PR: 2537


31910 21-Dec-1997 bde

Fixed overflow in chkrange(). Some out of bounds block numbers,
e.g. -1, were not detected. Use a bulletproof check that doesn't
depend on special properties of the args or the limit.

PR: 3528


31904 20-Dec-1997 bde

Fixed style bugs in the printing of statistics after preening. Use
floating point better in the percentage calculation there to avoid
overflow when there are more than about 20 million fragments. Start
using floating point in the other percentage calculation to avoid
overflow when there are more than about 2 million fragments.

Fixed printf format strings.

Converted sccsid to rcsid.


31903 20-Dec-1997 bde

Don't attempt to print the statistics for a "clean" preened filesystem
when there isn't even a filesystem. Attempting to print them tended
to cause SIGSEGV or SIGFPE depending on how far setup() got before it
returned 0. This was broken in the previous revision by removing a
return statement that the previous case depended on falling into.

PR: 4840 (fixed by this commit)
PR: 2537 (possibly fixed by Lite2 merge and later changes. setup()
does more checking now)


24002 18-Mar-1997 peter

patch up some "int *" vs. "time_t *" (long) mismatches. They could be
nasty if sizeof(int) != sizeof(long).


23999 18-Mar-1997 peter

Restore check for ridiculous directory sizes.


23844 13-Mar-1997 peter

Kill the Lite2 early "filesystem clean abort" check and go back to
something closer to how we used to do it. The Lite2 way is to check the
"fsclean" flag in the superblock and stop there if so (during preen).
We now do the various superblock sanity checks that we used to do before
since it's cheap. We now get the filesystem state summary again instead
of "FILESYSTEM CLEAN; CHECKING SKIPPED" (or whatever).


23799 12-Mar-1997 bde

Finished (?) merging with Lite2: cleaned up #include mess.


23798 12-Mar-1997 bde

Finished (?) merging with Lite2: cleaned up #include mess.

Fixed style bugs in FreeBSD changes.


23797 12-Mar-1997 bde

Finished (?) merging with Lite2: cleaned up #include mess and fixed a
style bug.

Removed a redundant declaration.


23796 12-Mar-1997 bde

Finished (?) merging with Lite2: cleaned up #include mess.

Fixed misformatting in a comment.


23795 12-Mar-1997 bde

Finished (?) merging with Lite2: cleaned up #include mess.

Updated getopt() usage.


23794 12-Mar-1997 bde

Restored lost reference to fsdb(8).

Fixed weird quoting of $Id$.


23675 11-Mar-1997 peter

Merge from Lite2. Note that Lite2 has it's own filesystem clean check
skipping code that overrides ours sooner. One should be eliminated,
but for now it works.


22990 22-Feb-1997 peter

Revert $FreeBSD$ to $Id$


21673 14-Jan-1997 jkh

Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.


21635 13-Jan-1997 wosch

Sort cross references.


19702 13-Nov-1996 julian

Submitted by: Archie@whistle.com

clear the fmod flag if it's set.


19212 27-Oct-1996 phk

Don't give up just because we cant find the blkdev that corresponds
to the name given as a chardev.


19185 25-Oct-1996 joerg

Allow the specification of a mountpoint, and resolve it s disk device
using the fstab.

Closes PR bin/129.

Submitted by: jmg@nike.efn.org (John-Mark Gurney)


18808 08-Oct-1996 guido

Fix the case where fsck would not see sparse directories and the kernel would
panic. If such a thing is fixed fsck needs a rerun (and bugs the user to do
so).

Reviewed by: Kirk McKusick


18405 20-Sep-1996 nate

ts_sec -> tv_sec
ts_nsec -> tv_nsec


18286 14-Sep-1996 bde

Don't use __dead or __pure in user code. They were obfuscations
for gcc >= 2.5 and no-ops for gcc >= 2.6. Converted to use __dead2
or __pure2 where it wasn't already done, except in math.h where use
of __pure was mostly wrong.


15699 09-May-1996 nate

From: Terry Lambert <terry@lambert.org>
Subject: Fix for annoying fsck bug
Date: Wed, 24 Jan 1996 13:33:29 -0700 (MST)

The following small diff fixes the annoying fsck bug that causes it to
need to be run twice to end up with correct reference counts for inodes
for directories that had subdirectories relocated into the lost+found
directory.

I found the need to rerun *extremely* annoying. This fix causes the
count to be correctly adjusted later in pass 4 by correctly stating
the parent reference count.

Note that the parent reference count is incremented when the directory
entry is made (for ".."), but is not really there in the case of a
directory that does not make an entry in its parent dir.

This can be tested by waiting for the inode sync after cd'ing from a
shell into a test fs. Then you "mkdir xxx yyy zzz", wait a second,
and hit the machine reset button.

Reviewed by: nate (Tested lots of crashes :)
Submitted by: Terry Lambert <terry@lambert.org>


13922 05-Feb-1996 mpp

Correct some man page cross references and some file
locations.


11750 23-Oct-1995 ache

Remove unneeded ctype.h


8871 30-May-1995 rgrimes

Remove trailing whitespace.


7601 02-Apr-1995 bde

Update declaration to match the change made to dir.c a few hours ago.


7586 02-Apr-1995 bde

Submitted by: Philippe Charnier <charnier@lirmm.fr>, distilled by bde

Fix a couple more bogus types that aren't reported by `gcc -Wall'.


7585 02-Apr-1995 bde

Submitted by: phk, added to by bde

Fix all the warnings from `gcc -Wall'.


7106 17-Mar-1995 phk

Remove reference to fsdb(8). We don't have it.


6405 15-Feb-1995 dg

Slight change of wording on clean flag not set message to appease some
complaints.


6404 15-Feb-1995 dg

>The fix for the missing ".." in the root directory is enclosed below.

Submitted by: Kirk McKusick


6280 09-Feb-1995 bde

Don't allow the alternate superblock block number for one file system
to apply to others (except when it is given on the command line).


2605 09-Sep-1994 dg

Woops, last patch was by Wolfgang Solfrank.


2603 09-Sep-1994 dg

Two fixes from the NetBSD group (Charles Hannum):

1) dir.c: get byte order right in mkentry()
2) pass1.c: When doing -c2 conversion, do secsize reads for a symlink -
not doing so was causing the conversion to fail because the device
driver can't deal with short reads.


2179 21-Aug-1994 dg

Better support for clean bit: prompt the user to fix it if it's wrong
when not preening, and indicate if it was fixed when preening.


2153 20-Aug-1994 dg

Added filesystem clean bit support. This only affects fsck during a
preen (-p), and in that case the filesystem is skipped if it is clean.
A new flag "-f" for 'force' has been added which basically gives back
the old behavior of checking all the filesystems all the time. This
very closely models the behavior of SunOS and Ultrix.


1855 05-Aug-1994 wollman

Convert to our man installation style. Also fixed long-standing bug
in `fastboot'/`fasthalt' in which the interpreter would hang around
after `reboot' or `halt' is run, causing an irritating ``Killed'' message.


1820 02-Aug-1994 dg

Fixed so that it can grok old style "fastlinks".


1559 26-May-1994 rgrimes

This commit was generated by cvs2svn to compensate for changes in r1558,
which included commits to RCS files with non-trunk default branches.