From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Price Date: Wed, 22 Apr 2015 19:01:47 +0100 Subject: [Cluster-devel] [PATCH] mkfs.gfs2: Allow longer cluster names In-Reply-To: <1429721041-3993-1-git-send-email-pevans@redhat.com> References: <1429721041-3993-1-git-send-email-pevans@redhat.com> Message-ID: <5537E20B.3050705@redhat.com> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit On 22/04/15 17:44, Paul Evans wrote: > Increase the enforced limit for cluster name to 32 bytes and file > system name to 30 bytes for mkfs.gfs2 (was previously 16 + 16 > bytes). > > Also increased this limit in tunegfs2 when labelling gfs2 file > systems. > > Updated the formation in the man pages along with adding a new test > case for mkfs.gfs2 to validate the increased cluster/file system > name support. > > Signed-off-by: Paul Evans Looks good to me. Thanks, Andy > --- > gfs2/man/mkfs.gfs2.8 | 4 ++-- > gfs2/mkfs/main_mkfs.c | 4 ++-- > gfs2/tune/super.c | 2 +- > tests/mkfs.at | 8 ++++++++ > 4 files changed, 13 insertions(+), 5 deletions(-) > > diff --git a/gfs2/man/mkfs.gfs2.8 b/gfs2/man/mkfs.gfs2.8 > index ceb6f38..f480082 100644 > --- a/gfs2/man/mkfs.gfs2.8 > +++ b/gfs2/man/mkfs.gfs2.8 > @@ -101,9 +101,9 @@ bigger file systems will have bigger RGs for better performance. > The lock table field appropriate to the lock module you're using. > It is \fIclustername:fsname\fR. > Clustername must match that in cluster.conf; only members of this > -cluster are permitted to use this file system. > +cluster are permitted to use this file system (1 to 32 characters). > Fsname is a unique file system name used to distinguish this GFS2 file > -system from others created (1 to 16 characters). Lock_nolock doesn't > +system from others created (1 to 30 characters). Lock_nolock doesn't > use this field. Valid \fIclustername\fRs and \fIfsname\fRs may only contain > alphanumeric characters, hyphens (-) and underscores (_). > .TP > diff --git a/gfs2/mkfs/main_mkfs.c b/gfs2/mkfs/main_mkfs.c > index 0636f0b..3fab08c 100644 > --- a/gfs2/mkfs/main_mkfs.c > +++ b/gfs2/mkfs/main_mkfs.c > @@ -398,7 +398,7 @@ static void test_locking(const char *lockproto, const char *locktable) > > if (c == locktable) > die("%s %s\n", errprefix, _("cluster name is missing")); > - if (c - locktable > 16) > + if (c - locktable > 32) > die("%s %s\n", errprefix, _("cluster name is too long")); > > c++; > @@ -406,7 +406,7 @@ static void test_locking(const char *lockproto, const char *locktable) > die("%s %s\n", errprefix, _("contains more than one colon")); > if (!strlen(c)) > die("%s %s\n", errprefix, _("file system name is missing")); > - if (strlen(c) > 16) > + if (strlen(c) > 30) > die("%s %s\n", errprefix, _("file system name is too long")); > } else { > die( _("Invalid lock protocol: %s\n"), lockproto); > diff --git a/gfs2/tune/super.c b/gfs2/tune/super.c > index cbd0026..560ce68 100644 > --- a/gfs2/tune/super.c > +++ b/gfs2/tune/super.c > @@ -194,7 +194,7 @@ int change_locktable(struct tunegfs2 *tfs, const char *locktable) > fprintf(stderr, "%s %s\n", errpre, _("missing colon")); > return EX_DATAERR; > } > - if (strlen(++fsname) > 16) { > + if (strlen(++fsname) > 30) { > fprintf(stderr, "%s %s\n", errpre, _("file system name is too long")); > return EX_DATAERR; > } > diff --git a/tests/mkfs.at b/tests/mkfs.at > index 438184c..e25b6dc 100644 > --- a/tests/mkfs.at > +++ b/tests/mkfs.at > @@ -89,3 +89,11 @@ AT_SETUP([Min. quota change file size]) > AT_KEYWORDS(mkfs.gfs2 mkfs) > GFS_FSCK_CHECK([$GFS_MKFS -p lock_nolock -c 1 $GFS_TGT]) > AT_CLEANUP > + > +AT_SETUP([Incr. cluster/file system name validation]) > +AT_KEYWORDS(mkfs.gfs2 mkfs) > +AT_CHECK([$GFS_MKFS -p lock_dlm -t "" $GFS_TGT], 255, [ignore], [ignore]) > +AT_CHECK([$GFS_MKFS -p lock_dlm -t "quite_long_cluster_name_test_here:intec34p" $GFS_TGT], 255, [ignore], [ignore]) > +AT_CHECK([$GFS_MKFS -p lock_dlm -t "financial_cluster:this_time_we_test_fs_naming_len" $GFS_TGT], 255, [ignore], [ignore]) > +GFS_FSCK_CHECK([$GFS_MKFS -p lock_dlm -t "a_really_long_named_cluster_here:concurrently_lets_check_fs_len" $GFS_TGT]) > +AT_CLEANUP >