More iPod madness
29-Jun-2006As reported earlier, I’m having an iPod problem. I’m not trying to beat a dead horse, I’m just trying to isolate the cause of failure to see if open heart surgery and a new hard disk will be a waste of money.
The evidence so far comprises:
- A mysterious error dialog from iTunes
- A clean bill of health from chkdsk
- A message that appears in the Windows XP System Event Log
I decided to look at the Windows XP event log message.
According to Microsoft’s KB244780, the error 51 — “An error was detected on device \Device\Harddisk2\D during a paging operation.” is usually to do with disk I/O and memory management, except that:
However, the computer may log this event message when it loads images from a storage device, reads and writes to locally mapped files or to any file[...]
So it sounds like it’s a general I/O error. Luckily KB244780 describes how to interpret the raw data that comes along with the logged message.
0000: 04 00 68 00 01 00 b6 00 ..h...¶.
0008: 00 00 00 00 33 00 04 80 ....3..?
0010: 2d 01 00 00 00 00 00 00 -.......
0018: 00 00 00 00 00 00 00 00 ........
0020: 00 02 36 0d 00 00 00 00 ..6.....
0028: 33 4f 00 00 00 00 00 00 3O......
0030: ff ff ff ff 03 00 00 00 ÿÿÿÿ....
0038: 40 00 00 c4 02 00 00 00 @..Ä....
0040: 00 20 0a 12 80 02 20 40 . ..?. @
0048: 00 00 00 00 0a 00 00 00 ........
0050: 00 00 00 00 58 66 6f 86 ....Xfo?
0058: 00 00 00 00 b0 bc d7 86 ....°¼×?
0060: 00 00 00 00 01 9b 06 00 .....?..
0068: 2a 00 00 06 9b 01 00 00 *...?...
0070: 80 00 00 00 00 00 00 00 ?.......
0078: f0 00 0b 00 00 00 00 0b ð.......
0080: 00 00 00 00 10 00 00 00 ........
0088: 00 00 00 00 00 00 00 00 ........
What this means to say, in little-endian weirdness, is:
0000: Write operation, No retries, 0x68 byte dump, strings=0x0001, offset to device name=00b6
0008: NTSTATUS code = 80040033 (Error 51)
0010: Unique error=0000012d, NTSTATUS final status=00000000
0018: Seqno=00000000, io control code=00000000
0020: Byte offset to bad sector = 000000000d360200
0028: Tick count when error occurred = 0000000000004f33
0030: port number=ffffffff, error flags=03, unused=000000
0038: scsi status/srb status: 0x40 (undefined)/0x00 (no status yet)
...blah blah blah...
Unless my error-51-ese is slipping, somewhere around byte 221,643,264, of my approximately 60,000,000,000 byte iPod, there’s a sector that can’t be written for an undefined reason. 221 megabytes from the start of the drive is well into the iPod data storage partition, and past the mysterious non-partition 39 megabytes of “firmware” at the beginning of the iPod’s drive.
That doesn’t seem too bad… maybe I can partition past the location of the problem? What’s 200 megs or abandoned hard disk space between friends?
I then looked at some other Event Log error 51 messages. If they are to be believed, I also have a read error at a sector about 57meg, a write error at about 158meg, and a whole bunch of location-less write errors. Given more time, I’d go and dig out the physical drive geometry and work out if these errors occurred in similar physical locations as you might expect with a physical anomaly like a head crash, or internal dust bunny roadkill.
Finding this link, and lacking an easily found method of messing with partitions on the drive in Windows XP, I’m going to try messing with it under Linux once all else has failed.
While looking for a means of re-partitioning my iPod past the suspected problem area (Windows XP disk manager refuses to play “delete the partition” with me!) - I found this iPod diagnostics page. Basically, the process is to reset the iPod holding down the select and play buttons then when the Apple logo comes up, hold the select and left buttons to enter a menu of diagnostic tests. Most of the error and pass codes from the diagnostics are obvious, but some like the USB result are completely opaque to me.
My results?
Nothing that indicts or clears the hard disk:
USB test:
ID=0×22FA05 [Odd numbers bad! Aren't they?]
HDD Scan: Pass
HDD R/W: Pass
HDD SMART Data:
Retracts: 4 [Times the heads were retracted during an [unexpected] power-off event]
Reallocs: 0 ["Bad blocks" reallocated]
Pending Sectors: 0
Poweron hours: 38
Start/Stops: 199
HD Info (HDD SPecs):
TOSHIBA MK6006GAH
FirmwareRev:BY002A
HDSN: [...]
TOTAL LBA: 117210240
Total Size: 55GB
Temp Current: 29C
Min 9C Max 55C
At the end of all that it looks like there is nothing wrong with the hard disk according to diagnostics, yet there are read and write problems during operation. Beyond the partitioning stunt, I’m running out of diagnostic methods.
That extortionate Apple repair service is looking like a pretty good option.






If it was my iPod I would be doing the
Alastair | 30-Jun-2006If it was my iPod I would be doing the disk swap at this point. You’ve got I/O errors on specific sectors, what more evidence do you need that the HDD is dead or dying?
Also, if it turns out not to be an HDD problem you can always put the replacement drive on eBay, and fund the purchase of a new 5G iPod :)
eBay: it’s the world’s biggest spare-parts bin.
I'm with you. Without something that looks conclusive (like
Chris | 30-Jun-2006I’m with you. Without something that looks conclusive (like all the diagnosis tools that *should* tell me that the hard disk has errors telling me that the hard disk has errors) I just fear that I’ll waste my time replacing the hard drive when deep down it’s the USB/IDE bridge.
[...] *** Update: I was wrong in my problem isolation.
brainsnorkel.com » Blog Archive » Why good error messages matter: iTunes and iPod update | 5-Aug-2006[...] *** Update: I was wrong in my problem isolation. The problem is actually to do with an intermittent error reported on the iPod’s disk, and the steps taken below to resolve the issue worked because of luck, and not because of setting files to be writeable. The iTunes message appears to have been partially accurate. See also this post for further adventures in problem isolation. *** [...]
I am having the same problem with a nano. This
Jim | 30-May-2007I am having the same problem with a nano. This implies that the problem is not with the hard disc. I find it interesting that I had just updated the software on the iPod when this started to happen. Makes me think this is an Apple software problem.