Messages in this thread | | | Date | Fri, 8 Jan 1999 08:02:00 +0000 (GMT) | From | "Alex Butcher(linkern)" <> | Subject | (2.0.37pre4) Silent corruption of ATAPI CD-ROM data! |
| |
Hi -
I've just added a new ATAPI CD-R drive to my system and, having burnt a CD of an old partition I'm going to wipe, I thought I'd run a recursive cmp to check that the files were actually OK:
[root@cocoa system]# cmp -c ctreestd.dll /cdrom/windows/system/ctreestd.dll ctreestd.dll /cdrom/windows/system/ctreestd.dll differ: char 34966, line 214 is 3 ^C 23 ^S [root@cocoa system]# cmp -c dib.drv /cdrom/windows/system/dib.drv dib.drv /cdrom/windows/system/dib.drv differ: char 5, line 1 is 2 ^B 6 ^F [root@cocoa system]# cmp -c dinput.dll /cdrom/windows/system/dinput.dll dinput.dll /cdrom/windows/system/dinput.dll differ: char 21717, line 34 is 30 ^X 70 8 [root@cocoa system]# cmp -c dzip32.dll /cdrom/windows/system/dzip32.dll dzip32.dll /cdrom/windows/system/dzip32.dll differ: char 2069, line 5 is 123 S 63 3 [root@cocoa system]# cmp -c iccvid.drv /cdrom/windows/system/iccvid.drv iccvid.drv /cdrom/windows/system/iccvid.drv differ: char 1590, line 5 is 1 ^A 326 M-V [root@cocoa system]# cmp -c iomega~1.dll /cdrom/windows/system/iomega~1.dll iomega~1.dll /cdrom/windows/system/iomega~1.dll differ: char 5438, line 8 is 141 a 146 f [root@cocoa system]# cmp -c mcm.dll /cdrom/windows/system/mcm.dll mcm.dll /cdrom/windows/system/mcm.dll differ: char 92056, line 161 is 0 ^@ 60 0 [root@cocoa system]# cmp -c mfc40.dll /cdrom/windows/system/mfc40.dll mfc40.dll /cdrom/windows/system/mfc40.dll differ: char 22539, line 21 is 205 M-^E 105 E
Hmmm... a bunch of single byte errors. If I umount the CD and remount, those files will cmp OK:
[root@cocoa /dosd]# umount /cdrom [root@cocoa /dosd]# mount -t iso9660 -o nojoliet /dev/hdd /cdrom mount: block device /dev/hdd is write-protected, mounting read-only [root@cocoa system]# cmp -c mfc40.dll /cdrom/windows/system/mfc40.dll [root@cocoa system]#
If I recheck the file without remounting the differences are still there (presumably the bad copy is now cached?).
Presumably my memory would be a suspect, but I've not experienced any Sig11's whilst compiling the kernel (or anything else untoward, for that matter) and it is good quality Samsung PC100 memory that I'm only running at 66MHz on an Asus P2B motherboard. My system was *extremely* lightly loaded whilst performing these cmps.
My IDE cables are also new and typical quality, though unshielded. I cable my drives as follows:
/-----------------------------|-------| Motherboard Slave Master
QUESTIONS: Any ideas on what is causing this?
How can I flush Linux' buffer-cache so as to eliminate that as a possibility? (I would follow this with another cmp)
I think it's safe to assume that the data on the CD is actually OK, otherwise I would get consistent read errors, and presumably, ide-cd would report various unrecoverable errors, right?
My EIDE/ATAPI config follows...
/dev/hda:
Model=IBM-DHEA-36481, FwRev=HP6OA20C, SerialNo=SG0SGFM7540 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs } RawCHS=12592/16/63, TrkSize=0, SectSize=0, ECCbytes=28 BuffType=3(DualPortCache), BuffSize=472kB, MaxMultSect=16, MultSect=16 DblWordIO=no, maxPIO=2(fast), DMA=yes, maxDMA=2(fast) CurCHS=790/255/63, CurSects=12692736, LBA=yes, LBA=yes, LBAsects=12692736 tDMA={min:120,rec:120}, DMA modes: sword0 sword1 sword2 mword0 mword1 mword2 IORDY=on/off, tPIO={min:240,w/IORDY:120}, PIO modes: mode3 mode4 UDMA modes:
/dev/hdb:
Model=FUJITSU MPA3035ATU, FwRev=9517, SerialNo=01107498 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% } RawCHS=6781/16/63, TrkSize=0, SectSize=0, ECCbytes=4 BuffType=0(?), BuffSize=0kB, MaxMultSect=32, MultSect=32 DblWordIO=no, maxPIO=2(fast), DMA=yes, maxDMA=0(slow) CurCHS=847/128/63, CurSects=6835952, LBA=yes, LBA=yes, LBAsects=6835952 tDMA={min:120,rec:120}, DMA modes: mword0 mword1 mword2 IORDY=yes, tPIO={min:240,w/IORDY:120}, PIO modes: mode3 mode4 UDMA modes:
/dev/hdc:
Model=CR-4801TE, FwRev=1.05, SerialNo= Config={ SpinMotCtl Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic } RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0 BuffType=2(DualPort), BuffSize=0kB, MaxMultSect=0 DblWordIO=no, maxPIO=3(eide), DMA=yes, maxDMA=1(medium) (maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBA=yes, LBAsects=0 tDMA={min:150,rec:230}, DMA modes: ***sword2 **mword1 IORDY=on/off, tPIO={min:180,w/IORDY:180}, PIO modes: mode3
/dev/hdd:
Model=CREATIVE CD2422E, FwRev=M 1C20, SerialNo= Config={ SpinMotCtl Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic } RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0 BuffType=0(?), BuffSize=0kB, MaxMultSect=0 DblWordIO=no, maxPIO=3(eide), DMA=yes, maxDMA=1(medium) (maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBA=yes, LBAsects=0 tDMA={min:150,rec:150}, DMA modes: sword0 sword1 sword2 mword0 *mword1 IORDY=on/off, tPIO={min:180,w/IORDY:180}, PIO modes: mode3 mode4
Jan 6 20:33:45 cocoa kernel: ide: Intel 82371 (single FIFO) DMA Bus Mastering IDE Jan 6 20:33:45 cocoa kernel: Controller on PCI bus 0 function 33 Jan 6 20:33:45 cocoa kernel: ide: timings == d277e377 Jan 6 20:33:45 cocoa kernel: ide0: BM-DMA at 0xd800-0xd807 Jan 6 20:33:45 cocoa kernel: ide1: BM-DMA at 0xd808-0xd80f Jan 6 20:33:45 cocoa kernel: hda: IBM-DHEA-36481, 6197MB w/472kB Cache, CHS=790/255/63, UDMA Jan 6 20:33:45 cocoa kernel: hdb: FUJITSU MPA3035ATU, 3337MB w/0kB Cache, CHS=847/128/63, UDMA Jan 6 20:33:45 cocoa kernel: hdc: CR-4801TE, ATAPI drive - enabling SCSI emulation Jan 6 20:33:45 cocoa kernel: ATAPI overlap supported: No Jan 6 20:33:45 cocoa kernel: hdd: CREATIVE CD2422E, ATAPI CDROM drive Jan 6 20:33:45 cocoa kernel: ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 Jan 6 20:33:45 cocoa kernel: ide1 at 0x170-0x177,0x376 on irq 15 Jan 6 20:33:45 cocoa kernel: md driver 0.36.3 MAX_MD_DEV=4, MAX_REAL=8 Jan 6 20:33:45 cocoa kernel: scsi0 : SCSI host adapter emulation for IDE ATAPI devices Jan 6 20:33:45 cocoa kernel: scsi : 1 host. Jan 6 20:33:45 cocoa kernel: Vendor: MITSUMI Model: CR-4801TE Rev: 1.05 Jan 6 20:33:45 cocoa kernel: Type: CD-ROM ANSI SCSI revision: 02 Jan 6 20:33:45 cocoa kernel: Detected scsi CD-ROM sr0 at scsi0, channel 0, id 0, lun 0 Jan 6 20:33:45 cocoa kernel: scsi : detected 1 SCSI cdrom total.
I'm passing hdc=ide-scsi to the kernel as a boot parameter. hda and hdb are both using UDMA mode2, I've fixed hdc and hdd in the BIOS to only use PIO3, as per the Mitsumi manual.
If there's any further info I can add, please ask!
Best Regards, Alex.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |