busybox: fix mount issue

When the mount command is not given the filesystem type to mount, then
it will try all the known filesystems. However, when a filesystem is not
supported by the kernel, the mount function call will return ENODEV.

The following patch, ecd90bc6aa,
introduced a problem because it bailed out on ENODEV too. Instead it should
have only bailed out on ENOMEDIUM.

[YOCTO #4308]

(From OE-Core rev: 82320d2074572477f26887eddc51dc2a1dfea403)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Laurentiu Palcu 2013-04-17 16:52:32 +03:00 committed by Richard Purdie
parent 295db71895
commit ef0e1cc32d
1 changed files with 1 additions and 1 deletions

View File

@ -23,7 +23,7 @@ Index: busybox-1.20.2/util-linux/mount.c
+ * Break if there is no media, no point retrying for all
+ * fs types since there is no media available
+ */
+ if ((rc == -1) && (errno == ENOMEDIUM || errno == ENODEV)) {
+ if (rc == -1 && errno == ENOMEDIUM) {
+ bb_perror_msg_and_die("mounting %s on %s failed", mp->mnt_fsname, mp->mnt_dir);
+ }
if (!rc || (vfsflags & MS_RDONLY) || (errno != EACCES && errno != EROFS))