Commit Graph

51 Commits

Author SHA1 Message Date
Kirk McKusick
1c85e6a35d This commit adds basic support for the UFS2 filesystem. The UFS2
filesystem expands the inode to 256 bytes to make space for 64-bit
block pointers. It also adds a file-creation time field, an ability
to use jumbo blocks per inode to allow extent like pointer density,
and space for extended attributes (up to twice the filesystem block
size worth of attributes, e.g., on a 16K filesystem, there is space
for 32K of attributes). UFS2 fully supports and runs existing UFS1
filesystems. New filesystems built using newfs can be built in either
UFS1 or UFS2 format using the -O option. In this commit UFS1 is
the default format, so if you want to build UFS2 format filesystems,
you must specify -O 2. This default will be changed to UFS2 when
UFS2 proves itself to be stable. In this commit the boot code for
reading UFS2 filesystems is not compiled (see /sys/boot/common/ufsread.c)
as there is insufficient space in the boot block. Once the size of the
boot block is increased, this code can be defined.

Things to note: the definition of SBSIZE has changed to SBLOCKSIZE.
The header file <ufs/ufs/dinode.h> must be included before
<ufs/ffs/fs.h> so as to get the definitions of ufs2_daddr_t and
ufs_lbn_t.

Still TODO:
Verify that the first level bootstraps work for all the architectures.
Convert the utility ffsinfo to understand UFS2 and test growfs.
Add support for the extended attribute storage. Update soft updates
to ensure integrity of extended attribute storage. Switch the
current extended attribute interfaces to use the extended attribute
storage. Add the extent like functionality (framework is there,
but is currently never used).

Sponsored by: DARPA & NAI Labs.
Reviewed by:	Poul-Henning Kamp <phk@freebsd.org>
2002-06-21 06:18:05 +00:00
Tom Rhodes
3468b317cb more file system > filesystem 2002-05-16 04:10:46 +00:00
Poul-Henning Kamp
4ab9c1d126 Remove the -v option, it is now default behaviour.
Sponsored by:	DARPA & NAI Labs
2002-04-24 12:27:03 +00:00
Poul-Henning Kamp
5dccd5c649 Swing the axe and remove some archaic features from newfs which modern
diskdrives do neither need nor want:

	-O create a 4.3BSD format filesystem
	-d rotational delay between contiguous blocks
	-k sector 0 skew, per track
	-l hardware sector interleave
	-n number of distinguished rotational positions
	-p spare sectors per track
	-r revolutions/minute
	-t tracks/cylinder
	-x spare sectors per cylinder

No change in the produced filesystem image unless one or more of
these options were used.

Approved by:	mckusick
2002-03-20 07:16:15 +00:00
Sheldon Hearn
3626f83327 Update the default newfs block and fragment sizes from 8192/1024 to
16384/2048.

Following recent discussions on the -arch mailing list, involving dillon
and mckusick, this change parallels the one made over a decade ago when
the default was bumped up from 4096/512.

This should provide significant performance improvements for most
folks, less significant performance losses for a few folks and
wasted space lost to large fragments for many folks.

For discussion, please see the following thread in the -arch archive:

Subject: Using a larger block size on large filesystems

The discussion ceases to be relevant when the issue of partitioning
schemes is raised.
2001-12-11 16:21:40 +00:00
Sheldon Hearn
be42c56328 Fix typo: 'fragement' -> 'fragment' 2001-12-07 13:18:28 +00:00
Sheldon Hearn
629c25d4a9 Fix the example of suggested default settings. It stated that settings
were only of benefit to large filesystems, which recent research
suggests is not the case, and which the original author of the text
no longer endorses.
2001-11-27 19:39:07 +00:00
Sheldon Hearn
2441e154ef Correct the example introduced in rev 1.29, which suggested a block:frag
size ratio other than 8:1.  Currently, we only recommend an 8:1
ratio, because the impact of others ratios has not been adequately
investigated.

Also, do not recommend the use of the -c option in the example, since
newfs now automatically calculates the best cyl:cylgrp ratio.

This change was discussed with the author of rev 1.29.
2001-11-27 17:01:17 +00:00
Doug Barton
eb9d1d2716 Document the optimal block:fragment ratio, per discussion
on -arch and cvs-all.

Reviewed by:	dillon
2001-10-15 22:47:55 +00:00
Ollivier Robert
08870345f5 Following the discussion in -arch and the submission of a patch by bde, here
it is. I added the manpage change.

Submitted by:	bde
MFC after:	1 week
2001-10-04 12:15:50 +00:00
Dima Dorfman
7ebcc426ef Remove whitespace at EOL. 2001-07-15 07:53:42 +00:00
Ruslan Ermilov
9fe48c6e8d mdoc(7) police: removed HISTORY info from the .Os call. 2001-07-10 11:04:34 +00:00
Dima Dorfman
70d51341bf mdoc(7) police: remove extraneous .Pp before and/or after .Sh. 2001-07-09 09:54:33 +00:00
Dima Dorfman
7ccb741f6a Remove all references to MFS. 2001-05-29 23:55:43 +00:00
Nik Clayton
044479f5ad Add information about the new options to newfs and tunefs which set the
expected average file size and number of files per directory.  Could do
with some fleshing out.
2001-04-10 10:36:44 +00:00
David E. O'Brien
8af4736afe Document the newfs.c rev 1.33 changing the default c/g from 16 to 22. 2001-04-02 22:48:54 +00:00
David E. O'Brien
991bf32193 Fix patch merge braino. 2001-04-02 22:46:02 +00:00
David E. O'Brien
b2cd1ce8ee Allow enabling soft updates (with -U) on a new filesystem.
[I first added this functionality, and thought to check prior art.  Seeing
OpenBSD had already done this, I changed my addition to reduce the diffs
between the two and went with their option letter.]
Obtained from:	OpenBSD
2001-04-02 01:25:55 +00:00
Poul-Henning Kamp
7cf109c1b4 Make mount_mfs annoy users for 15 seconds and point them at mdconfig(8). 2001-01-30 10:21:20 +00:00
Ruslan Ermilov
9884911506 mdoc(7) police: fixed broken references. 2001-01-16 11:52:00 +00:00
Eivind Eklund
10185bdc57 Replace reference to replacing mkfs(8) with a paragraph actually
describing what newfs *does*.
2001-01-15 03:13:26 +00:00
Ruslan Ermilov
d90d7015f9 Prepare for mdoc(7)NG. 2000-12-27 14:40:52 +00:00
Warner Losh
64dee60f8c o Add an example for a large file system.
o Remove bug about boot blocks hating non-8k file systems.  This hasn't been
  the case for a long time.

Not Objected to by: hackers, doc
2000-12-19 21:55:07 +00:00
Ruslan Ermilov
7c7fb079b9 mdoc(7) police: use the new features of the Nm macro. 2000-11-20 16:52:27 +00:00
Ruslan Ermilov
726b61ab5f Avoid use of direct troff requests in mdoc(7) manual pages. 2000-11-10 17:46:15 +00:00
Sheldon Hearn
ef8f7ac935 Remove single-space hard sentence breaks. These degrade the quality
of the typeset output, tend to make diffs harder to read and provide
bad examples for new-comers to mdoc.
2000-03-01 11:27:47 +00:00
Kris Kennaway
d9d67bbaf8 Add Xref to camcontrol(8) (replacing previously-removed scsiformat(8)).
Submitted by:	joerg
2000-01-30 20:58:33 +00:00
Mike Pritchard
f050f700ad Fix various man pages to stop abusing the .Bx macro to generate
the strings "FreeBSD" and "NetBSD".  Use the .Fx or .Nx macro
instead.
2000-01-23 01:30:05 +00:00
Kris Kennaway
3c7fbe12d1 Remove dead xref to scsiformat(8)
Obtained from: OpenBSD (kind of)
1999-11-15 02:56:34 +00:00
Peter Wemm
7f3dea244c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
Greg Lehey
63a134bc15 Describe the default values for useful options.
Clarify which options are no longer useful.
1999-03-10 21:59:02 +00:00
Bruce Evans
e14589db82 Straightened the terminology straightening in 1.17-1.18. Fixed hard
line breaks in rev.1.16-1.18.
1998-11-29 13:09:01 +00:00
Robert Nordier
c276ec5a07 Refer to "da" rather than "sd" device. 1998-11-28 10:02:52 +00:00
Greg Lehey
11ee80a991 Don't require an argument for -v flag
Correct checks for null special file names
Add Usage entry for -v flag
Get terminology straight in man page
Reviewed by:	bde
1998-09-29 23:20:04 +00:00
Greg Lehey
f7fb3ee05b Reviewed by: bde (again)
Correct terminology (partitions are in slices, not the other way around)
1998-09-11 07:08:49 +00:00
Greg Lehey
58343e4cc6 Reviewed by: bde,jkh
Add -v flag to newfs:

     -v      Specify that the partition does not contain any slices, and that
             newfs should treat the whole partition as the file system.  This
             option is useful for synthetic disks such as ccd and vinum.
1998-09-11 06:26:08 +00:00
Philippe Charnier
27750b35a5 Add prototypes. Check malloc() return value. Use err(). Remove unused #includes
Do not \n nor dot terminate syslog()/err() messages. -Wall.
1998-07-15 06:28:05 +00:00
Poul-Henning Kamp
e72f5a72fd Add warning about root-fs blocksize expectations.
PR:		4485
Reviewed by:	phk
Submitted by:	Kees Jan Koster <kjk1@ukc.ac.uk>
1998-04-26 17:44:23 +00:00
David E. O'Brien
e83b2033a7 Fix syntax error for the mount_mfs example.
Also update to a more realistic example.
1997-11-24 03:28:54 +00:00
Eivind Eklund
b5aa560439 Fix typo.
PR:		Closes PR docs/3488
Submitted by:	k-horik@yk.rim.or.jp
1997-05-04 20:04:59 +00:00
Peter Wemm
75e2941193 Merge from Lite2:
- use new getvfsbyname() and mount(2) interface (mount_mfs)
 - use new fs include files
 - updated inode / cg layout calculations (?)
1997-03-11 12:48:17 +00:00
Mike Pritchard
21c7bd7842 Replace "mfs" with "mount_mfs" in the NAME section. 1997-02-06 17:49:55 +00:00
Wolfram Schneider
13bbf3d16f Add example for mount_mfs(8). 1996-12-26 02:01:09 +00:00
Mike Pritchard
215afc25bb Update the newfs(8) man page to reflect current
default values for some options better.  Closes PR# 1374.
1996-12-14 20:54:05 +00:00
Mike Pritchard
e71057d8d0 Fix a bunch of spelling errors. 1996-01-29 23:52:43 +00:00
Mike Pritchard
e361857343 Change the reference to format(8) (which we don't have) to fdformat(1) and
scsiformat(8) (which we do have).  Closes PR# 663.
1996-01-22 12:55:16 +00:00
Poul-Henning Kamp
55abc5794a Change the defaults for newfs to disregard the geometry in the disklabel.
We pretend we have one head with two megabyte worth of sectors per cylinder.

The code try to access another head in what it belives to the same
physical cylinder, because it belives that it would be faster than
waiting for the next free sector under this head to come around.

Most modern drives doesn't have a "classical" geometry, and thus
we end up fooling ourselves doing the above optimization.  With this
change we will fill a cylinder sequentially if we can, and thus get
much more mileage from the track-buffer/cache built into the drives.

As a result a lot of seeks to the next or previous track should be
avoided by this.

(My disk is a lot less noisy actually...)

You can still get the old behaviour, by specifying zero for the
numbers.

This will also solve the problem with newfs barfing at really big
drives.

Obtained from:	adult advice from Kirk.
1995-02-05 08:42:31 +00:00
Poul-Henning Kamp
72ab19aeb7 Added '-F file' option of mount_mfs. This allows me to make floppy images
without waiting for my floppy-drive all the time :-)  Might have other
interesting uses too.
1994-10-12 22:04:36 +00:00
David Greenman
3156bbb2d1 Backed out part of the last change that prevents the rpos table from
being output if <= 1 rpos; there is a bug in the kernel which doesn't
quite get along with this. Changed default #rpos to 1, and fixed up
manual page. Converted nrpos to 1 if user specifies 0.
1994-10-09 20:10:56 +00:00
David Greenman
56499741c4 Fixed manpage to conform to current reality.
Submitted by:	Rod Grimes, with additional sentence by me.
1994-10-01 20:00:28 +00:00