On 12 September 2002 12:12, Jan Kasprzak wrote:
> my dual athlon box is unstable in some situations. I can consistently
> lock it up by running the following code:
>
> fd = open("/dev/hda3", O_RDWR);
> for (i=0; i<1024*1024; i++) {
> read(fd, buffer, 8192);
> lseek(fd, -8192, SEEK_CUR);
> write(fd, buffer, 8192);
> }
8 GB... Can you make it loop over much lesser size?
for (j=0; j<1024; j++) {
fd = open("/dev/hda3", O_RDWR);
for (i=0; i<1024; i++) {
read(fd, buffer, 8192);
lseek(fd, -8192, SEEK_CUR);
write(fd, buffer, 8192);
}
close(fd);
printf(<some stats>);
}
I assume removing read+lseek eliminates lockup?
> I tried to put the tested disk to a separate IDE controller
> (Promise PDC20269 PCI card) - then I do not get a complete lockup,
> just the drive starts to complain about the DMA timeout, and the kernel
> reesets the controller. However, DMA timeouts start to occur even on
> the primary controller.
Is it IDE related or not?
If you can test it over SCSI/NFS/ramdisk/???...
> When I switch off the DMA (hdparm -d0 /dev/hda), the problem goes away
> (however, the disk is very slow, as expected).
At which DMA/UDMA mode it starts to fail?
-- vda - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sun Sep 15 2002 - 22:00:30 EST