On Wed, 23 Apr 2014 14:40:56 -0400 Mike Pagano <mpagano@xxxxxxxxxx> wrote: > If a cifs mount is attempted without mount.cifs present on the > system the following appears via dmesg: > > [ 25.949378] CIFS VFS: No username specified > > The purpose of this patch is to better inform the user of the > possible cause of the error and show a potential solution. > > The output for this error condition will look approximately like this: > > [ 11.183392] CIFS VFS: No username specified. Could not find > /sbin/mount.cifs. Please ensure your system has this userspace program > installed. > > Signed-off-by: Mike Pagano <mpagano@xxxxxxxxxx> > --- > fs/cifs/connect.c | 11 ++++++++++- > 1 file changed, 10 insertions(+), 1 deletion(-) > > diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c > index 8813ff7..2091709 100644 > --- a/fs/cifs/connect.c > +++ b/fs/cifs/connect.c > @@ -3359,6 +3359,7 @@ cifs_setup_volume_info(struct smb_vol *volume_info, char *mount_data, > const char *devname) > { > int rc = 0; > + struct path path; > > if (cifs_parse_mount_options(mount_data, devname, volume_info)) > return -EINVAL; > @@ -3371,7 +3372,15 @@ cifs_setup_volume_info(struct smb_vol *volume_info, char *mount_data, > /* BB fixme parse for domain name here */ > cifs_dbg(FYI, "Username: %s\n", volume_info->username); > } else { > - cifs_dbg(VFS, "No username specified\n"); > + /* As an extra step, check for missing /sbin/mount.cifs. Append > + to error message as we cannot guarantee the location of this > + binary in userspace */ > + if (kern_path("/sbin/mount.cifs", 0, &path)) { Ugh, no -- a pathwalk has no business here, IMO. > + cifs_dbg(VFS, "No username specified. Could not find /sbin/mount.cifs. Please ensure your system has this userspace program installed.\n"); > + } > + else { > + cifs_dbg(VFS, "No username specified\n"); > + } > /* In userspace mount helper we can get user name from alternate > locations such as env variables and files on disk */ > return -EINVAL; > -- > 1.8.3.2 > -- > To unsubscribe from this list: send the line "unsubscribe linux-cifs" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html I dunno. This doesn't seem like it's fixing a real problem to me. While we highly recommend that people use the mount helper. It's not specifically *required* per-se. If you can roll up the right mount options and hand them to the kernel then there's no real problem. If you really want this sort of warning, why not put it into /bin/mount? Then you could even output the warning message to the terminal instead of the kernel's ring buffer. -- Jeff Layton <jlayton@xxxxxxxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe linux-cifs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html