lkml.org 
[lkml]   [2000]   [Mar]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectOdd problem, maybe iso9660, maybe disk cache
Date

I've been tiptoeing my way into CD burning, and I recently ran off a
copy of a CD (updated drivers for my motherboard) using cdrecord to read
directly from my IDE CD drive and writing to my SCSI CDRW. I then mounted
both of them and ran a recursive diff. I got the following output:

Only in /scsicd/ASUSLM: ST5UNST.EX_
Only in /scsicd/ASUSLM: StdOle2.tl_
Only in /scsicd/ASUSLM: UNINSTAL.EX_
Only in /scsicd/ASUSLM: VB5StKit.dl_

Now, this is weird, because /scsicd is the CDRW, and I couldn't figure
out how it could have *added* files during the burning process. An ls on
the directories in question showed no difference. A second diff -r now
showed no differecences.

Eeek, intermittent problem! I set up a script and ran it for a while -
the problem shows up ~1/20 times, in spurts - on any given run of 10
diffs, it'll show up 3 or 4 times, or not at all. And sometimes it says
the files are only on the IDE CD, and sometimes only on the SCSI CDRW,
but it's *always* those four files.

Current config:

Kernel 2.2.11, unpatched except for some joystick modules. (I'm hoping
to upgrade to 2.2.14 in the next few days) The special ALi V IDE
patches are *not* applied. (No point since the IDE CD is the only
IDE device in the system.)
ASUS P5A motherboard, K6-II/400MHz (not overclocked), 2x64MB DIMMS
(i.e. 128MB)
Ancient Creative 4x ATAPI IDE CD, /dev/hdc, no SCSI emulation
NCR53c825 SCSI controller, ncr53cxx driver (sym53cxx needs 825a)
Yamaha CDRW6416SZ, has worked fine up to now

I ran a script that just did:

for i in 1 2 3 4 5 6 7 8 9 10
do
mount /idecd; mount /scsicd;
strace diff -r /idecd /scsicd 2> /tmp/pass$i;
umount/idecd; umount/scsicd;
done

The key difference between a successful and unsuccessful run:

2133,2136c2133
< getdents(3, /* 39 entries */, 984) = 896
< lseek(3, 2230, SEEK_SET) = 2230
< lseek(3, 0, SEEK_CUR) = 2230
< getdents(3, /* 1 entries */, 984) = 24
---
> getdents(3, /* 35 entries */, 984) = 800

And I saved a run with no problems, one with "Only in /idecd", and one
with "Only in /scicd". Of course, these files are 29MB uncompressed,
5MB gzipped, so I haven't included them, but I'll find a way to send
them to anyone who asks, or just the differences between them.

Any ideas, on how to fix it or what to look for to further localize it?

Sincerely,

Ray Ingles (248) 377-7735 ray.ingles@fanucrobotics.com

"I may submit to the unknown, but never to the unknowable."
- Roger Zelazny

-
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/

\
 
 \ /
  Last update: 2005-03-22 13:56    [W:0.022 / U:0.504 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site