RE: via82cxxx.c 1.7 2.4.0-test6 OOPS

From: emddjf@chron.com
Date: Sun Aug 27 2000 - 23:32:35 EST


more info. I still get the OOPS when attempting to mount a cdrom
using the latest via 1.9 patch:

jacques# ./ksymoops -m /boot/System.map < /root/oops0
ksymoops 2.3.4 on i686 2.4.0-test7. Options used
     -V (default)
     -k /proc/ksyms (default)
     -l /proc/modules (default)
     -o /lib/modules/2.4.0-test7/ (default)
     -m /boot/System.map (specified)

No modules in ksyms, skipping objects
Warning (read_lsmod): no symbols in lsmod, is /proc/modules a valid lsmod file?
Unable to handle kernel NULL pointer dereference at virtual address 00000050
c014ce34
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<c014ce34>]
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010206
eax: 00000050 ebx: 00000050 ecx: c01fc0ec edx: 00000050
esi: cf1af406 edi: 00000000 ebp: cf9f6c00 esp: cf1dfe60
ds: 0018 es: 0018 ss: 0018
Process mount (pid: 539, stackpage=cf1df000)
Stack: c014ce9a 00000050 c014b861 00000050 cf9f6c00 00002100 cff08380 c0200aa0
       00002100 00000064 0000000a 00000000 00000012 00000000 00000003 cf1af400
       00000000 00000000 00000000 cf1ae0c0 6e79796e 0000756e 00000400 c026016d
Call Trace: [<c014ce9a>] [<c014b861>] [<c012ec24>] [<c012ee41>] [<c010a6b8>] [<c
012f9b9>] [<c012f7bd>]
       [<c012fb44>] [<c010a5a7>]
Code: 0f b6 0a 0f b6 42 01 c1 e0 08 09 c1 0f b6 42 02 c1 e0 10 09

>>EIP; c014ce34 <isonum_731+4/30> <=====
Trace; c014ce9a <isonum_733+a/10>
Trace; c014b861 <isofs_read_super+321/6b0>
Trace; c012ec24 <read_super+104/160>
Trace; c012ee41 <get_sb_bdev+151/1b0>
Trace; c010a6b8 <error_code+2c/34>
Trace; c012f9b9 <do_mount+1a9/2b0>
Trace; c012f7bd <copy_mount_options+4d/a0>
Trace; c012fb44 <sys_mount+84/d0>
Trace; c010a5a7 <system_call+33/38>
Code; c014ce34 <isonum_731+4/30>
00000000 <_EIP>:
Code; c014ce34 <isonum_731+4/30> <=====
   0: 0f b6 0a movzbl (%edx),%ecx <=====
Code; c014ce37 <isonum_731+7/30>
   3: 0f b6 42 01 movzbl 0x1(%edx),%eax
Code; c014ce3b <isonum_731+b/30>
   7: c1 e0 08 shl $0x8,%eax
Code; c014ce3e <isonum_731+e/30>
   a: 09 c1 or %eax,%ecx
Code; c014ce40 <isonum_731+10/30>
   c: 0f b6 42 02 movzbl 0x2(%edx),%eax
Code; c014ce44 <isonum_731+14/30>
  10: c1 e0 10 shl $0x10,%eax
Code; c014ce47 <isonum_731+17/30>
  13: 09 00 or %eax,(%eax)

1 warning issued. Results may not be reliable.

Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
PDC20265: IDE controller on PCI bus 00 dev 88
PDC20265: chipset revision 2
PDC20265: not 100% native mode: will probe irqs later
PDC20265: (U)DMA Burst Bit ENABLED Primary PCI Mode Secondary PCI Mode.
    ide0: BM-DMA at 0x8000-0x8007, BIOS settings: hda:DMA, hdb:pio
    ide1: BM-DMA at 0x8008-0x800f, BIOS settings: hdc:DMA, hdd:pio
VP_IDE: IDE controller on PCI bus 00 dev 21
VP_IDE: chipset revision 16
VP_IDE: not 100% native mode: will probe irqs later
VP_IDE: VIA vt82c686a IDE UDMA66 controller on pci0:4.1
    ide2: BM-DMA at 0xd800-0xd807, BIOS settings: hde:DMA, hdf:pio
hda: IBM-DTLA-307015, ATA DISK drive
hdc: IBM-DTLA-307015, ATA DISK drive
hde: KENWOOD CD-ROM UCR-421 V226E, ATAPI CDROM drive
ide0 at 0x9400-0x9407,0x9002 on irq 10
ide1 at 0x8800-0x8807,0x8402 on irq 10
ide2 at 0x1f0-0x1f7,0x3f6 on irq 14
hda: 30003120 sectors (15362 MB) w/1916KiB Cache, CHS=29765/16/63, UDMA(100)
hdc: 30003120 sectors (15362 MB) w/1916KiB Cache, CHS=29765/16/63, UDMA(100)
hde: ATAPI 68X CD-ROM drive, 2048kB Cache, UDMA(33)
Uniform CD-ROM driver Revision: 3.11
Partition check:
 hda: [PTBL] [1867/255/63] hda1
 hdc: hdc1 hdc2 < hdc5 hdc6 hdc7 hdc8 hdc9 hdc10 hdc11 hdc12 >

jacques% cat via
----------VIA BusMastering IDE Configuration----------------
South Bridge: VIA vt82c686a rev 0x22
Command register: 0x7
Latency timer: 32
Master Read Cycle IRDY: 0ws
Master Write Cycle IRDY: 0ws
FIFO Output Data 1/2 Clock Advance: off
BM IDE Status Register Read Retry: on
Max DRDY Pulse Width: No limit
-----------------------Primary IDE-------Secondary IDE------
Read DMA FIFO flush: on off
End Sect. FIFO flush: on off
Prefetch Buffer: on off
Post Write Buffer: on off
FIFO size: 16 0
Threshold Prim.: 3/4 1/2
Bytes Per Sector: 512 512
Both channels togth: yes yes
-------------------drive0----drive1----drive2----drive3-----
BMDMA enabled: yes no no no
Transfer Mode: UDMA DMA/PIO DMA/PIO DMA/PIO
Cycle (T): 15ns 30ns 30ns 30ns
Address Setup: --- 4T 4T 4T
Active Pulse: --- 11T 11T 11T
Recovery Time: --- 9T 9T 9T
Cycle Time: 4T 24T 24T 24T
Transfer Rate: 33.0MB/s 2.7MB/s 2.7MB/s 2.7MB/s

jacques# cat settings
name value min max mode
---- ----- --- --- ----
breada_readahead 4 0 127 rw
current_speed 66 0 69 rw
dsc_overlap 0 0 1 rw
file_readahead 0 0 2097151 rw
ide_scsi 0 0 1 rw
init_speed 12 0 69 rw
io_32bit 0 0 3 rw
keepsettings 0 0 1 rw
max_kb_per_request 127 1 127 rw
nice1 1 0 1 rw
number 0 0 3 rw
pio_mode write-only 0 255 w
slow 0 0 1 rw
unmaskirq 0 0 1 rw
using_dma 1 0 1 rw

jacques# hdparm -i /dev/hde

/dev/hde:
 HDIO_GET_MULTCOUNT failed: Invalid argument

 Model=KENWOOD CD-ROM UCR-421 V226E, FwRev=226, SerialNo=eSNr0 21S :W.797*
 Config={ Fixed Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic }
 RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0
 BuffType=0(?), BuffSize=256kB, MaxMultSect=0
 DblWordIO=no, OldPIO=2, DMA=yes, OldDMA=2
 (maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBAsects=0
 tDMA={min:120,rec:120}, DMA modes: sword0 sword1 sword2 mword0 mword1 mword2
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, PIO modes: mode4
 UDMA modes: mode0 mode1 *mode2

jacques# hdparm /dev/hde

/dev/hde:
 HDIO_GET_MULTCOUNT failed: Invalid argument
 I/O support = 0 (default 16-bit)
 unmaskirq = 0 (off)
 using_dma = 1 (on)
 keepsettings = 0 (off)
 HDIO_GET_NOWERR failed: Invalid argument
 readonly = 1 (on)
 readahead = 8 (on)
 HDIO_GETGEO failed: Invalid argument

Dwayne

> hi,
>
> I am using the 1.7 version of via82cxxx.c with 2.4.0-test6 on an ASUS A7V
> motherboard (KT133).
>
> I have one device on the VIA controller - a Kenwood 72x CDROM drive.
>
> The drive is patched to firmware version 226E which "allows UDMA operation".
>
> The drive shows up an a UDMA(33) device on boot.
>
> Whenever I try to mount a CDROM ("mount /dev/cdrom /cdrom") I get a
> kernel OOPS. I'm sorry I can't send it right now as my machine is
> at home and I am at work.
>
> I had to do a net install because even though I can mount the redhat 6.2
> cd when I create my own install disk with 2.4.0-test[4,6] and the via driver,
> it starts getting lost interrupts about midway through the RPM installation
> (usually on a big >10MB RPM).
>
> I think this is interesting because the drive works fine under Windows 98se
> and it obviously works for the most part during the install, but now
> that I have linux installed and the kernel built with the VIA driver,
> any attempt to mount any CDROM causes a delay of a few seconds and an OOPS.
>
> I am now using "ide=reverse" so that I can use LILO to dual-boot between
> windows and linux. I have two IBM ATA100 drives, one on each channel, on
> the onboard Promise controller.
>
> This makes the CDROM drive /dev/hde. Do you think that might be significant?
>
> Do you think there is a problem with the driver in that it is making
> an assumption that a UDMA(33) device on the via controller is going to
> be a hard drive?
>
> Is there a newer version of the via82cxxx.c driver I can try?
>
> Would you like me to send you additional information? If so, what
> shall I send? The OOPS of course, /proc/ide/via? /proc/ide/hde/settings?
> dmesg?
>
> I would like to help debug this in any way I can.
>
> Thanks,
>
> Dwayne
>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Aug 31 2000 - 21:00:20 EST