Andriy Gapon wrote:
> on 28/02/2008 22:40 Joe Marcus Clarke said the following:
>> Andriy Gapon wrote:
>>> Using a path described in the following PR I formatted complete DVD-RAM
>>> disk with FAT32:
>>> http://www.freebsd.org/cgi/query-pr.cgi?pr=121182
>>>
>>> Now when I insert the disk hald tastes it for a very long time (much
>>> longer that I've seen ever before) and in the end it can not detect the
>>> filesystem.
>>>
>>> lshal shows this "volume.disk" device, but nothing under it:
>>> udi = '/org/freedesktop/Hal/devices/storage_model_DVDRAM_GSA_4163B_block'
>>> block.storage_device =
>>> '/org/freedesktop/Hal/devices/storage_model_DVDRAM_GSA_4163B' (string)
>>> info.product = 'Block Device' (string)
>>> info.udi =
>>> '/org/freedesktop/Hal/devices/storage_model_DVDRAM_GSA_4163B_block'
>>> (string)
>>> block.is_volume = false (bool)
>>> volume.disc.capacity = 4580769792 (0x111090000) (uint64)
>>> volume.disc.type = 'dvd_ram' (string)
>>> volume.disc.is_rewritable = true (bool)
>>> volume.disc.is_blank = false (bool)
>>> volume.disc.is_appendable = false (bool)
>>> volume.disc.is_videodvd = false (bool)
>>> volume.disc.is_svcd = false (bool)
>>> volume.disc.is_vcd = false (bool)
>>> volume.disc.has_data = true (bool)
>>> volume.disc.has_audio = false (bool)
>>> block.minor = 94 (0x5e) (int)
>>> block.major = 0 (0x0) (int)
>>> block.device = '/dev/cd1' (string)
>>> info.category = 'volume.disc' (string)
>>> info.bus = 'block' (string)
>>> info.capabilities = {'block', 'volume', 'volume.disc'} (string list)
>>> info.parent =
>>> '/org/freedesktop/Hal/devices/storage_model_DVDRAM_GSA_4163B' (string)
>>>
>>> And:
>>> $ file -s /dev/cd1
>>> /dev/cd1: x86 boot sector, code offset 0x58, OEM-ID "BSD 4.4",
>>> Bytes/sector 2048, sectors/cluster 2, heads 255, sectors 2236704
>>> (volumes > 32 MB) , FAT (32 bit), sectors/FAT 2181, Backup boot sector
>>> 2, serial number 0x7fbf1210, label: "SHUTTLE32 "
>>>
>>> I can provide any additional required debugging info.

>> HAL will wait 60 seconds before it times out the volume probe helper.
>> If it takes longer for the probe to determine the file system, then the
>> detection will fail. You can increase this in hald/freebsd/hf-volume.c
>> by increasing the PROBE_VOLUME_TIMEOUT multiplier. The
>> HAL_HELPER_TIMEOUT is 10 seconds.

>
> Thank you! I'll try that. But I actually still wonder what could take so
> long to recognize FAT32 fs. For example, cd9660 and udf on the same
> media are recognized very fast, and fat32 on usb stick stick is
> recognized very fast too.
> So it seems that there might be something unexpected for hal in this
> combo (dvd-ram+fat32). Maybe it's block size (2048), maybe something else.


The way FreeBSD works, one cannot read from raw media using any block
size. You must use the actual block size on the media. With UDF and
ISO9660, this is not a problem. This might fail for FAT32 on DVD media.
If you find that the probe runs to completion, and still doesn't
detect the correct file system, you can dig around in the libvolume_id
code and try to fix this problem.

Joe

>
>



--
Joe Marcus Clarke
FreeBSD GNOME Team :: gnome@FreeBSD.org
FreeNode / #freebsd-gnome
http://www.FreeBSD.org/gnome
_______________________________________________
freebsd-gnome@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-gnome
To unsubscribe, send any mail to "freebsd-gnome-unsubscribe@freebsd.org"