Comment 72 for bug 267913

Revision history for this message
Dane Mutters (dmutters) wrote :

I've just determined that my Windows 7 hard drive (750GB, NTFS, /dev/sdb) was faulty. It had around 100 bad sectors reported in the SMART logs, according to the Disk Utility (System > Administration > Disk Utility [in Natty]), and I discovered that the huge amount of I/O wait occurred only when I was accessing this drive, especially for a long data transfer (copy/move, etc.). Notably, after the first few hundred MB at around 45MB/s, it slowed abruptly to a crawl of about 5MB/s via 3GB/s SATA. It seemed to make little difference whether I had it mounted read-only (which is faster for NTFS on Linux), or r/w, and was equally slow in Windows 7 and in Linux (Ubuntu Natty).

I've since replaced the drive with a new 1TB SATA HD after testing it for bad sectors (using 'sudo badblocks -svb 4096 /dev/sdx'), and have noticed a dramatic speed increase. I've not yet checked whether the dmesg logs report this same error message as before, but I'll check when I get around to it.

So, here's my request for information from those experiencing this bug:

-Please ensure that SMART monitoring is enabled for all your drives, in BIOS.

-Open System > Administration > Disk Utility. Click on each of your drives, in turn, and click on the button for its SMART status. Please copy and paste any error entries you see, as well as anything that stands out to you.

-Please run the following command on each of your hard drives. You can do this on multiple drives at once, although I recommend not running many more instances than you have CPU cores. It's OK (and safe) to run this on mounted drives, even while data is being written to them. 'sudo badblocks -svb 4096 /dev/sdx' (Replace "sdx" with the device name for the hard drive you intend to test. Use only one drive per command, and DO NOT include the partition number--i.e. type "/dev/sda", and NOT "/dev/sda1".) Post all output from these commands to this thread. If any bad sectors at all are found--which will be noted by their block number--then your drive is bad, and should be replaced. This can usually be done under warranty, via the manufacturer's (Seagate, Western Digital, etc.--not Best Buy or similar). Badblocks will take a VERY long time to run, especially on a broken drive, so please be patient and continue until the end, or until you find a bad sector.

-Finally, run this command to get some verification and more information from SMART: 'sudo smartctl --log error /dev/sdx'. Replace sdx with your drive's /dev/ entry.

Please post all output from the above. I'm not a developer, but I have a whole lot of experience in dealing with the practical application of hardware testing and business-level computer repair. If my hunch is correct, this will allow you do solve your problems related to this bug once and for all! I'm honestly not sure how the sound driver relates to the performance problems or the hard drive failure I had, but given the excessive I/O wait that slowed down all 4 of my 2.66GHz CPU cores, it wouldn't surprise me if it's causing timeouts or other problems that the sound driver is sensitive to.

Good luck, and I look forward to reading your responses!

--Dane