The NetBSD Project

CVS log for src/sbin/fsck_ffs/fsck.h

[BACK] Up to [cvs.NetBSD.org] / src / sbin / fsck_ffs

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.58 / (download) - annotate - [select for diffs], Tue Jul 4 20:40:53 2023 UTC (7 months, 4 weeks ago) by riastradh
Branch: MAIN
CVS Tags: HEAD
Changes since 1.57: +4 -5 lines
Diff to previous 1.57 (colored)

fsck_ffs(8): Fix whitespace issues.

- Nix trailing whitespace.
- Omit excessive blank lines.
- Insert missing blank lines between $NetBSD$ and copyright.

No functional change intended.

Revision 1.56.2.1 / (download) - annotate - [select for diffs], Sat May 13 12:13:54 2023 UTC (9 months, 2 weeks ago) by martin
Branch: netbsd-10
CVS Tags: netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1
Changes since 1.56: +2 -2 lines
Diff to previous 1.56 (colored) next main 1.57 (colored)

Pull up following revision(s) (requested by chs in ticket #162):

	sbin/fsck_ffs/inode.c: revision 1.74
	sbin/fsck_ffs/utilities.c: revision 1.68
	sbin/fsck_ffs/fsck.h: revision 1.57
	sbin/fsck_ffs/pass4.c: revision 1.30

catch up with sign changes in the fs.h

Revision 1.57 / (download) - annotate - [select for diffs], Sat Jan 14 12:12:50 2023 UTC (13 months, 2 weeks ago) by christos
Branch: MAIN
Changes since 1.56: +2 -2 lines
Diff to previous 1.56 (colored)

catch up with sign changes in the fs.h

Revision 1.56 / (download) - annotate - [select for diffs], Thu Nov 17 06:40:38 2022 UTC (15 months, 2 weeks ago) by chs
Branch: MAIN
CVS Tags: netbsd-10-base
Branch point for: netbsd-10
Changes since 1.55: +5 -1 lines
Diff to previous 1.55 (colored)

Restore backward compatibility of UFS2 with previous NetBSD releases by
disabling support in UFS2 for extended attributes (including ACLs).
Add a new variant of UFS2 called "UFS2ea" that does support extended attributes.
Add new	fsck_ffs operations "-c	ea" and	"-c no-ea" to convert file systems
from UFS2 to UFS2ea and	vice-versa (both of which delete all existing extended
attributes in the process).

Revision 1.52.12.3 / (download) - annotate - [select for diffs], Tue Apr 21 18:42:00 2020 UTC (3 years, 10 months ago) by martin
Branch: phil-wifi
Changes since 1.52.12.2: +4 -0 lines
Diff to previous 1.52.12.2 (colored) to branchpoint 1.52 (colored) next main 1.53 (colored)

Sync with HEAD

Revision 1.55 / (download) - annotate - [select for diffs], Sat Apr 18 12:54:38 2020 UTC (3 years, 10 months ago) by jdolecek
Branch: MAIN
CVS Tags: phil-wifi-20200421, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Changes since 1.54: +5 -1 lines
Diff to previous 1.54 (colored)

add NO_IOBUF_ALIGNED to not pull aligned_alloc() for really constrained
boot media

Revision 1.52.12.2 / (download) - annotate - [select for diffs], Wed Apr 8 14:07:18 2020 UTC (3 years, 10 months ago) by martin
Branch: phil-wifi
Changes since 1.52.12.1: +64 -64 lines
Diff to previous 1.52.12.1 (colored) to branchpoint 1.52 (colored)

Merge changes from current as of 20200406

Revision 1.54 / (download) - annotate - [select for diffs], Sun Apr 5 15:25:40 2020 UTC (3 years, 10 months ago) by joerg
Branch: MAIN
CVS Tags: phil-wifi-20200411, phil-wifi-20200406
Changes since 1.53: +64 -64 lines
Diff to previous 1.53 (colored)

Fix depenency on common symbols in sbin.

Revision 1.52.12.1 / (download) - annotate - [select for diffs], Mon Jun 10 22:05:33 2019 UTC (4 years, 8 months ago) by christos
Branch: phil-wifi
Changes since 1.52: +2 -1 lines
Diff to previous 1.52 (colored)

Sync with HEAD

Revision 1.53 / (download) - annotate - [select for diffs], Sun May 5 14:59:06 2019 UTC (4 years, 9 months ago) by christos
Branch: MAIN
CVS Tags: phil-wifi-20191119, phil-wifi-20190609, netbsd-9-base, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, is-mlppp-base, is-mlppp
Changes since 1.52: +2 -1 lines
Diff to previous 1.52 (colored)

Add a -z flag to zero out the up to 4 bytes of padding in directory entry
names (including the terminating NUL), as well as directory entries with
extra free space (d->d_reclen > UFS_DIRSIZ(d)).

Inspired from FreeBSD:
    https://svnweb.freebsd.org/base?view=revision&revision=347066

While the kernel has been fixed to deal with the padding bytes (new
kernels will correctly zero out all the padding after the name), it
appears that there is still an issue with directory entries with extra
free space, since a newly created and populated filesystem gets modified
with "fsck_ffs -z".

Revision 1.49.30.1 / (download) - annotate - [select for diffs], Fri Apr 21 16:53:13 2017 UTC (6 years, 10 months ago) by bouyer
Branch: bouyer-socketcan
Changes since 1.49: +38 -7 lines
Diff to previous 1.49 (colored) next main 1.50 (colored)

Sync with HEAD

Revision 1.49.26.1 / (download) - annotate - [select for diffs], Mon Mar 20 06:57:01 2017 UTC (6 years, 11 months ago) by pgoyette
Branch: pgoyette-localcount
Changes since 1.49: +38 -7 lines
Diff to previous 1.49 (colored) next main 1.50 (colored)

Sync with HEAD

Revision 1.52 / (download) - annotate - [select for diffs], Wed Feb 8 18:05:25 2017 UTC (7 years ago) by rin
Branch: MAIN
CVS Tags: prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, phil-wifi-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-compat-merge-20190127, pgoyette-compat-base, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, pgoyette-compat, perseant-stdc-iso10646-base, perseant-stdc-iso10646, netbsd-8-base, netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, netbsd-8, matt-nb8-mediatek-base, matt-nb8-mediatek, bouyer-socketcan-base1
Branch point for: phil-wifi
Changes since 1.51: +6 -6 lines
Diff to previous 1.51 (colored)

__empty -> __nothing

Revision 1.51 / (download) - annotate - [select for diffs], Wed Feb 8 16:23:24 2017 UTC (7 years ago) by christos
Branch: MAIN
Changes since 1.50: +6 -6 lines
Diff to previous 1.50 (colored)

use __empty

Revision 1.50 / (download) - annotate - [select for diffs], Wed Feb 8 16:11:40 2017 UTC (7 years ago) by rin
Branch: MAIN
Changes since 1.49: +38 -7 lines
Diff to previous 1.49 (colored)

Add smaller versions of fsck_ffs(8) and newfs(8) for install media, where
support for Endian-Independent FFS and Apple UFS is disabled unless FFS_EI=1
and APPLE_UFS=1 are added to CRUNCHENV, respectively.

This reduces the size of ramdisk image for atari by over 15KB.

Thanks tsutsui and christos for their useful comments.

Revision 1.49 / (download) - annotate - [select for diffs], Sun Mar 6 17:08:16 2011 UTC (13 years ago) by bouyer
Branch: MAIN
CVS Tags: yamt-pagecache-tag8, yamt-pagecache-base9, yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, yamt-pagecache, tls-maxphys-base, tls-maxphys, tls-earlyentropy-base, tls-earlyentropy, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, pgoyette-localcount-base, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-6, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, localcount-20160914, cherry-xenmp-base, cherry-xenmp, bouyer-socketcan-base, agc-symver-base, agc-symver
Branch point for: pgoyette-localcount, bouyer-socketcan
Changes since 1.48: +19 -1 lines
Diff to previous 1.48 (colored)

merge the bouyer-quota2 branch. This adds a new on-disk format
to store disk quota usage and limits, integrated with ffs
metadata. Usage is checked by fsck_ffs (no more quotacheck)
and is covered by the WAPBL journal. Enabled with kernel
option QUOTA2 (added where QUOTA was enabled in kernel config files),
turned on with tunefs(8) on a per-filesystem
basis. mount_mfs(8) can also turn quotas on.

See http://mail-index.netbsd.org/tech-kern/2011/02/19/msg010025.html
for details.

Revision 1.48.2.1 / (download) - annotate - [select for diffs], Thu Jan 20 14:24:53 2011 UTC (13 years, 1 month ago) by bouyer
Branch: bouyer-quota2
Changes since 1.48: +19 -1 lines
Diff to previous 1.48 (colored) next main 1.49 (colored)

Snapshot of work in progress on a modernised disk quota system:
- new quotactl syscall (versionned for backward compat), which takes
  as parameter a path to a mount point, and a prop_dictionary
  (in plistref format) describing commands and arguments.
  For each command, status and data are returned as a prop_dictionary.
  quota commands features will be added to take advantage of this,
  exporting quota data or getting quota commands as plists.

- new on disk-format storage (all 64bit wide), integrated to metadata for
  ffs (and playing nicely with wapbl).
  Quotas are enabled on a ffs filesystem via superblock flags.
  tunefs(8) can enable or disable quotas.
  On a quota-enabled filesystem, fsck_ffs(8) will track per-uid/gid
  block and inode usages, and will check and update quotas in Pass 6.
  quota usage and limits are stored in unliked files (one for users,
  one for groups)l fsck_ffs(8) will create the files if needed, or
  free them if needed. This means that after enabling or disabling
  quotas on a filesystem; a fsck_ffs(8) run is required.
  quotacheck(8) is not needed any more, on a unclean shutdown
  fsck or journal replay will take care of fixing quotas.
  newfs(8) can create a ready-to-mount quota-enabled filesystem
  (superblock flags are set and quota inodes are created).
  Other new features or semantic changes:
  - default quota datas, applied to users or groups which don't already
    have a quota entry
  - per-user/group grace time (instead of a filesystem global one)
  - 0 really means "nothing allowed at all", not "no limit".
    If you want "no limit", set the limit to UQUAD_MAX (tools will
    understand "unlimited" and "-")

  A quota file is structured as follow:
  it starts with a header, containing a few per-filesystem values,
  and the default quota limits.
  Quota entries are linked together as a simple list, each entry has a
  pointer (as an offset withing the file) to the next.
  The header has a pointer to a list of free quota entries, and
  a hash table of in-use entries. The size of the hash table depends
  on the filesystem block size (header+hash table should fit in the
  first block). The file is not sparse and is a multiple of
  filesystem block size (when the free quota entry list is empty a new
  filesystem block is allocated). quota entries to not cross
  filesystem block boundaries.

  In memory, the kernel keeps a cache of recently used quota entries
  as a reference to the block number, and offset withing the block.
  The quota entry itself is keept in the buf cache.

fsck_ffs(8), tunefs(8) and newfs(8) supports are completed (with
related atf tests :)
The kernel can update disk usage and report it via quotactl(2).

Todo: enforce quotas limits (limits are not checked by kernel yet)
      update repquota, edquota and rpc.rquotad to the new world
      implement compat_50_quotactl ioctl.
      update quotactl(2) man page

fsck_ffs required fixes so that allocating new blocks or inodes will
properly update the superblock and cg sumaries. This was not an issue up
to now because superblock and cg sumaries check happened last, but now
allocations or frees can happen in pass 6.

Revision 1.48 / (download) - annotate - [select for diffs], Sun Sep 12 16:03:39 2010 UTC (13 years, 5 months ago) by drochner
Branch: MAIN
CVS Tags: matt-mips64-premerge-20101231, bouyer-quota2-nbase, bouyer-quota2-base
Branch point for: bouyer-quota2
Changes since 1.47: +7 -7 lines
Diff to previous 1.47 (colored)

minimal ansification/constification

Revision 1.45.4.1 / (download) - annotate - [select for diffs], Tue Mar 24 21:33:59 2009 UTC (14 years, 11 months ago) by bouyer
Branch: netbsd-4
Changes since 1.45: +2 -1 lines
Diff to previous 1.45 (colored) next main 1.46 (colored)

Pull up following revision(s) (requested by manu in ticket #1288):
	sbin/fsck_lfs/inode.c: revision 1.40 via patch
	sbin/fsck_ffs/fsck_ffs.8: revision 1.44 via patch
	sbin/fsck_ext2fs/fsck.h: revision 1.14 via patch
	sbin/fsck_ext2fs/main.c: revision 1.30 via patch
	sbin/fsck_ffs/inode.c: revision 1.61 via patch
	sbin/fsck_ffs/main.c: revision 1.71 via patch
	sbin/fsck_ext2fs/inode.c: revision 1.23 via patch
	sbin/fsck_lfs/fsck.h: revision 1.18 via patch
	sbin/fsck_lfs/fsck_lfs.8: revision 1.21 via patch
	sbin/fsck_lfs/main.c: revision 1.38 via patch
	sbin/fsck_ext2fs/fsck_ext2fs.8: revision 1.15 via patch
	sbin/fsck_ffs/fsck.h: revision 1.47 via patch
Disable userid to username lookups by default. Add a -U flag to perform them.
In single user mode lookups that involve the network might not work and they
slow down fsck.

Revision 1.45.20.2 / (download) - annotate - [select for diffs], Sat Jan 17 13:48:52 2009 UTC (15 years, 1 month ago) by mjf
Branch: mjf-devfs2
Changes since 1.45.20.1: +1 -0 lines
Diff to previous 1.45.20.1 (colored) to branchpoint 1.45 (colored) next main 1.46 (colored)

Sync with HEAD.

Revision 1.47 / (download) - annotate - [select for diffs], Thu Oct 9 16:56:23 2008 UTC (15 years, 4 months ago) by christos
Branch: MAIN
CVS Tags: netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, mjf-devfs2-base, matt-premerge-20091211, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, jym-xensuspend-nbase, jym-xensuspend-base, jym-xensuspend
Changes since 1.46: +2 -1 lines
Diff to previous 1.46 (colored)

Disable userid to username lookups by default. Add a -U flag to perform them.
In single user mode lookups that involve the network might not work and they
slow down fsck.

Revision 1.45.20.1 / (download) - annotate - [select for diffs], Thu Apr 3 13:54:10 2008 UTC (15 years, 11 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.45: +1 -3 lines
Diff to previous 1.45 (colored)

Sync with HEAD.

Revision 1.45.18.1 / (download) - annotate - [select for diffs], Mon Mar 24 07:14:48 2008 UTC (15 years, 11 months ago) by keiichi
Branch: keiichi-mipv6
Changes since 1.45: +1 -3 lines
Diff to previous 1.45 (colored) next main 1.46 (colored)

sync with head.

Revision 1.45.10.1 / (download) - annotate - [select for diffs], Sun Mar 23 00:44:23 2008 UTC (15 years, 11 months ago) by matt
Branch: matt-armv6
Changes since 1.45: +1 -3 lines
Diff to previous 1.45 (colored) next main 1.46 (colored)

sync with HEAD

Revision 1.46 / (download) - annotate - [select for diffs], Sat Feb 23 21:41:48 2008 UTC (16 years ago) by christos
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-pf42-base, yamt-pf42, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, matt-armv6-nbase, keiichi-mipv6-base, hpcarm-cleanup-nbase, hpcarm-cleanup-base
Changes since 1.45: +1 -3 lines
Diff to previous 1.45 (colored)

Make sure that the exit values are always sane, and use symbolic instead
of magic constants. Reviewed by go@

Revision 1.45 / (download) - annotate - [select for diffs], Fri Apr 21 15:00:49 2006 UTC (17 years, 10 months ago) by skrll
Branch: MAIN
CVS Tags: wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, mjf-devfs-base, mjf-devfs, matt-mips64-base, matt-mips64, matt-armv6-prevmlocking, matt-armv6-base, hpcarm-cleanup, cube-autoconf-base, cube-autoconf, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: netbsd-4, mjf-devfs2, matt-armv6, keiichi-mipv6
Changes since 1.44: +13 -0 lines
Diff to previous 1.44 (colored)

Don't use cast expressions as lvalues as newer versions of gcc warn.

Revision 1.44 / (download) - annotate - [select for diffs], Sat Dec 24 20:55:04 2005 UTC (18 years, 2 months ago) by perry
Branch: MAIN
Changes since 1.43: +7 -7 lines
Diff to previous 1.43 (colored)

Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.

Revision 1.43 / (download) - annotate - [select for diffs], Mon Jun 27 01:25:35 2005 UTC (18 years, 8 months ago) by christos
Branch: MAIN
Changes since 1.42: +3 -3 lines
Diff to previous 1.42 (colored)

sprinkle const.

Revision 1.42 / (download) - annotate - [select for diffs], Wed Jan 19 17:33:58 2005 UTC (19 years, 1 month ago) by xtraeme
Branch: MAIN
CVS Tags: netbsd-3-base, netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0, netbsd-3
Changes since 1.41: +5 -5 lines
Diff to previous 1.41 (colored)

Kill __P(), ANSIfy and WARNS=2

Revision 1.41 / (download) - annotate - [select for diffs], Thu Jan 13 19:56:02 2005 UTC (19 years, 1 month ago) by christos
Branch: MAIN
Changes since 1.40: +3 -3 lines
Diff to previous 1.40 (colored)

Use -DPROGRESS to enable the progress bar, don't depend on SMALL.

Revision 1.40 / (download) - annotate - [select for diffs], Thu Jan 13 15:22:35 2005 UTC (19 years, 1 month ago) by christos
Branch: MAIN
Changes since 1.39: +5 -3 lines
Diff to previous 1.39 (colored)

Add a progress meter to fsck_ffs based on the work by thorpej presented
to the mailing lists last January. This is optional.

Revision 1.39 / (download) - annotate - [select for diffs], Tue Jul 20 15:05:33 2004 UTC (19 years, 7 months ago) by mycroft
Branch: MAIN
Changes since 1.38: +2 -2 lines
Diff to previous 1.38 (colored)

Reduce memory usage slightly.

Revision 1.38 / (download) - annotate - [select for diffs], Tue May 25 14:54:56 2004 UTC (19 years, 9 months ago) by hannken
Branch: MAIN
Changes since 1.37: +3 -2 lines
Diff to previous 1.37 (colored)

Add ffs internal snapshots. Written by Marshall Kirk McKusick for FreeBSD.

- Not enabled by default. Needs kernel option FFS_SNAPSHOT.
- Change parameters of ffs_blkfree.
- Let the copy-on-write functions return an error so spec_strategy
    may fail if the copy-on-write fails.
- Change genfs_*lock*() to use vp->v_vnlock instead of &vp->v_lock.
- Add flag B_METAONLY to VOP_BALLOC to return indirect block buffer.
- Add a function ffs_checkfreefile needed for snapshot creation.
- Add special handling of snapshot files:
    Snapshots may not be opened for writing and the attributes are read-only.
    Use the mtime as the time this snapshot was taken.
    Deny mtime updates for snapshot files.
- Add function transferlockers to transfer any waiting processes from
  one lock to another.
- Add vfsop VFS_SNAPSHOT to take a snapshot and make it accessible through
  a vnode.
- Add snapshot support to ls, fsck_ffs and dump.

Welcome to 2.0F.

Approved by: Jason R. Thorpe <thorpej@netbsd.org>

Revision 1.37 / (download) - annotate - [select for diffs], Fri Jan 9 19:12:31 2004 UTC (20 years, 1 month ago) by dbj
Branch: MAIN
CVS Tags: netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2
Changes since 1.36: +3 -2 lines
Diff to previous 1.36 (colored)

do not upgrade superblock or set FS_FLAGS_UPDATED unless -c 4 option
is provided.
add compatibility for filesystems before FFSv2 integration
these patches are from pr port-macppc/23925 and should also
fix problems discussed in pr kern/21404 and pr kern/21283

Revision 1.36 / (download) - annotate - [select for diffs], Mon Oct 20 12:04:38 2003 UTC (20 years, 4 months ago) by dsl
Branch: MAIN
Changes since 1.35: +3 -2 lines
Diff to previous 1.35 (colored)

Add a -q (quiet) option to print nothing for clean filesystems.
Support in fsck_ffs and stub in fsck_xxx.
Push a few more messages through pwarn() instead of printf() to ensure
disk name is shown.

Revision 1.35 / (download) - annotate - [select for diffs], Thu Aug 7 10:04:19 2003 UTC (20 years, 7 months ago) by agc
Branch: MAIN
Changes since 1.34: +2 -6 lines
Diff to previous 1.34 (colored)

Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22308, verified by myself.

Revision 1.34 / (download) - annotate - [select for diffs], Thu Apr 24 20:08:25 2003 UTC (20 years, 10 months ago) by fvdl
Branch: MAIN
Changes since 1.33: +3 -3 lines
Diff to previous 1.33 (colored)

Oops. The clearinode macro had the UFS2 case reversed, causing it to
zero out two inodes in the plain FFS case, since UFS2 dinodes are
twice as big.

Revision 1.33 / (download) - annotate - [select for diffs], Sun Apr 6 17:23:25 2003 UTC (20 years, 11 months ago) by fvdl
Branch: MAIN
Changes since 1.32: +3 -2 lines
Diff to previous 1.32 (colored)

Write update some old fields when writing the superblock, similar to
ffs_oldfscompat_write() in the kernel. Use the old totals when
time < old_time (i.e. an old kernel or fsck wrote the filesystem last).
When setting the date back on a new kernel, that works out ok, since
new kernels always update both fields.

Revision 1.32 / (download) - annotate - [select for diffs], Wed Apr 2 10:39:25 2003 UTC (20 years, 11 months ago) by fvdl
Branch: MAIN
Changes since 1.31: +65 -14 lines
Diff to previous 1.31 (colored)

Add support for UFS2. UFS2 is an enhanced FFS, adding support for
64 bit block pointers, extended attribute storage, and a few
other things.

This commit does not yet include the code to manipulate the extended
storage (for e.g. ACLs), this will be done later.

Originally written by Kirk McKusick and Network Associates Laboratories for
FreeBSD.

Revision 1.31 / (download) - annotate - [select for diffs], Sat Mar 29 22:48:38 2003 UTC (20 years, 11 months ago) by wiz
Branch: MAIN
Changes since 1.30: +2 -2 lines
Diff to previous 1.30 (colored)

Consistently spell occurrence with two rs.

Revision 1.30 / (download) - annotate - [select for diffs], Fri Jan 24 21:55:08 2003 UTC (21 years, 1 month ago) by fvdl
Branch: MAIN
Changes since 1.29: +12 -10 lines
Diff to previous 1.29 (colored)

Bump daddr_t to 64 bits. Replace it with int32_t in all places where
it was used on-disk, so that on-disk formats remain the same.
Remove ufs_daddr_t and ufs_lbn_t for the time being.

Revision 1.29 / (download) - annotate - [select for diffs], Sat Sep 28 20:11:06 2002 UTC (21 years, 5 months ago) by dbj
Branch: MAIN
CVS Tags: fvdl_fs64_base
Changes since 1.28: +16 -1 lines
Diff to previous 1.28 (colored)

Add support for the Apple UFS variation on ffs
This is the bulk of PR #17345

The general approach is to use a run time deteriminable value
for DIRBLKSIZ.  Additional allowances are included for using
MAXSYMLINKLEN with FS_42INODEFMT and a shift in the cylinder group
cluster summary count array.  Support is added for managing
the Apple UFS volume label.

Revision 1.28 / (download) - annotate - [select for diffs], Mon May 6 03:17:43 2002 UTC (21 years, 10 months ago) by lukem
Branch: MAIN
CVS Tags: netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001, netbsd-1-6
Changes since 1.27: +3 -1 lines
Diff to previous 1.27 (colored)

If SIGINFO is received, display summary information to stderr.
Based on changes in FreeBSD, via Chuck Cranor <chuck@research.att.com>

Revision 1.20.4.2 / (download) - annotate - [select for diffs], Sun Nov 25 19:26:45 2001 UTC (22 years, 3 months ago) by he
Branch: netbsd-1-5
CVS Tags: netbsd-1-5-PATCH003
Changes since 1.20.4.1: +2 -2 lines
Diff to previous 1.20.4.1 (colored) to branchpoint 1.20 (colored) next main 1.21 (colored)

Pull up revision 1.27 (requested by lukem):
  Call ffs_sb_swap() with the correct arguments.  Fixes problems
  with using other-endian file systems.

Revision 1.20.4.1 / (download) - annotate - [select for diffs], Sat Nov 24 22:07:27 2001 UTC (22 years, 3 months ago) by he
Branch: netbsd-1-5
Changes since 1.20: +7 -4 lines
Diff to previous 1.20 (colored)

Pull up revisions 1.21-1.24 (requested by lukem):
  Jumbo pullup for fsck_ffs:
   o fix incorrect error message
   o mark initialized globals with ``extern''
   o make reconnect algorithm O(n) instead of O(n^4)
   o remove dead code
   o don't swap cg_clustersum(cg)[0], it's a bitmap
   o ensure rotor values are positive
   o some code restructuring
   o fix byte swapping bug
   o pass5: check alternate superblocks for consistency with in-core master
   o fix usage message

Revision 1.27 / (download) - annotate - [select for diffs], Fri Aug 17 02:18:47 2001 UTC (22 years, 6 months ago) by lukem
Branch: MAIN
Changes since 1.26: +2 -2 lines
Diff to previous 1.26 (colored)

remove third argument (`int ns') from ffs_sb_swap(), and let ffs_sb_swap()
determine the endianness of the `struct fs *o' superblock from o->fs_magic
and set needswap as necessary, rather than trusting the caller to get
it right.  invariably, almost every caller of ffs_sb_swap() was calling it
with ns set to the wrong value for ns anyway!
ansi KNF ffs_bswap.c declarations whilst here.

this fixes all sorts of problems when trying to use other-endian file systems,
notably the kernel trying to access memory *way* off, possibly corrupting or
panicing, and userland programs SEGVing and/or corrupting things (e.g,
"fsck_ffs -B"  to swap a file system endianness).

whilst the previous rev of ffs_bswap.c (1.10, 2000/12/23) made this problem
worse, i suspect that the problem was always there and previous versions
just happened not to trash things at the wrong time.

FFS_EI should now be a lot more stable.

Revision 1.26 / (download) - annotate - [select for diffs], Wed Aug 15 03:54:53 2001 UTC (22 years, 6 months ago) by lukem
Branch: MAIN
Changes since 1.25: +2 -1 lines
Diff to previous 1.25 (colored)

- implement -F; treat provided filesystems as images in regular files
- replace "filesystem" with "file system" as appropriate
- grammar fixes

Revision 1.25 / (download) - annotate - [select for diffs], Wed Aug 15 03:40:50 2001 UTC (22 years, 6 months ago) by lukem
Branch: MAIN
Changes since 1.24: +7 -7 lines
Diff to previous 1.24 (colored)

minor whitespace cleanup

Revision 1.24 / (download) - annotate - [select for diffs], Sun Feb 4 21:25:54 2001 UTC (23 years, 1 month ago) by christos
Branch: MAIN
Changes since 1.23: +2 -2 lines
Diff to previous 1.23 (colored)

remove redundant declarations

Revision 1.23 / (download) - annotate - [select for diffs], Fri Jan 26 17:37:16 2001 UTC (23 years, 1 month ago) by thorpej
Branch: MAIN
Changes since 1.22: +3 -1 lines
Diff to previous 1.22 (colored)

In pass 5, check alternate superblocks for consistency with
the current in-core master superblock, and fix them up if
they're incorrect.  Move the code that writes the alternate
superblocks if (cvtlevel || doswap) into pass 5 for efficiency.

Reviewd by Charles Hannum, and used by me to fix up a curdled
file system.

Revision 1.22 / (download) - annotate - [select for diffs], Tue Jan 9 05:51:14 2001 UTC (23 years, 1 month ago) by mycroft
Branch: MAIN
Changes since 1.21: +2 -1 lines
Diff to previous 1.21 (colored)

The reconnect algorithm was historically O(n^4).
Some years ago I made it O(n^2).
Someone helpfully made it O(n^4) again.
Today I'm making it O(n).
If that's not good enough, I don't know what else to do.  B-)

Technical details:
* The graph traversal in propagate() is modified to be able to start from any
  point in the tree.  To handle certain exceptional cases, it is also modified
  to work in two passes, marking the tree with a special tag and then changing
  it to DFOUND.
* The reconnect case now modifies the child/sibling pointers and calls
  propagate() to propagate the connection state starting with the reconnected
  directory.

Pray that you never encounter a file system trashed enough for this to matter.

Revision 1.21 / (download) - annotate - [select for diffs], Wed Dec 13 22:38:15 2000 UTC (23 years, 2 months ago) by scw
Branch: MAIN
Changes since 1.20: +3 -3 lines
Diff to previous 1.20 (colored)

Some more `extern's for initialised globals.

Revision 1.19.8.1 / (download) - annotate - [select for diffs], Mon Dec 27 18:30:23 1999 UTC (24 years, 2 months ago) by wrstuden
Branch: wrstuden-devbsize
Changes since 1.19: +3 -1 lines
Diff to previous 1.19 (colored) next main 1.20 (colored)

Pull up to last week's -current.

Revision 1.20 / (download) - annotate - [select for diffs], Mon Nov 15 19:19:41 1999 UTC (24 years, 3 months ago) by fvdl
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221, netbsd-1-5-base, netbsd-1-5-RELEASE, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2, minoura-xpg4dl-base, minoura-xpg4dl
Branch point for: netbsd-1-5
Changes since 1.19: +3 -1 lines
Diff to previous 1.19 (colored)

Update for softdep code.

Revision 1.19.4.1 / (download) - annotate - [select for diffs], Tue Oct 19 13:01:28 1999 UTC (24 years, 4 months ago) by fvdl
Branch: fvdl-softdep
Changes since 1.19: +3 -1 lines
Diff to previous 1.19 (colored) next main 1.20 (colored)

Bring in Kirk McKusick's FFS softdep code on a branch.

Revision 1.19 / (download) - annotate - [select for diffs], Fri Jan 15 13:32:06 1999 UTC (25 years, 1 month ago) by bouyer
Branch: MAIN
CVS Tags: netbsd-1-4-base, netbsd-1-4-RELEASE, netbsd-1-4-PATCH003, netbsd-1-4-PATCH002, netbsd-1-4-PATCH001, netbsd-1-4, fvdl-softdep-base, comdex-fall-1999-base, comdex-fall-1999
Branch point for: wrstuden-devbsize, fvdl-softdep
Changes since 1.18: +2 -1 lines
Diff to previous 1.18 (colored)

#include machine/bswap.h and remove -lutil.

Revision 1.18 / (download) - annotate - [select for diffs], Fri Oct 23 01:13:33 1998 UTC (25 years, 4 months ago) by thorpej
Branch: MAIN
Changes since 1.17: +1 -2 lines
Diff to previous 1.17 (colored)

Use DINODE_SIZE rather than sizeof(struct dinode) and/or pointer arithmetic.

Revision 1.17 / (download) - annotate - [select for diffs], Wed Mar 18 17:01:23 1998 UTC (25 years, 11 months ago) by bouyer
Branch: MAIN
Changes since 1.16: +46 -5 lines
Diff to previous 1.16 (colored)

Add support for non-native byteorder FFS, and converting byteorder.
Also, be a bit more conservative with the clean flag: don't mark the FS
clean when we know there may still be errors (user anserwed 'n' to
a question, or fsck says "you must rerun fsck").

Revision 1.16 / (download) - annotate - [select for diffs], Sun Sep 21 00:24:55 1997 UTC (26 years, 5 months ago) by lukem
Branch: MAIN
CVS Tags: netbsd-1-3-base, netbsd-1-3-RELEASE, netbsd-1-3-PATCH003-CANDIDATE2, netbsd-1-3-PATCH003-CANDIDATE1, netbsd-1-3-PATCH003-CANDIDATE0, netbsd-1-3-PATCH003, netbsd-1-3-PATCH002, netbsd-1-3-PATCH001, netbsd-1-3-BETA, netbsd-1-3
Changes since 1.15: +2 -2 lines
Diff to previous 1.15 (colored)

a quad_t is an int64_t, not a u_int64_t...

Revision 1.15 / (download) - annotate - [select for diffs], Sat Sep 20 06:16:25 1997 UTC (26 years, 5 months ago) by lukem
Branch: MAIN
Changes since 1.14: +1 -3 lines
Diff to previous 1.14 (colored)

- don't indiscriminately include <stdlib.h> and <unistd.h> in "fsck.h"
- explicitly pull in <stdio.h>, <stdlib.h> and <unistd.h> in *.c as necessary

Revision 1.14 / (download) - annotate - [select for diffs], Tue Sep 16 16:44:56 1997 UTC (26 years, 5 months ago) by lukem
Branch: MAIN
Changes since 1.13: +28 -28 lines
Diff to previous 1.13 (colored)

resolve conflicts from lite-2 merge.

Revision 1.1.1.3 / (download) - annotate - [select for diffs] (vendor branch), Tue Sep 16 15:07:05 1997 UTC (26 years, 5 months ago) by lukem
Branch: CSRG
CVS Tags: lite-2
Changes since 1.1.1.2: +91 -28 lines
Diff to previous 1.1.1.2 (colored)

imported from lite-2

Revision 1.10.4.2 / (download) - annotate - [select for diffs], Sun Mar 2 20:25:31 1997 UTC (27 years ago) by mycroft
Branch: netbsd-1-2
CVS Tags: netbsd-1-2-PATCH001
Changes since 1.10.4.1: +2 -1 lines
Diff to previous 1.10.4.1 (colored) to branchpoint 1.10 (colored) next main 1.11 (colored)

Pull up changes from Kirk McKusick to check for holes in directories.

Revision 1.10.4.1 / (download) - annotate - [select for diffs], Tue Dec 10 01:18:37 1996 UTC (27 years, 2 months ago) by mycroft
Branch: netbsd-1-2
Changes since 1.10: +2 -1 lines
Diff to previous 1.10 (colored)

From trunk:
* Redo the tree-walking algorithm to make it O(n) rather than O(n^2).
* Fix some minor type size problems.

Revision 1.13 / (download) - annotate - [select for diffs], Fri Oct 11 20:15:46 1996 UTC (27 years, 4 months ago) by thorpej
Branch: MAIN
Changes since 1.12: +2 -1 lines
Diff to previous 1.12 (colored)

Bug fix from Kirk McKusick <mckusick@McKusick.COM>:

Fix a bug in fsck_ffs where if a directory somehow develops a hole
(that is a block pointer that has a value of zero), fsck would give the
filesystem a clean bill of health, but the kernel would panic when
accessing the directory with the hole. Fsck now checks for holes
in directories.  If found in preen mode, fsck fails.  In manual
mode, it can be directed to shorten the directory to the beginning of
the hole. A  more complete solution would be to allocate a block to fill
the hole. However, this is a lot more work for a `cannot happen' error,
so the extra effort seems unwarranted.

Revision 1.12 / (download) - annotate - [select for diffs], Mon Sep 23 16:18:33 1996 UTC (27 years, 5 months ago) by christos
Branch: MAIN
Changes since 1.11: +9 -11 lines
Diff to previous 1.11 (colored)

- fixed all printf formats [there were a lot of %l? <-> %? mistakes]
- added missing prototypes, and made local functions static
- removed parallel preening code; this is part of fsck(8)
- use printing utilities from fsck(8)
- Makefile does not make links to fsck and fsck.8
- removed -l maxparallel option. It has no meaning anymore.

Revision 1.11 / (download) - annotate - [select for diffs], Tue Jun 11 07:07:53 1996 UTC (27 years, 8 months ago) by mycroft
Branch: MAIN
Changes since 1.10: +2 -1 lines
Diff to previous 1.10 (colored)

Use a different tree-walking algorithm in propagate().

Revision 1.10 / (download) - annotate - [select for diffs], Wed Apr 12 21:24:09 1995 UTC (28 years, 10 months ago) by mycroft
Branch: MAIN
CVS Tags: netbsd-1-2-base, netbsd-1-2-RELEASE, netbsd-1-2-BETA
Branch point for: netbsd-1-2
Changes since 1.9: +2 -1 lines
Diff to previous 1.9 (colored)

Set the clean flag if necessary.  If preening, don't check `clean' file
systems.

Revision 1.9 / (download) - annotate - [select for diffs], Tue Mar 21 01:30:09 1995 UTC (28 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.8: +2 -2 lines
Diff to previous 1.8 (colored)

type sizes

Revision 1.8 / (download) - annotate - [select for diffs], Sat Mar 18 14:55:45 1995 UTC (28 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.7: +3 -2 lines
Diff to previous 1.7 (colored)

convert to new RCS Id conventions; reduce my headache

Revision 1.7 / (download) - annotate - [select for diffs], Mon Dec 5 20:15:49 1994 UTC (29 years, 3 months ago) by cgd
Branch: MAIN
Changes since 1.6: +1 -2 lines
Diff to previous 1.6 (colored)

more cleanups from Jim Jegers, passed over by me.

Revision 1.1.1.2 / (download) - annotate - [select for diffs] (vendor branch), Mon Jun 13 22:44:04 1994 UTC (29 years, 8 months ago) by mycroft
Branch: CSRG
Changes since 1.1.1.1: +10 -6 lines
Diff to previous 1.1.1.1 (colored)

Import 4.4-Lite version.

Revision 1.6 / (download) - annotate - [select for diffs], Wed Jun 8 19:00:21 1994 UTC (29 years, 9 months ago) by mycroft
Branch: MAIN
Changes since 1.5: +18 -36 lines
Diff to previous 1.5 (colored)

Update from 4.4-Lite, with local changes.

Revision 1.5 / (download) - annotate - [select for diffs], Mon May 2 10:18:21 1994 UTC (29 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.4: +30 -8 lines
Diff to previous 1.4 (colored)

Prototype some things.

Revision 1.4 / (download) - annotate - [select for diffs], Sun Aug 1 18:27:27 1993 UTC (30 years, 7 months ago) by mycroft
Branch: MAIN
Changes since 1.3: +2 -3 lines
Diff to previous 1.3 (colored)

Add RCS identifiers.

Revision 1.3 / (download) - annotate - [select for diffs], Tue Mar 23 00:27:51 1993 UTC (30 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.2: +1 -1 lines
Diff to previous 1.2 (colored)

changed "Id" to "Header" for rcsids

Revision 1.2 / (download) - annotate - [select for diffs], Mon Mar 22 08:04:00 1993 UTC (30 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.1: +2 -0 lines
Diff to previous 1.1 (colored)

added rcs ids to all files

Revision 1.1.1.1 / (download) - annotate - [select for diffs] (vendor branch), Sun Mar 21 09:45:37 1993 UTC (30 years, 11 months ago) by cgd
Branch: CSRG
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored)

initial import of 386bsd-0.1 sources

Revision 1.1 / (download) - annotate - [select for diffs], Sun Mar 21 09:45:37 1993 UTC (30 years, 11 months ago) by cgd
Branch: MAIN

Initial revision

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>