git: 243a0eda9ace - main - Increase the maximum size of the journaled soft-updates journal.
Date: Fri, 21 Oct 2022 18:00:48 UTC
The branch main has been updated by mckusick: URL: https://cgit.FreeBSD.org/src/commit/?id=243a0eda9ace2f4d9cdd5291c352816ddc9ebdb2 commit 243a0eda9ace2f4d9cdd5291c352816ddc9ebdb2 Author: Kirk McKusick <mckusick@FreeBSD.org> AuthorDate: 2022-10-21 18:00:00 +0000 Commit: Kirk McKusick <mckusick@FreeBSD.org> CommitDate: 2022-10-21 18:00:00 +0000 Increase the maximum size of the journaled soft-updates journal. The size of the journaled soft-updates journal should be big enough to hold two minutes of filesystem metadata-update activity. The maximum size of the soft updates journal was set in the 1990s. At the time it was assummed that disk arrays would top out at 16 drives and disk writes per drive would top out at 500 per second. Today's I/O subsystems are considerably bigger and faster than those limits. Thus this delta removes the hard upper limit and lets tunefs(8) and newfs(8) set the upper bound based on the size of the filesystem and its cylinder groups. Sponsored by: The FreeBSD Foundation --- sbin/tunefs/tunefs.c | 1 - sys/ufs/ffs/fs.h | 1 - 2 files changed, 2 deletions(-) diff --git a/sbin/tunefs/tunefs.c b/sbin/tunefs/tunefs.c index e59b583ea58b..11956f946ff5 100644 --- a/sbin/tunefs/tunefs.c +++ b/sbin/tunefs/tunefs.c @@ -976,7 +976,6 @@ journal_alloc(int64_t size) */ if (size == 0) { size = (sblock.fs_size * sblock.fs_bsize) / 1024; - size = MIN(SUJ_MAX, size); if (size / sblock.fs_fsize > sblock.fs_fpg) size = sblock.fs_fpg * sblock.fs_fsize; size = MAX(SUJ_MIN, size); diff --git a/sys/ufs/ffs/fs.h b/sys/ufs/ffs/fs.h index bd2b9157e467..c2279c183fc5 100644 --- a/sys/ufs/ffs/fs.h +++ b/sys/ufs/ffs/fs.h @@ -806,7 +806,6 @@ lbn_offset(struct fs *fs, int level) #define JREC_SIZE 32 /* Record and segment header size. */ #define SUJ_MIN (4 * 1024 * 1024) /* Minimum journal size */ -#define SUJ_MAX (32 * 1024 * 1024) /* Maximum journal size */ #define SUJ_FILE ".sujournal" /* Journal file name */ /*