When I plug in/power on an external USB hard disk with two partitions, they often both get mounted on /media/disk (the second one on top of the first one). *Sometimes* I get /media/disk and /media/disk-1 instead (that's what should always happen). I suspect a race condition in /usr/share/hal/scripts/hal-system-storage-mount around line 175 when determining the mount point for the partition that has become available. My system is currently using sys-apps/hal-0.5.7.1-r5.
Unmask hal 0.5.9 and test.
Seems to work with sys-apps/hal-0.5.9-r1. Closing.