Obsolete! The Banshee Wiki is in the process of being phased out. Relevant content will be retained, but much content herein is out of date. Please visit the new Banshee web site!

The iPod Raid Bug

There are a select few models of iPods that have a filesystem detection issue in HAL. The actual problem is in the hardware/firmware of these iPods (a pattern of iPods exhibiting this problem has not yet been established, but it is usually evident on some of the newer iPod Nanos and Videos).

How to find out if you have the raid bug

Download and run the following script to get a debug dump of information about your iPod. If you have the raid bug, an ugly error message will be printed at the end of the output saying that the iPod is affected by the bug.

http://banshee-project.org/files/ipod-debug-dump.sh

What is the raid bug?

As such, HAL (actually, libvolume_id in udev) detects the volume.fsusage property for the storage device on the iPod as a raid device. The proper value for this property should be filesystem.

Mount daemons such as gnome-volume-manager use this property to see if the volume should be mounted or not. If the property is anything other than filesystem the proper policy is to not mount the volume. Thus, if you have the raid bug, your volume may not even get mounted.

Some mount daemons and utilities however do not adhere to this policy (and really should be fixed to adhere to it), and will mount affected iPods anyway. gnome-volume-manager however does follow this policy, and happens to be used in most popular modern Linux/GNOME distributions.

However, Banshee enforces this policy at the application level as well, for a number of other reasons (mostly performance related). Thus even if your system does (contrary to HAL policy) mount the iPod with the raid bug, Banshee will refuse to display it. This is the correct behavior and will not be changed. There is a fix at the proper level in the chain, described in the next section.

Is there a fix?

The good news is that there is a fix to the issue. Most recent HAL/udev/libvolume_id releases should have the patch already applied. However, if you still suffer from this problem you will need to apply the patch and rebuild the proper packages.

The patch is described in a mailing list post. It has been applied to upstream sources since October, 2006:

  • Ubuntu Bug Report (https://launchpad.net/distros/ubuntu/+source/hal/+bug/66068)
  • Mailing list post (http://lists.freedesktop.org/archives/hal/2006-October/006412.html)
  • udev patch (http://www.kernel.org/git/?p=linux/hotplug/udev.git;a=commitdiff;h=2658afdcf147afd384e27f0ac9019e27de7ba397)