Commit:     b35997d4482ed24b43a5951c5b021d224b24293c
Parent:     e1cc86037b689a82cdb2df50c32fa8cf9d6b6c3a
Author:     Robert Peterson <[EMAIL PROTECTED]>
AuthorDate: Thu Jun 7 09:10:01 2007 -0500
Committer:  Steven Whitehouse <[EMAIL PROTECTED]>
CommitDate: Mon Jul 9 08:23:24 2007 +0100

    [GFS2] Can't mount GFS2 file system on AoE device
    This patch fixes bug 243131: Can't mount GFS2 file system on AoE device.
    When using AoE devices with lock_nolock, there is no locking table, so
    gfs2 (and gfs1) uses the superblock s_id.  This turns out to be the device
    name in some cases.  In the case of AoE, the device contains a slash,
    (e.g. "etherd/e1.1p2") which is an invalid character when we try to
    register the table in sysfs.  This patch replaces the "/" with underscore.
    Rather than add a new variable to the stack, I'm just reusing a (char *)
    variable that's no longer used: table.
    This code has been tested on the failing system using a RHEL5 patch.
    The upstream code was tested by using gfs2_tool sb to interject a "/"
    into the table name of a clustered gfs2 file system.
    Signed-off-by: Bob Peterson <[EMAIL PROTECTED]>
    Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
 fs/gfs2/ops_fstype.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/fs/gfs2/ops_fstype.c b/fs/gfs2/ops_fstype.c
index b467272..dae1d71 100644
--- a/fs/gfs2/ops_fstype.c
+++ b/fs/gfs2/ops_fstype.c
@@ -145,6 +145,9 @@ static int init_names(struct gfs2_sbd *sdp, int silent)
        snprintf(sdp->sd_proto_name, GFS2_FSNAME_LEN, "%s", proto);
        snprintf(sdp->sd_table_name, GFS2_FSNAME_LEN, "%s", table);
+       while ((table = strchr(sdp->sd_table_name, '/')))
+               *table = '_';
        return error;
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at

Reply via email to