> fossil(#S/sdC0/fossil)...version...time... > command 30 > data f0caaaf8 limit f0cab8f8 dlen 8291 status 0 error 0 > lba 605536 -> 605536, count 16 -> 16 (16) > 0x00 0x06 0x6A 0x3D 0x09 0xE0 0x58 > 0x40: E307 0x42: C0000x48: 00 > 0x4A: 0000 > fossil: diskWriteRaw failed: /dev/sdC0/fossil: score 0x00005529: date Sun Apr > 5 > 06:37:19 PDT 2009 > part=data block 21801: i/o error
did you type in this by hand? i'm wondering about the "dlen = 8291". that should be 8192. the device driver claims you owe him data after doing 10 sectors. but you would have given him another sector, had you gotten an interrupt. so the question is, why did you get the first 9 interrupts and not get the 10th? ยง9.1 #4 p. 64, ata 7 vol 2 says it should, but if you read a little further it can deassert the interrupt if the command register is written. it's really hard to say anything useful without seeing this problem up close. a rather desperate guess might be that this is a pio timing thing. (note that this is presented as an intel pci ide chipset. there must be a reason those registers are printed out for intel parts.) if it is, then dma mode from the get-go could fix the problem. is this an ahci-capable chipset? or is virtual pc presenting something odd? - erik