NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/48858



The following reply was made to PR kern/48858; it has been noted by GNATS.

From: Roy Bixler <rcbixler%nyx.net@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: kern/48858
Date: Sun, 1 Jun 2014 10:41:03 -0600

 Unfortunately, I found that my patch is not a complete fix to the
 problem.  It does seem to help when I boot the system from the hard
 disk and then try to read from the CD-ROM.  However, when I use the
 patched kernel to make a new install CD-ROM and boot from it, I find
 that I am still not able to mount the installer's root filesystem.
 The symptoms are different; instead of "lost interrupts" and timeouts,
 the system immediately reports a failure to mount the root filesystem.
 
 I am not a device driver developer, so I don't really have the
 knowledge to try further kernel modifications.  I still have the
 impression that perhaps adding some quirk code to the driver could
 handle this issue.  For example, I note that the output from the
 Knoppix Linux dmesg output suggests that the driver initially detects
 the device as UDMA/133 but then, for some reason, downgrades it to
 UDMA/66.
 
 Also, if it's useful, here are the results from yet another experiment
 I did with modifying the source like this:
 
 --- siside.c.orig     2014-05-27 15:49:34.000000000 -0500
 +++ siside.c    2014-06-01 10:27:20.000000000 -0500
 @@ -158,7 +158,7 @@
         {PCI_PRODUCT_SIS_740,   0x00, 5, "740", SIS_TYPE_SOUTH},
         {PCI_PRODUCT_SIS_741,   0x00, 5, "741", SIS_TYPE_SOUTH},
         {PCI_PRODUCT_SIS_745,   0x00, 5, "745", SIS_TYPE_100NEW},
 -       {PCI_PRODUCT_SIS_746,   0x00, 6, "746", SIS_TYPE_SOUTH},
 +       {PCI_PRODUCT_SIS_746,   0x00, 6, "746", SIS_TYPE_133NEW},
         {PCI_PRODUCT_SIS_748,   0x00, 6, "748", SIS_TYPE_SOUTH},
         {PCI_PRODUCT_SIS_750,   0x00, 6, "750", SIS_TYPE_SOUTH},
         {PCI_PRODUCT_SIS_751,   0x00, 6, "751", SIS_TYPE_SOUTH},
 
 I booted this kernel from the hard drive and, after mounting the
 install CD, I tried a command like the following:
 
 find /mnt -type f| xargs wc
 
 What I saw was a bunch of timeouts and some read failures.  Here is
 the "dmesg" output from this experiment:
 
 siside0:1:0: lost interrupt
         type: atapi tc_bcount: 8192 tc_skip: 0
 siside0:1:0: bus-master DMA error: missing interrupt, status=0x61
 siside0:1:0: device timeout, c_bcount=8192, c_skip=0
 cd0: transfer error, downgrading to Ultra-DMA mode 3
 cd0(siside0:1:0): using PIO mode 4, Ultra-DMA mode 3 (using DMA)
 wd2(siside0:1:1): using PIO mode 4, Ultra-DMA mode 4 (Ultra/66) (using DMA)
 siside0:1:0: lost interrupt
         type: atapi tc_bcount: 2048 tc_skip: 0
 siside0:1:0: bus-master DMA error: missing interrupt, status=0x61
 siside0:1:0: device timeout, c_bcount=2048, c_skip=0
 cd0: transfer error, downgrading to Ultra-DMA mode 2
 cd0(siside0:1:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA)
 wd2(siside0:1:1): using PIO mode 4, Ultra-DMA mode 4 (Ultra/66) (using DMA)
 siside0:1:0: lost interrupt
         type: atapi tc_bcount: 2048 tc_skip: 0
 siside0:1:0: bus-master DMA error: missing interrupt, status=0x61
 siside0:1:0: device timeout, c_bcount=2048, c_skip=0
 cd0: transfer error, downgrading to Ultra-DMA mode 1
 cd0(siside0:1:0): using PIO mode 4, Ultra-DMA mode 1 (using DMA)
 wd2(siside0:1:1): using PIO mode 4, Ultra-DMA mode 4 (Ultra/66) (using DMA)
 siside0:1:0: lost interrupt
         type: atapi tc_bcount: 32 tc_skip: 0
 siside0:1:0: bus-master DMA error: missing interrupt, status=0x61
 siside0:1:0: device timeout, c_bcount=32, c_skip=0
 cd0: transfer error, downgrading to PIO mode 4
 cd0(siside0:1:0): using PIO mode 4
 wd2(siside0:1:1): using PIO mode 4, Ultra-DMA mode 4 (Ultra/66) (using DMA)
 cd0(siside0:1:0): generic HBA error
 siside0:1:0: piomode timed out
 
 These errors are very similar to what I saw in the initial problem
 report.  With my previous attempt at setting SIS_TYPE_100NEW, I didn't
 see these timeout errors or aborted reads with essentially the same
 "find" command as above.
 
 -- 
 Roy Bixler <rcbixler%nyx.net@localhost>
 "The fundamental principle of science, the definition almost, is this: the
 sole test of the validity of any idea is experiment."
 -- Richard P. Feynman
 


Home | Main Index | Thread Index | Old Index