]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commitdiff
mkfs: complain about impossible log size constraints
authorDarrick J. Wong <djwong@kernel.org>
Fri, 5 Aug 2022 02:28:23 +0000 (21:28 -0500)
committerEric Sandeen <sandeen@sandeen.net>
Fri, 5 Aug 2022 02:28:23 +0000 (21:28 -0500)
xfs/042 trips over an impossible fs geometry when nrext64 is enabled.
The minimum log size calculation comes out to 4287 blocks, but the mkfs
parameters specify an AG size of 4096 blocks.  This eventually causes
mkfs to complain that the autoselected log size doesn't meet the minimum
size, but we could be a little more explicit in pointing out that the
two size constraints make for an impossible geometry.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
mkfs/xfs_mkfs.c

index 12994edca19f654a9482dca32d0dba5945791aaf..9dd0e79c6baca9f13903415c122d045992356fa3 100644 (file)
@@ -3490,6 +3490,13 @@ _("external log device size %lld blocks too small, must be at least %lld blocks\
         * an AG.
         */
        max_logblocks = libxfs_alloc_ag_max_usable(mp) - 1;
+       if (max_logblocks < min_logblocks) {
+               fprintf(stderr,
+_("max log size %d smaller than min log size %d, filesystem is too small\n"),
+                               max_logblocks,
+                               min_logblocks);
+               usage();
+       }
 
        /* internal log - if no size specified, calculate automatically */
        if (!cfg->logblocks) {