#
524ee110 |
| 04-Nov-2003 |
Kirk McKusick <mckusick@FreeBSD.org> |
Create a .snap directory mode 770 group operator in the root of a new filesystem. Dump and fsck will create snapshots in this directory rather than in the root for two reasons:
1) For terabyte-sized
Create a .snap directory mode 770 group operator in the root of a new filesystem. Dump and fsck will create snapshots in this directory rather than in the root for two reasons:
1) For terabyte-sized filesystems, the snapshot may require many minutes to build. Although the filesystem will not be suspended during most of the snapshot build, the snapshot file itself is locked during the entire snapshot build period. Thus, if it is accessed during the period that it is being built, the process trying to access it will block holding its containing directory locked. If the snapshot is in the root, the root will lock and the system will come to a halt until the snapshot finishes. By putting the snapshot in a subdirectory, it is out of the likely path of any process traversing through the root and hence much less likely to cause a lock race to the root.
2) The dump program is usually run by a non-root user running with operator group privilege. Such a user is typically not permitted to create files in the root of a filesystem. By having a directory in group operator with group write access available, such a user will be able to create a snapshot there. Having the dump program create its snapshot in a subdirectory below the root will benefit from point (1) as well.
Sponsored by: DARPA & NAI Labs.
show more ...
|
Revision tags: release/4.9.0_cvs, release/4.9.0 |
|
#
244fca1f |
| 05-Aug-2003 |
Yaroslav Tykhiy <ytykhiy@gmail.com> |
Exit with a non-zero status upon a block allocation failure. The old way of just returning could result in a file system extremely likely to panic the kernel. The warning printed wouldn't help much
Exit with a non-zero status upon a block allocation failure. The old way of just returning could result in a file system extremely likely to panic the kernel. The warning printed wouldn't help much since tools invoking newfs(8), e.g., mdmfs(8), couldn't detect the error.
PR: bin/55078 MFC after: 1 week
show more ...
|
Revision tags: release/5.1.0_cvs, release/5.1.0 |
|
#
a32bb1b5 |
| 22-May-2003 |
Doug Barton <dougb@FreeBSD.org> |
When newfs'ing a partition with UFS2 that had previously been newfs'ed with UFS1, the UFS1 superblocks were not deleted. This allowed any RELENG_4 (or other non-UFS2-aware) fsck to think it knew how
When newfs'ing a partition with UFS2 that had previously been newfs'ed with UFS1, the UFS1 superblocks were not deleted. This allowed any RELENG_4 (or other non-UFS2-aware) fsck to think it knew how to "fix" the file system, resulting in severe data scrambling.
This patch is a more advanced version than the one originally submitted. Lukas improved it based on feedback from Kirk, and testing by me. It blanks all UFS1 superblocks (if any) during a UFS2 newfs, thereby causing fsck's that are not UFS2 aware to generate the "SEARCH FOR ALTERNATE SUPER-BLOCK FAILED" message, and exit without damaging the fs.
PR: bin/51619 Submitted by: Lukas Ertl <l.ertl@univie.ac.at> Reviewed by: kirk Approved by: re (scottl)
show more ...
|
#
7bdf1805 |
| 10-May-2003 |
Ian Dowse <iedowse@FreeBSD.org> |
Put back the error checking in wtfs() that was lost when newfs was changed to use libufs in revision 1.71. Without this, any write failures in newfs were silently ignored.
Note that this will displa
Put back the error checking in wtfs() that was lost when newfs was changed to use libufs in revision 1.71. Without this, any write failures in newfs were silently ignored.
Note that this will display a meaningless errno string in the case of a short write as opposed to a write error, since bwrite()'s return value does not allow the caller to determine if errno is valid.
Reported by: Lukas Ertl <l.ertl@univie.ac.at> Reviewed by: jmallett Approved by: re (bmah)
show more ...
|
#
c69284ca |
| 03-May-2003 |
David E. O'Brien <obrien@FreeBSD.org> |
Use __FBSDID() to quiet GCC 3.3 warnings.
|
Revision tags: release/4.8.0_cvs, release/4.8.0 |
|
#
e27c9f46 |
| 23-Feb-2003 |
Kirk McKusick <mckusick@FreeBSD.org> |
Fix the -R flag so that it provides sequential "random" numbers so that the regression test will succeed.
Sponsored by: DARPA & NAI Labs.
|
#
aca3e497 |
| 14-Feb-2003 |
Kirk McKusick <mckusick@FreeBSD.org> |
Replace use of random() with arc4random() to provide less guessable values for the initial inode generation numbers in newfs and for newly allocated inode generation numbers in the kernel.
Submitted
Replace use of random() with arc4random() to provide less guessable values for the initial inode generation numbers in newfs and for newly allocated inode generation numbers in the kernel.
Submitted by: Theo de Raadt <deraadt@cvs.openbsd.org> Sponsored by: DARPA & NAI Labs.
show more ...
|
#
363c1852 |
| 14-Feb-2003 |
Kirk McKusick <mckusick@FreeBSD.org> |
Correct lines incorrectly added to the copyright message. Add missing period.
Submitted by: Bruce Evans <bde@zeta.org.au> Sponsored by: DARPA & NAI Labs.
|
#
fc903aa5 |
| 11-Feb-2003 |
Juli Mallett <jmallett@FreeBSD.org> |
Convert newfs to libufs (really). Solves one real issue with previous version of such. Differences in filesystems generated were found to be from 1) sbwrite with the "all" parameter 2) removal of w
Convert newfs to libufs (really). Solves one real issue with previous version of such. Differences in filesystems generated were found to be from 1) sbwrite with the "all" parameter 2) removal of writecache. The sbwrite call was made to perform as the original version, and otherwise this was checked against a version of newfs with the write cache removed.
show more ...
|
#
c715b047 |
| 01-Feb-2003 |
Gordon Tetlow <gordon@FreeBSD.org> |
Bring in support for volume labels to the filesystem utilities.
Reviewed by: mckusick
|
#
5a29754e |
| 29-Jan-2003 |
Juli Mallett <jmallett@FreeBSD.org> |
Back out conversion to libufs, for now. It seems to cause problems.
Reported by: phk
|
#
9d492cdd |
| 27-Jan-2003 |
Juli Mallett <jmallett@FreeBSD.org> |
Convert newfs to use libufs. I've tested this on md filesystems, as has keramida, and all seems well.
|
Revision tags: release/5.0.0_cvs, release/5.0.0 |
|
#
33493b18 |
| 02-Dec-2002 |
Kirk McKusick <mckusick@FreeBSD.org> |
Correctly calculate the initial number of fragments in a filesystem so that fsck does not complain with `SUMMARY BLK COUNT(S) WRONG IN SUPERBLK' the first time it is run on a new filesystem.
Reporte
Correctly calculate the initial number of fragments in a filesystem so that fsck does not complain with `SUMMARY BLK COUNT(S) WRONG IN SUPERBLK' the first time it is run on a new filesystem.
Reported by: Poul-Henning Kamp <phk@freebsd.org> Sponsored by: DARPA & NAI Labs.
show more ...
|
#
41e20344 |
| 30-Nov-2002 |
Kirk McKusick <mckusick@FreeBSD.org> |
Add some more checks to newfs so that it will not build filesystems that the kernel will refuse to mount. Specifically it now enforces the MAXBSIZE blocksize limit. This update also fixes a problem w
Add some more checks to newfs so that it will not build filesystems that the kernel will refuse to mount. Specifically it now enforces the MAXBSIZE blocksize limit. This update also fixes a problem where newfs could segment fault if the selected fragment size was too large.
PR: bin/30959 Submitted by: Ceri Davies <setantae@submonkey.net> Sponsored by: DARPA & NAI Labs.
show more ...
|
#
ada981b2 |
| 27-Nov-2002 |
Kirk McKusick <mckusick@FreeBSD.org> |
Create a new 32-bit fs_flags word in the superblock. Add code to move the old 8-bit fs_old_flags to the new location the first time that the filesystem is mounted by a new kernel. One of the unused f
Create a new 32-bit fs_flags word in the superblock. Add code to move the old 8-bit fs_old_flags to the new location the first time that the filesystem is mounted by a new kernel. One of the unused flags in fs_old_flags is used to indicate that the flags have been moved. Leave the fs_old_flags word intact so that it will work properly if used on an old kernel.
Change the fs_sblockloc superblock location field to be in units of bytes instead of in units of filesystem fragments. The old units did not work properly when the fragment size exceeeded the superblock size (8192). Update old fs_sblockloc values at the same time that the flags are moved.
Suggested by: BOUWSMA Barry <freebsd-misuser@netscum.dyndns.dk> Sponsored by: DARPA & NAI Labs.
show more ...
|
#
59a82561 |
| 16-Nov-2002 |
Kirk McKusick <mckusick@FreeBSD.org> |
Properly calculate the initial number of fragments in a large filesystem.
Sponsored by: DARPA & NAI Labs.
|
#
ecfc865a |
| 19-Oct-2002 |
Kirk McKusick <mckusick@FreeBSD.org> |
Bound the size of the superblock to SBLOCKSIZE.
Submitted by: BOUWSMA Beery <freebsd-misuser@netscum.dyndns.dk> Sponsored by: DARPA & NAI Labs.
|
Revision tags: release/4.7.0_cvs |
|
#
89fdc4e1 |
| 25-Sep-2002 |
Mike Barcroft <mike@FreeBSD.org> |
Use the standardized CHAR_BIT constant instead of NBBY in userland.
|
#
ce66ddb7 |
| 21-Aug-2002 |
Tom Rhodes <trhodes@FreeBSD.org> |
s/filesystem/file system/g as discussed on -developers
|
Revision tags: release/4.6.2_cvs, release/4.6.2, release/4.6.1 |
|
#
752c7d08 |
| 17-Jul-2002 |
Ollivier Robert <roberto@FreeBSD.org> |
di_createtime -> di_birthtime.
Submitted by: Udo Schweigert <Udo.Schweigert@siemens.com>
|
#
ffcaf36b |
| 11-Jul-2002 |
Bruce Evans <bde@FreeBSD.org> |
Fixed 4 printf format errors that were fatal on alphas. %qd is not even suitable for printing quad_t's since it is equivalent to %lld but quad_t is unsigned long on alphas. quad_t shouldn't be used
Fixed 4 printf format errors that were fatal on alphas. %qd is not even suitable for printing quad_t's since it is equivalent to %lld but quad_t is unsigned long on alphas. quad_t shouldn't be used anyway.
show more ...
|
Revision tags: release/4.6.0_cvs |
|
#
5e5d87ff |
| 23-Jun-2002 |
Kirk McKusick <mckusick@FreeBSD.org> |
Get rid of paranoia that zeros the boot block area as this has bad effect on existing bootstraps.
Submitted by: Jake Burkholder <jake@locore.ca> Sponsored by: DARPA & NAI Labs.
|
#
1c85e6a3 |
| 21-Jun-2002 |
Kirk McKusick <mckusick@FreeBSD.org> |
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
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>
show more ...
|
#
3468b317 |
| 16-May-2002 |
Tom Rhodes <trhodes@FreeBSD.org> |
more file system > filesystem
|
#
9aba3327 |
| 24-Apr-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Continue the cleanup preparations for UFS2 (& GEOM):
Use only one filedescriptor. Open in R/O or R/W based in the '-N' option. Make the filedescriptor a global variable instead of passing it around
Continue the cleanup preparations for UFS2 (& GEOM):
Use only one filedescriptor. Open in R/O or R/W based in the '-N' option. Make the filedescriptor a global variable instead of passing it around as semi-global variable(s).
Remove the undocumented ability to specify type without '-T' option.
Replace fatal() with straight err(3)/errx(3). Save calls to strerror() where applicable. Loose the progname variable.
Get the sense of the cpgflag test correct so we only issue warnings if people specify cpg and can't get that. It can be argued that this should be an error.
Remove the check to see if the disk is mounted: Open for writing would fail if it were mounted.
Attempt to get the sectorsize and mediasize with the generic disk ioctls, fall back to disklabel and /etc/disktab as we can.
Notice that on-disk labels still take precedence over /etc/disktab, this is probably wrong, but not as wrong as the entire concept of /etc/disktab is.
Sponsored by: DARPA & NAI Labs.
show more ...
|