-   Slackware (
-   -   hald and clicking floppy drive (

Lord Zoltar 11-08-2008 01:23 PM

hald and clicking floppy drive
I just finished a fresh install of slackware 12.1 on a new system, everything seems to have gone smoothly, except that the floppy drive clicks every few seconds.
syslog says:
"kernel: end_request: I/O error, dev fd0, sector 0
last message repeated 16 times"
Short-term way to fix this is I go and run `/etc/rc.d/rc.hald stop`, but I don't think this a great long-term solution.

I don't know much about HAL configs, and this is the first time I've seen this problem. Any tips?

Alstare 11-09-2008 10:22 PM

Is unpluging/disabling the floppy drive an option?

I can't see the use for such an outdated piece of hardware being of much use these days honestly aside from slowing bootup time.

niels.horn 11-10-2008 03:05 AM

Disabling it in the bios is another option.
Or do you still actually use your floppy drive?
I think I haven't used mine for years, now that everyone has pendrives and CD/DVD media are so cheap...

jong357 11-10-2008 09:35 AM

Same thing happened to me on my last Slack install. Couldn't be bothered to figure out what was going on so I unplugged it.... ;) It's been over 3 years since I used it anyway.

Ilgar 11-10-2008 01:16 PM

Powertop had suggested that I do

/usr/bin/hal-disable-polling --device /dev/hda

to stop hald from polling my CDROM device. Maybe you can try this with your floppy too (using the appropriate drive letter of course). Putting it in rc.local should to do it at every boot.

jong357 11-10-2008 02:36 PM

yea, that's a good idea. It should write an /etc/hal/fdi file or something like that so it stays global...

Lord Zoltar 11-10-2008 11:06 PM

I tried
`/usr/bin/hal-disable-polling --device /dev/fd0`
And I get back 'Polling is already disabled on the given drive.'

I looked at the fdi files in /usr/share/hal/fdi/ and didn't find many references to my floppy drive.
Actually, here's the only reference I found:
in /usr/share/hal/fdi/policy/10osvendor/20-storage-methods.fdi

    <!-- this is to be able to mount media in drives we cannot poll, e.g. IDE Zip Drives and PC style floppy drives -->
    <match key="storage.media_check_enabled" bool="false">
      <match key="storage.no_partitions_hint" bool="true">

        <append key="info.interfaces" type="strlist">org.freedesktop.Hal.Device.Volume</append>

        <append key="org.freedesktop.Hal.Device.Volume.method_names" type="strlist">Mount</append>
        <append key="org.freedesktop.Hal.Device.Volume.method_signatures" type="strlist">ssas</append>
        <append key="org.freedesktop.Hal.Device.Volume.method_argnames" type="strlist">mount_point fstype extra_options</append>
        <append key="org.freedesktop.Hal.Device.Volume.method_execpaths" type="strlist">hal-storage-mount</append>

        <append key="org.freedesktop.Hal.Device.Volume.method_names" type="strlist">Unmount</append>
        <append key="org.freedesktop.Hal.Device.Volume.method_signatures" type="strlist">as</append>
        <append key="org.freedesktop.Hal.Device.Volume.method_argnames" type="strlist">extra_options</append>
        <append key="org.freedesktop.Hal.Device.Volume.method_execpaths" type="strlist">hal-storage-unmount</append>

        <append key="org.freedesktop.Hal.Device.Volume.method_names" type="strlist">Eject</append>
        <append key="org.freedesktop.Hal.Device.Volume.method_signatures" type="strlist">as</append>
        <append key="org.freedesktop.Hal.Device.Volume.method_argnames" type="strlist">extra_options</append>
        <append key="org.freedesktop.Hal.Device.Volume.method_execpaths" type="strlist">hal-storage-eject</append>

        <!-- allow these mount options for all file systems -->
        <match key="/org/freedesktop/Hal/devices/" string="Linux">
          <append key="volume.mount.valid_options" type="strlist">ro</append>
          <append key="volume.mount.valid_options" type="strlist">sync</append>
          <append key="volume.mount.valid_options" type="strlist">dirsync</append>
          <append key="volume.mount.valid_options" type="strlist">noatime</append>
          <append key="volume.mount.valid_options" type="strlist">nodiratime</append>
          <append key="volume.mount.valid_options" type="strlist">noexec</append>
          <append key="volume.mount.valid_options" type="strlist">quiet</append>
          <append key="volume.mount.valid_options" type="strlist">remount</append>
          <append key="volume.mount.valid_options" type="strlist">exec</append>
          <!-- As this is removable media give some leeway -->
          <append key="volume.mount.valid_options" type="strlist">utf8</append>
          <append key="volume.mount.valid_options" type="strlist">shortname=</append>
          <append key="volume.mount.valid_options" type="strlist">codepage=</append>
          <append key="volume.mount.valid_options" type="strlist">iocharset=</append>
          <append key="volume.mount.valid_options" type="strlist">umask=</append>
          <append key="volume.mount.valid_options" type="strlist">uid=</append>
        <match key="/org/freedesktop/Hal/devices/" string="FreeBSD">
          <append key="volume.mount.valid_options" type="strlist">ro</append>
          <append key="volume.mount.valid_options" type="strlist">noexec</append>
          <append key="volume.mount.valid_options" type="strlist">noatime</append>

The line <match key="storage.media_check_enabled" bool="false"> is consistent with something I saw here:

...but when I actually try to query that property, I get no result:
#hal-get-property --udi /org/freedesktop/Hal/devices/platform_floppy_0 --key storage.media_check_enabled
error: libhal_device_get_property_type: org.freedesktop.Hal.NoSuchProperty: No property storage.media_check_enabled on device with id /org/freedesktop/Hal/devices/platform_floppy_0

Ilgar 11-12-2008 01:07 AM

Sorry I don't know much enough about HAL to say what to do next. The first line in your quote says floppies are not polled, but you say killing hald stops the clicks, right?

Lord Zoltar 11-13-2008 08:15 PM

Ummm so I upgraded udev to the version in -current last night, and now it works fine. Weird. :scratch: ...but at least it works now. :rolleyes:

All times are GMT -5. The time now is 10:03 AM.