udev-extraconf: Avoid mounting unknown filesystems

Submitted by Otavio Salvador on April 22, 2013, 11:52 a.m.

Details

Message ID 1366631550-12726-1-git-send-email-otavio@ossystems.com.br
State Accepted
Commit 895c9685a7f95dc84786213f945895a504a16254
Headers show

Commit Message

Otavio Salvador April 22, 2013, 11:52 a.m.
Depending on kernel version used, the system can hung when trying to
mount the extended partition (not the logical one) as it is a holder
for other partitions and does not have a filesystem in it.

To avoid this to happen we just mount partitions when these are using
known filesystems so it does not try to mount a partition for an
unsupported filesystem.

Reported-by: Vladan Jovanovic <vladan.jovanovic@gmail.com>
Reported-by: Leonardo Sandoval Gonzalez <b42214@freescale.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Tested-by: Vladan Jovanovic <vladan.jovanovic@gmail.com>
---
 meta/recipes-core/udev/udev-extraconf/mount.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Patch hide | download patch | download mbox

diff --git a/meta/recipes-core/udev/udev-extraconf/mount.sh b/meta/recipes-core/udev/udev-extraconf/mount.sh
index 97af608..d1419ed 100644
--- a/meta/recipes-core/udev/udev-extraconf/mount.sh
+++ b/meta/recipes-core/udev/udev-extraconf/mount.sh
@@ -47,7 +47,7 @@  rm_dir() {
 	fi
 }
 
-if [ "$ACTION" = "add" ] && [ -n "$DEVNAME" ]; then
+if [ "$ACTION" = "add" ] && [ -n "$DEVNAME" ] && [ -n "$ID_FS_TYPE" ]; then
 	if [ -x "$PMOUNT" ]; then
 		$PMOUNT $DEVNAME 2> /dev/null
 	elif [ -x $MOUNT ]; then

Comments

Qi.Chen@windriver.com Sept. 10, 2013, 8:55 a.m.
Hi Otavio,

This patch caused a new bug. So I'm afraid maybe this patch is not 
totally correct.
https://bugzilla.yoctoproject.org/show_bug.cgi?id=4487

The problem is that for a cdrom device, there's no ID_FS_TYPE.
Any idea?

Besides, could you please detail a little about what problem this patch 
is trying to solve?
Which kernel version is involved?

Best Regards,
Chen Qi


On 04/22/2013 07:52 PM, Otavio Salvador wrote:
> Depending on kernel version used, the system can hung when trying to
> mount the extended partition (not the logical one) as it is a holder
> for other partitions and does not have a filesystem in it.
>
> To avoid this to happen we just mount partitions when these are using
> known filesystems so it does not try to mount a partition for an
> unsupported filesystem.
>
> Reported-by: Vladan Jovanovic <vladan.jovanovic@gmail.com>
> Reported-by: Leonardo Sandoval Gonzalez <b42214@freescale.com>
> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> Tested-by: Vladan Jovanovic <vladan.jovanovic@gmail.com>
> ---
>   meta/recipes-core/udev/udev-extraconf/mount.sh | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/meta/recipes-core/udev/udev-extraconf/mount.sh b/meta/recipes-core/udev/udev-extraconf/mount.sh
> index 97af608..d1419ed 100644
> --- a/meta/recipes-core/udev/udev-extraconf/mount.sh
> +++ b/meta/recipes-core/udev/udev-extraconf/mount.sh
> @@ -47,7 +47,7 @@ rm_dir() {
>   	fi
>   }
>   
> -if [ "$ACTION" = "add" ] && [ -n "$DEVNAME" ]; then
> +if [ "$ACTION" = "add" ] && [ -n "$DEVNAME" ] && [ -n "$ID_FS_TYPE" ]; then
>   	if [ -x "$PMOUNT" ]; then
>   		$PMOUNT $DEVNAME 2> /dev/null
>   	elif [ -x $MOUNT ]; then
Otavio Salvador Sept. 13, 2013, 5:11 p.m.
On Tue, Sep 10, 2013 at 5:55 AM, ChenQi <Qi.Chen@windriver.com> wrote:
> Hi Otavio,

Hi Chen Qi,

> This patch caused a new bug. So I'm afraid maybe this patch is not totally
> correct.
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=4487
>
> The problem is that for a cdrom device, there's no ID_FS_TYPE.
> Any idea?

I noticed you did found a fix for this
(http://cgit.openembedded.org/openembedded-core/commit/?id=2df21a3b27543df912a3ce05bef2415fae13cb7c)
and I agree with the code change.

> Besides, could you please detail a little about what problem this patch is
> trying to solve?
> Which kernel version is involved?

This happens with 2.6.35.3 kernel IIRC. But your fix seems to proper
add support for cdrom and should be the way to go.

Thanks for looking at it.