hal-storage-mount segfaults when trying to mount some removable device

Ozan Çağlayan ozan at pardus.org.tr
Fri May 22 16:17:10 PDT 2009


Ozan Çağlayan wrote:
> Tested with a DVD media and a VFAT removable usb stick.
>
> udev 142
> HAL 0.5.12
> util-linux 2.15
>
> The following is from dmesg:
>
> [ 2425.808139] hal-storage-mou[25169]: segfault at 0 ip 0804a726 sp
> bf85c500 error 4 in hal-storage-mount[8048000+7000]
> [ 2478.681441] hal-storage-mou[25175]: segfault at 0 ip 0804a726 sp
> bf883570 error 4 in hal-storage-mount[8048000+7000]
> [ 2565.567246] hal-storage-mou[25196]: segfault at 0 ip 0804a726 sp
> bfac23a0 error 4 in hal-storage-mount[8048000+7000]
>   


Just tried a dummy stuff and it worked, can give some clues to developers:

the code segfaults when calling libhal_volume_get_fstype(volume) in
hal-storage-mount.c. It seems that the volume->fstype is somehow erased
in the logs so I modified libhal_volume_get_fstype() to:

const char *
libhal_volume_get_fstype (LibHalVolume *volume)
{
    if (volume->fstype)
·       return volume->fstype;
    else
        return "vfat";
}

So it jumped to the else block, and my vfat usb stick mounted
flawlessly. Looked around the git tree and couldn't find a commit which
can broke the whole stuff. I wonder if the issue could be related to
some low-level stuff, maybe dbus?



More information about the hal mailing list