I have possibly the same issue with a Dell D600. I can suspend or hibernate once, but often the hald-addon-storage process will get into an uninterruptible sleep state (as shown by the ps command) and then I cannot hibernate of suspend anymore. If I edit the /usr/share/hal/fdi/policy/... files so that process doesn't start, my suspend and hibernate problems go away, but then all the processes that automatically mount CDs don't work. I can also remove the CDRW/DVD drive from the D600 before booting and I can suspend and hibernate at will. Why don't you check using:
ps aux | grep hald and see if the hald-addon-storage process has a D or and S in the status collumn. D indicates uninterruptable sleep. S indicates sleep. Sometimes you can change it from D to S by inserting a CD in the CDROM, but sometimes that won't wake it from its coma either. I'm wondering if there is a way to stop and restart the hald-addon- storage process before and after each suspend or hibernate automatically. See the laptop testing page for this machine at: https://wiki.ubuntu.com/LaptopTestingTeam/DellLatitudeD600 -- HAL does not go to hibernate or sleep on Inspiron 600m https://launchpad.net/bugs/41709 -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs