From c7a511b0a23d3b2f5f9931046bbb02cc379741ec Mon Sep 17 00:00:00 2001
From: bobijam <bobijam>
Date: Thu, 4 Sep 2008 02:38:26 +0000
Subject: [PATCH] Branch b1_6 b=16750 i=nathan.rutman i=sheng.yang

Description: service mount cannot take device name with ":"
Details    : Only when device name contains ":/" will mount treat it as
             client mount.
---
 lustre/ChangeLog            | 6 ++++++
 lustre/obdclass/obd_mount.c | 3 ++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/lustre/ChangeLog b/lustre/ChangeLog
index a8dc12be89..7eaf9e44cc 100644
--- a/lustre/ChangeLog
+++ b/lustre/ChangeLog
@@ -38,6 +38,12 @@ tbd Sun Microsystems, Inc.
 	* Output of lfs quota has been made less detailed by default,
 	  old (verbose) output can be obtained by using -v option.
 
+Severity   : major
+Bugzilla   : 16750
+Description: service mount cannot take device name with ":"
+Details    : Only when device name contains ":/" will mount treat it as
+             client mount.
+
 Severity   : major
 Bugzilla   : 16561
 Description: Hitting mdc_commit_close() ASSERTION
diff --git a/lustre/obdclass/obd_mount.c b/lustre/obdclass/obd_mount.c
index dbba7d9245..d7e0aacbd8 100644
--- a/lustre/obdclass/obd_mount.c
+++ b/lustre/obdclass/obd_mount.c
@@ -1884,8 +1884,9 @@ static int lmd_parse(char *options, struct lustre_mount_data *lmd)
                 goto invalid;
         }
 
-        s1 = strrchr(devname, ':');
+        s1 = strstr(devname, ":/");
         if (s1) {
+                ++s1;
                 lmd->lmd_flags = LMD_FLG_CLIENT;
                 /* Remove leading /s from fsname */
                 while (*++s1 == '/') ;
-- 
GitLab