From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from relay.sgi.com (relay1.corp.sgi.com [137.38.102.111]) by oss.sgi.com (Postfix) with ESMTP id E95437F3F for ; Wed, 29 Oct 2014 13:38:48 -0500 (CDT) Received: from cuda.sgi.com (cuda1.sgi.com [192.48.157.11]) by relay1.corp.sgi.com (Postfix) with ESMTP id A141D8F804C for ; Wed, 29 Oct 2014 11:38:48 -0700 (PDT) Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by cuda.sgi.com with ESMTP id Hwq4MhKT20khJYJv (version=TLSv1 cipher=AES256-SHA bits=256 verify=NO) for ; Wed, 29 Oct 2014 11:38:47 -0700 (PDT) Date: Wed, 29 Oct 2014 14:38:42 -0400 From: Brian Foster Subject: Re: [PATCH 2/2] xfsprogs: don't warn about log sunit size if it was auto-discovered Message-ID: <20141029183841.GB4226@bfoster.laptop> References: <544FD3E1.1060000@redhat.com> <544FD47D.8020409@sandeen.net> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <544FD47D.8020409@sandeen.net> List-Id: XFS Filesystem from SGI List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: xfs-bounces@oss.sgi.com Sender: xfs-bounces@oss.sgi.com To: Eric Sandeen Cc: Eric Sandeen , Stan Hoeppner , xfs-oss On Tue, Oct 28, 2014 at 12:38:05PM -0500, Eric Sandeen wrote: > Today, users doing a bare mkfs on storage with a large default > stripe size may be surprised to get this warning: > > log stripe unit (%d bytes) is too large (maximum is 256KiB > log stripe unit adjusted to 32KiB > > through no fault of their own. The fallback is appropriate > and harmless, and there's no need to warn about this in the > defaults case. > > However, we keep the warning if a large log stripe unit was > specified by the user on the commandline. > > Signed-off-by: Eric Sandeen > --- > > diff --git a/mkfs/xfs_mkfs.c b/mkfs/xfs_mkfs.c > index a0fed31..66711cb 100644 > --- a/mkfs/xfs_mkfs.c > +++ b/mkfs/xfs_mkfs.c > @@ -946,6 +946,8 @@ main( > int logversion; > int lvflag; > int lsflag; > + int lsuflag; > + int lsunitflag; > int lsectorlog; > int lsectorsize; > int lslflag; > @@ -1004,7 +1006,7 @@ main( > sectorsize = lsectorsize = XFS_MIN_SECTORSIZE; > agsize = daflag = dasize = dblocks = 0; > ilflag = imflag = ipflag = isflag = 0; > - liflag = laflag = lsflag = ldflag = lvflag = 0; > + liflag = laflag = lsflag = lsuflag = lsunitflag = ldflag = lvflag = 0; > loginternal = 1; > logversion = 2; > logagno = logblocks = rtblocks = rtextblocks = 0; > @@ -1400,6 +1402,7 @@ main( > respec('l', lopts, L_SU); > lsu = cvtnum( > blocksize, sectorsize, value); > + lsuflag = 1; > break; > case L_SUNIT: > if (!value || *value == '\0') > @@ -1412,6 +1415,7 @@ main( > usage(); > } > lsunit = cvtnum(0, 0, value); > + lsunitflag = 1; > break; > case L_NAME: > case L_DEV: > @@ -2379,11 +2383,15 @@ an AG size that is one stripe unit smaller, for example %llu.\n"), > } > > if (logversion == 2 && (lsunit * blocksize) > 256 * 1024) { > - fprintf(stderr, > + /* Warn only if specified on commandline */ > + if (lsuflag || lsunitflag) { > + fprintf(stderr, > _("log stripe unit (%d bytes) is too large (maximum is 256KiB)\n"), > - (lsunit * blocksize)); > + (lsunit * blocksize)); > + fprintf(stderr, > + _("log stripe unit adjusted to 32KiB\n")); > + } Right above this particular hunk we have the possibility of lsunit inheriting a value from dsunit. If the latter is specified by the user, we don't print the message for an arguably user-specified lsunit. Hmm, do we care about that case? Brian > lsunit = (32 * 1024) >> blocklog; > - fprintf(stderr, _("log stripe unit adjusted to 32KiB\n")); > } > > min_logblocks = max_trans_res(crcs_enabled, dirversion, > > _______________________________________________ > xfs mailing list > xfs@oss.sgi.com > http://oss.sgi.com/mailman/listinfo/xfs _______________________________________________ xfs mailing list xfs@oss.sgi.com http://oss.sgi.com/mailman/listinfo/xfs