diff --git a/lustre/ChangeLog b/lustre/ChangeLog
index a8dc12be89a64cba59fa9630a709413d278fa0ea..7eaf9e44cc333073e19bf0ab0f614473538170a4 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 dbba7d9245e9191bca747260031eef45f1d5df78..d7e0aacbd88f43e045c18831dbfa7829033659f3 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 == '/') ;