mirror of
https://git.freebsd.org/src.git
synced 2026-01-11 19:57:22 +00:00
newfs: Add an option to disable soft updates
A previous commit turned soft updates on by default for UFS2 without
providing a way to turn them off. This corrects that by adding a new -u
flag which forces soft updates (and soft updates journaling) off.
MFC after: 1 week
Sponsored by: Klara, Inc.
Sponsored by: NetApp, Inc.
Fixes: 61dece6d27 ("Enable soft updates by default for UFS2 filesystems.")
Reviewed by: mckusick
Differential Revision: https://reviews.freebsd.org/D54576
This commit is contained in:
parent
01c0005dce
commit
68562f8145
2 changed files with 24 additions and 9 deletions
|
|
@ -25,7 +25,7 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.Dd January 23, 2025
|
||||
.Dd January 7, 2026
|
||||
.Dt NEWFS 8
|
||||
.Os
|
||||
.Sh NAME
|
||||
|
|
@ -33,7 +33,7 @@
|
|||
.Nd construct a new UFS1/UFS2 file system
|
||||
.Sh SYNOPSIS
|
||||
.Nm
|
||||
.Op Fl EJNUjlnt
|
||||
.Op Fl EJNUjlntu
|
||||
.Op Fl L Ar volname
|
||||
.Op Fl O Ar filesystem-type
|
||||
.Op Fl S Ar sector-size
|
||||
|
|
@ -98,10 +98,20 @@ The default format is UFS2.
|
|||
For backward compatibility.
|
||||
.It Fl U
|
||||
Enable soft updates on the new file system.
|
||||
Soft updates are enabled by default for UFS2 format file systems.
|
||||
Use
|
||||
.Xr tunefs 8
|
||||
to disable soft updates if they are not wanted.
|
||||
If neither
|
||||
.Fl U
|
||||
nor
|
||||
.Fl u
|
||||
is specified, soft updates are enabled by default for UFS2 format file
|
||||
systems and disabled otherwise.
|
||||
.It Fl u
|
||||
Do not enable soft updates on the new file system.
|
||||
If neither
|
||||
.Fl U
|
||||
nor
|
||||
.Fl u
|
||||
is specified, soft updates are enabled by default for UFS2 format file
|
||||
systems and disabled otherwise.
|
||||
.It Fl a Ar maxcontig
|
||||
Specify the maximum number of contiguous blocks that will be
|
||||
laid out before forcing a rotational delay.
|
||||
|
|
@ -166,6 +176,8 @@ One inode is required for each distinct file, so this value effectively
|
|||
specifies the average file size on the file system.
|
||||
.It Fl j
|
||||
Enable soft updates journaling on the new file system.
|
||||
This implies
|
||||
.Fl U .
|
||||
This flag is implemented by running the
|
||||
.Xr tunefs 8
|
||||
utility found in the user's
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ int Lflag; /* add a volume label */
|
|||
int Nflag; /* run without writing file system */
|
||||
int Oflag = 2; /* file system format (1 => UFS1, 2 => UFS2) */
|
||||
int Rflag; /* regression test */
|
||||
int Uflag; /* enable soft updates for file system */
|
||||
int Uflag = -1; /* enable soft updates for file system */
|
||||
int jflag; /* enable soft updates journaling for filesys */
|
||||
int Xflag = 0; /* exit in middle of newfs for testing */
|
||||
int Jflag; /* enable gjournal for file system */
|
||||
|
|
@ -179,6 +179,9 @@ main(int argc, char *argv[])
|
|||
case 'U':
|
||||
Uflag = 1;
|
||||
break;
|
||||
case 'u':
|
||||
Uflag = 0;
|
||||
break;
|
||||
case 'X':
|
||||
Xflag++;
|
||||
break;
|
||||
|
|
@ -386,8 +389,8 @@ main(int argc, char *argv[])
|
|||
opt = FS_OPTSPACE;
|
||||
}
|
||||
/* Use soft updates by default for UFS2 and above */
|
||||
if (Oflag > 1)
|
||||
Uflag = 1;
|
||||
if (Uflag < 0)
|
||||
Uflag = Oflag > 1;
|
||||
realsectorsize = sectorsize;
|
||||
if (sectorsize != DEV_BSIZE) { /* XXX */
|
||||
int secperblk = sectorsize / DEV_BSIZE;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue