From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.1) Gecko/20020826 Description of problem: Having an Ultra133 capable drive on a Promise 20269 controller with other drives that do Ultra100 causes CRC errors on all drives as they are used and the speeds to be set down to DMA66. If all drives are Ultra100 capable there are no CRC errors and all drives stay at Ultra100 as set by the kernel. Version-Release number of selected component (if applicable): How reproducible: Always Steps to Reproduce: 1.Install disk drives as listed in additional information below 2. Do some i/o on the IBM UDMA100 drives. Actual Results: hde: dma_intr: status=0x51 { DriveReady SeekComplete Error } hde: dma_intr: error=0x84 { DriveStatusError BadCRC } hdi: dma_intr: status=0x51 { DriveReady SeekComplete Error } hdi: dma_intr: error=0x84 { DriveStatusError BadCRC } and drives speeds are set down to UDMA66 Expected Results: No errors. Drive speeds saty at UDMA100 Additional info: I have 2 Promise 20269 Ultra133 TX2 IDE cards in two systems. System 1: hda (on motherboard) ST340016A (40GB) hdc (on motherboard) cd rom hde (1st promise card) IBM IC35L120AVVA07-0 (120GB) hdg (1st promise card) ST340016A hdi (2nd promise card) IBM IC35L120AVVA07-0 All drives are set to UDMA100 by default (this is their fastest transfer mode) and work fine. In my second system I have a similar setup but with Maxtor 6L040J2 40GB drives in place of the Seagate ones. These are capable of UDMA133 and the one on the promise board is indeed set to that speed by the kernel. The one thats hda is negotiated to UDMA100 since the motherboard controller cant do UDMA133. On this system, if I do any substatial i/o on any of the drives on the promise controllers (even the UDMA100 IBM drives) I get lots of eg: hde: dma_intr: status=0x51 { DriveReady SeekComplete Error } hde: dma_intr: error=0x84 { DriveStatusError BadCRC } hdi: dma_intr: status=0x51 { DriveReady SeekComplete Error } hdi: dma_intr: error=0x84 { DriveStatusError BadCRC } The speeds on the drives that have logged the errors are then set down to DMA66 as seen using hdparm -I. If I change the Maxtor 6L040J2 for another unit, the same errors happen. if I swap the Maxtor and Seagate units on the promise controllers between systems, the fault moves to the other system. So, the presence of the Maxtor drive on the promise controller provokes the problem. For info these drives are all in removeable drive bays (on both systems) which are rated at UDMA100. I checked that this wasnt the problem with the Maxtor drive by booting the system with dma disabled (ide=nodma) and then setting all the drives to UDMA100 (using hdparm) before enabling dma transfers. The CRC errors still occur and speeds are set down to UDMA66. I tried swapping cables as well, and that doesnt affect anything. This is with kernel 2.4.18-11 from rawhide, 2.4.18-12.5 gives the same behaviour. I need the rawhide kernels as they have a patch that fixes another problem with the motherboard.
CRC errors are usually bad cabling.....
Agreed. There are cases where cable detect can be confused by old drives, but the traces given here are what seem to be substandard devices. It may be a combination of a drive which is just in spec and a removable drive bay that is just in spec which together fail. The current behaviour appears correct. We saw problems, we slowed down.
Thanks for your comments on this. The problem I have in assigning this behaviour to a combination of just-in-spec components is that the presence of the Maxtor drive as hdg seems to cause the ibm drives (hde and hdi) to log CRC errors unless the Maxtor is set down to UDMA66 speed. If I change the Maxtor drive for a Seagate drive at hdg then the hde and hdi are fine with everything running at UDMA100. I don't understand how the hdg drive can affect the behaviour of the hde and hdi drives unless there is some driver problem. Thanks for your help on this.
Power draw, noise on the power lines, electrical noise generated by the driver and so on. I would be interested to know if you see the same with a different maxtor drive or with the drives plugged into the cable properly instead of via removable drive trays
ok, fair enough. As I said in the original detailed explanation (although not as clearly as I could have), if I change the Maxtor for another Maxtor I get the same problem with the ibm drives. If I change the Maxtor for a Seagate the problems go away. Also, if I put the Maxtor into the other server it provokes CRC errors on the IBM drives in it. With the Seagate drive in the other server there are no CRC errors on the IBM drives. I also tried swapping cables between hdi and hdg and that makes no difference. So, the CRC errors on the IBM drives (hde, hdi) seem to happen when a Maxtor is hdg. I'll try taking the drives out of the removable bays to see if this affects things in a while and get back to you later. Thanks.
Thanks for the bug report. However, Red Hat no longer maintains this version of the product. Please upgrade to the latest version and open a new bug if the problem persists. The Fedora Legacy project (http://fedoralegacy.org/) maintains some older releases, and if you believe this bug is interesting to them, please report the problem in the bug tracker at: http://bugzilla.fedora.us/