All times are UTC-06:00




Post new topic  Reply to topic  [ 35 posts ] 
Author Message
 Post subject:
PostPosted: Tue Jul 10, 2007 5:41 am 
Offline
Site Admin

Joined: Fri Sep 24, 2004 1:39 am
Posts: 1589
Location: Austin, TX
Quote:
Quote:
There is ')' missing around if() in this file.
Like I said, totally untested, all I did was write it and upload it. I have no Pegasos here so I see no point in wasting time building a kernel when everyone who has been affected by the bug has been building kernels anyway :D
Quote:
Anyway tested with finak 2.6.22 and as expected both irq's are set to 14, but I am affraid this doesn't help with my problem with ATAPI device and I still can see timeout errors on boot :( Same as previous.
Can you take those errors to the Linux-IDE list and throw them past Tejun and Alan? As far as I am concerned and after studying all my previous notes on the IDE fix, to fit PCI mode properly this is the only, single change that needs making, so maybe something else is wrong.

Tejun also put out some patches which may also help (or hinder) the fixup.

*nudges tj*

Perhaps there is something missing from the fixup. Maybe we need to nudge the IDE controller and do a software reset or something, but libata should be doing that anyway. I dunno. Can you get to a shell and see if pata_via has reserved any resources (io memory etc.) which may be in the wrong places?

_________________
Matt Sealey


Top
   
 Post subject:
PostPosted: Tue Jul 10, 2007 9:52 am 
Offline

Joined: Thu Jul 28, 2005 12:41 am
Posts: 1066
Tested on Pegasos with firmware from 20040810, I get:

SCSI subsystem initialized
scsi0 : pata_via
scsi1 : pata_via
ata1: PATA max UDMA/100 cmd 0xfdff1000 ctl 0xfdff100e bmdma 0xfdff1020 irq 0
ata2: PATA max UDMA/100 cmd 0xfdff1010 ctl 0xfdff101e bmdma 0xfdff1028 irq 0
ata1.00: ata_hpa_resize 1: sectors = 78165360, hpa_sectors = 78165360
ata1.00: ATA-6: ST340014A, 8.01, max UDMA/100
ata1.00: 78165360 sectors, multi 16: LBA48
ata1.01: ata_hpa_resize 1: sectors = 156301488, hpa_sectors = 156301488
ata1.01: ATA-5: ST380021A, 3.19, max UDMA/100
ata1.01: 156301488 sectors, multi 16: LBA
ata1.00: ata_hpa_resize 1: sectors = 78165360, hpa_sectors = 78165360
ata1.00: configured for UDMA/100
ata1.01: ata_hpa_resize 1: sectors = 156301488, hpa_sectors = 156301488
ata1.01: configured for UDMA/100
ata2.00: ATAPI, max UDMA/33
ata2.00: configured for UDMA/33
scsi 0:0:0:0: Direct-Access ATA ST340014A 8.01 PQ: 0 ANSI: 5
scsi 0:0:1:0: Direct-Access ATA ST380021A 3.19 PQ: 0 ANSI: 5
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2 frozen
ata2.00: cmd a0/01:00:00:00:00/00:00:00:00:00/a0 tag 0 cdb 0x12 data 36 in
res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
ata2: soft resetting port
ata2.00: configured for UDMA/33
ata2: EH complete
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2 frozen
ata2.00: cmd a0/01:00:00:00:00/00:00:00:00:00/a0 tag 0 cdb 0x12 data 36 in
res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
ata2: soft resetting port
ata2.00: configured for UDMA/33
ata2: EH complete
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2 frozen
ata2.00: cmd a0/01:00:00:00:00/00:00:00:00:00/a0 tag 0 cdb 0x12 data 36 in
res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
ata2: soft resetting port
ata2.00: configured for UDMA/33
ata2: EH complete
ata2.00: limiting speed to UDMA/25:PIO4
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2 frozen
ata2.00: cmd a0/01:00:00:00:00/00:00:00:00:00/a0 tag 0 cdb 0x12 data 36 in
res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
ata2: soft resetting port
ata2.00: configured for UDMA/25
ata2: EH
complete

_________________
CzP
http://czanik.blogs.balabit.com/


Top
   
 Post subject:
PostPosted: Wed Jul 11, 2007 1:37 am 
Offline

Joined: Thu Jul 28, 2005 12:41 am
Posts: 1066
This output was created using 2.6.22-RC4. The latest factory arrived to mirrors finally this morning, so I just finished installation. Will test it also on 2.6.22-RC7...

_________________
CzP
http://czanik.blogs.balabit.com/


Top
   
 Post subject:
PostPosted: Wed Jul 11, 2007 7:56 am 
Offline
Site Admin

Joined: Fri Sep 24, 2004 1:39 am
Posts: 1589
Location: Austin, TX
http://www.powerdeveloper.org/files/Peg ... fixup.diff

Changes since yesterday;
  • * A proper patch!
    * Fixed checking for module builds of libata drivers
    * Now includes the patch to fix up the device tree just in case anyone was relying on it's contents
    * Sets the native interrupt routing mode (forgot this)
    * Manually sets native operation. Even if the chip is already in this mode, the PCI_CLASS_PROG register will always return 0x8a which denotes capability but not settings. Therefore we never can tell which mode it is in, therefore.. we be neurotic about it.
Anyone who tried it yesterday and got interrupt 0, or interrupt 14 but timeouts, the native interrupt routing mode should fix it.

I am also VERY interested in whether the original via86cxxx block driver works with this patch (remove the #if's and take out the Pegasos hack from that driver). If it does, then we can remove the weird Pegasos hack from there and move it into platform support.

Thanks guys

_________________
Matt Sealey


Top
   
 Post subject:
PostPosted: Wed Jul 11, 2007 9:42 am 
Offline

Joined: Thu Jul 28, 2005 12:41 am
Posts: 1066
OK, it works now. I made a couple of rounds around it, as I assumed, that mkinitrd on openSUSE loads all the necessary modules. Now tested with everything compiled in, and that works. Compiling it now again leaving everything as modules and fix up mkinitrd configuration...

_________________
CzP
http://czanik.blogs.balabit.com/


Top
   
 Post subject:
PostPosted: Wed Jul 11, 2007 10:03 am 
Offline

Joined: Thu Jul 28, 2005 12:41 am
Posts: 1066
And a dmesg from the running system:
Code:
Using CHRP machine description
Total memory = 256MB; using 512kB for hash table (at cff80000)
Linux version 2.6.22-rc7-3-default (geeko@buildhost) (gcc version 4.2.1 20070628 (prerelease) (SUSE Linux)) #4 Wed Jul 11 17:32:53 CEST 2007
Found initrd at 0xc2852000:0xc2a97214
Found legacy serial port 0 for /pci@80000000/isa@C/serial@i2F8
port=2f8, taddr=fe0002f8, irq=0, clk=1843200, speed=0
Entering add_active_range(0, 0, 65536) 0 entries of 256 used
chrp type = 6 [Genesi Pegasos]
Pegasos l2cr : L2 cache was not active, activating
PCI bus 0 controlled by /pci@80000000 at 80000000
PCI bus 0 controlled by /pci@C0000000 at c0000000
Top of RAM: 0x10000000, Total RAM: 0x10000000
Memory hole size: 0MB
Zone PFN ranges:
DMA 0 -> 65536
Normal 65536 -> 65536
HighMem 65536 -> 65536
early_node_map[1] active PFN ranges
0: 0 -> 65536
On node 0 totalpages: 65536
DMA zone: 512 pages used for memmap
DMA zone: 0 pages reserved
DMA zone: 65024 pages, LIFO batch:15
Normal zone: 0 pages used for memmap
HighMem zone: 0 pages used for memmap
Built 1 zonelists. Total pages: 65024
Kernel command line: root=/dev/sda6
i8259 legacy interrupt controller initialized
PID hash table entries: 1024 (order: 10, 4096 bytes)
time_init: decrementer frequency = 33.333333 MHz
time_init: processor frequency = 0.000003 MHz
Console: colour dummy device 80x25
console handover: boot [udbg0] -> real [tty0]
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
High memory: 0k
Memory: 250940k/262144k available (4772k kernel code, 10876k reserved, 172k data, 469k bss, 216k init)
Calibrating delay loop... 66.56 BogoMIPS (lpj=133120)
Security Framework v1.0.0 initialized
Mount-cache hash table entries: 512
NET: Registered protocol family 16
PCI: Probing PCI hardware
SCSI subsystem initialized
libata version 2.21 loaded.
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
TCP established hash table entries: 8192 (order: 4, 65536 bytes)
TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 8192 bind 8192)
TCP reno registered
Unpacking initramfs... done
Freeing initrd memory: 2324k freed
Thermal assist unit not available
audit: initializing netlink socket (disabled)
audit(1184175878.340:1): initialized
VFS: Disk quotas dquot_6.5.1
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered (default)
Fixing VIA IDE Interrupt Steering
PCI: Enabling device 0001:01:08.0 (0002 -> 0003)
radeonfb: Found Intel x86 BIOS ROM Image
radeonfb: No ATY,RefCLK property !
radeonfb: Retrieved PLL infos from BIOS
radeonfb: Reference=27.00 MHz (RefDiv=12) Memory=240.00 Mhz, System=200.00 MHz
radeonfb: PLL min 20000 max 40000
i2c-adapter i2c-1: unable to read EDID block.
i2c-adapter i2c-1: unable to read EDID block.
i2c-adapter i2c-1: unable to read EDID block.
i2c-adapter i2c-3: unable to read EDID block.
i2c-adapter i2c-3: unable to read EDID block.
i2c-adapter i2c-3: unable to read EDID block.
radeonfb: Monitor 1 type CRT found
radeonfb: EDID probed
radeonfb: Monitor 2 type no found
Console: switching to colour frame buffer device 210x65
radeonfb (0001:01:08.0): ATI Radeon Y`
Generic RTC Driver v1.07
Macintosh non-volatile memory driver v1.1
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled
serial8250.0: ttyS0 at I/O 0x2f8 (irq = 3) is a 16550A
pmac_zilog: 0.6 (Benjamin Herrenschmidt <benh@kernel.crashing.org>)
Serial: MPC52xx PSC UART driver
input: Macintosh mouse button emulation as /class/input/input0
apm_emu: PMU APM Emulation initialized.
Warning: no ADB interface detected
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
pata_via 0000:00:0c.1: version 0.3.1
scsi0 : pata_via
scsi1 : pata_via
ata1: PATA max UDMA/100 cmd 0xfdff1000 ctl 0xfdff100e bmdma 0xfdff1020 irq 0
ata2: PATA max UDMA/100 cmd 0xfdff1010 ctl 0xfdff101e bmdma 0xfdff1028 irq 0
ata1.00: ATA-6: ST340014A, 8.01, max UDMA/100
ata1.00: 78165360 sectors, multi 16: LBA48
ata1.01: ATA-5: ST380021A, 3.19, max UDMA/100
ata1.01: 156301488 sectors, multi 16: LBA
ata1.00: configured for UDMA/100
ata1.01: configured for UDMA/100
ata2.00: ATAPI: SAMSUNG CDRW/DVD SM-352N, TA00, max UDMA/33
ata2.00: configured for UDMA/33
scsi 0:0:0:0: Direct-Access ATA ST340014A 8.01 PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 78165360 512-byte hardware sectors (40021 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sd 0:0:0:0: [sda] 78165360 512-byte hardware sectors (40021 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sda: RDSK (512) sda1 (LNX^@)(res 2 spb 1) sda2 (SWP^@)(res 2 spb 1) sda3 (LNX^@)(res 2 spb 1) sda4 (LNX^@)(res 2 spb 1) sda5 (LNX^@)(res 2 spb 1) sda6 (LNX^@)(res 2 spb 1)
sd 0:0:0:0: [sda] Attached SCSI disk
sd 0:0:0:0: Attached scsi generic sg0 type 0
scsi 0:0:1:0: Direct-Access ATA ST380021A 3.19 PQ: 0 ANSI: 5
sd 0:0:1:0: [sdb] 156301488 512-byte hardware sectors (80026 MB)
sd 0:0:1:0: [sdb] Write Protect is off
sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sd 0:0:1:0: [sdb] 156301488 512-byte hardware sectors (80026 MB)
sd 0:0:1:0: [sdb] Write Protect is off
sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sdb: RDSK (512) sdb1 (SWP^@)(res 2 spb 1) sdb2 (LNX^@)(res 2 spb 1) sdb3 (LNX^@)(res 2 spb 1) sdb4 (LNX^@)(res 2 spb 1) sdb5 (LNX^@)(res 2 spb 1) sdb6 (LNX^@)(res 2 spb 1) sdb7 (LNX^@)(res 2 spb 1) sdb8 (LNX^@)(res 2 spb 1)
sd 0:0:1:0: [sdb] Attached SCSI disk
sd 0:0:1:0: Attached scsi generic sg1 type 0
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2 frozen
ata2.00: cmd a0/00:00:00:00:20/00:00:00:00:00/a0 tag 0 cdb 0x12 data 36 in
res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
ata2: soft resetting port
ata2.00: configured for UDMA/33
ata2: EH complete
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2 frozen
ata2.00: cmd a0/00:00:00:00:20/00:00:00:00:00/a0 tag 0 cdb 0x12 data 36 in
res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
ata2: soft resetting port
ata2.00: configured for UDMA/33
ata2: EH complete
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2 frozen
ata2.00: cmd a0/00:00:00:00:20/00:00:00:00:00/a0 tag 0 cdb 0x12 data 36 in
res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
ata2: soft resetting port
ata2.00: configured for UDMA/33
ata2: EH complete
ata2.00: limiting speed to UDMA/25:PIO4
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2 frozen
ata2.00: cmd a0/00:00:00:00:20/00:00:00:00:00/a0 tag 0 cdb 0x12 data 36 in
res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
ata2: soft resetting port
ata2.00: configured for UDMA/25
ata2: EH complete
ohci_hcd: 2006 August 04 USB 1.1 'Open' Host Controller (OHCI) Driver
PCI: Enabling device 0000:00:05.0 (0000 -> 0002)
ohci_hcd 0000:00:05.0: OHCI Host Controller
ohci_hcd 0000:00:05.0: new USB bus registered, assigned bus number 1
ohci_hcd 0000:00:05.0: irq 9, io mem 0x80000000
usb usb1: new device found, idVendor=0000, idProduct=0000
usb usb1: new device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: OHCI Host Controller
usb usb1: Manufacturer: Linux 2.6.22-rc7-3-default ohci_hcd
usb usb1: SerialNumber: 0000:00:05.0
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 3 ports detected
PCI: Enabling device 0000:00:05.1 (0000 -> 0002)
ohci_hcd 0000:00:05.1: OHCI Host Controller
ohci_hcd 0000:00:05.1: new USB bus registered, assigned bus number 2
ohci_hcd 0000:00:05.1: irq 9, io mem 0x80001000
usb usb2: new device found, idVendor=0000, idProduct=0000
usb usb2: new device strings: Mfr=3, Product=2, SerialNumber=1
usb usb2: Product: OHCI Host Controller
usb usb2: Manufacturer: Linux 2.6.22-rc7-3-default ohci_hcd
usb usb2: SerialNumber: 0000:00:05.1
usb usb2: configuration #1 chosen from 1 choice
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 2 ports detected
serio: i8042 KBD port at 0x60,0x64 irq 1
serio: i8042 AUX port at 0x60,0x64 irq 12
mice: PS/2 mouse device common for all mice
usb 1-3: new low speed USB device using ohci_hcd and address 2
usb 1-3: new device found, idVendor=062a, idProduct=0000
usb 1-3: new device strings: Mfr=0, Product=0, SerialNumber=0
usb 1-3: configuration #1 chosen from 1 choice
input: AT Translated Set 2 keyboard as /class/input/input1
atkbd.c: keyboard reset failed on isa0060/serio1
usbcore: registered new interface driver hiddev
input: HID 062a:0000 as /class/input/input2
input: USB HID v1.10 Mouse [HID 062a:0000] on usb-0000:00:05.0-3
usbcore: registered new interface driver usbhid
drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver
NET: Registered protocol family 1
NET: Registered protocol family 17
Freeing unused kernel memory: 216k init
PCI: Enabling device 0000:00:05.2 (0000 -> 0002)
ehci_hcd 0000:00:05.2: EHCI Host Controller
ehci_hcd 0000:00:05.2: new USB bus registered, assigned bus number 3
USB Universal Host Controller Interface driver v3.0
ehci_hcd 0000:00:05.2: irq 9, io mem 0x80002000
ehci_hcd 0000:00:05.2: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
usb 1-3: USB disconnect, address 2
usb usb3: new device found, idVendor=0000, idProduct=0000
usb usb3: new device strings: Mfr=3, Product=2, SerialNumber=1
usb usb3: Product: EHCI Host Controller
usb usb3: Manufacturer: Linux 2.6.22-rc7-3-default ehci_hcd
usb usb3: SerialNumber: 0000:00:05.2
usb usb3: configuration #1 chosen from 1 choice
hub 3-0:1.0: USB hub found
hub 3-0:1.0: 5 ports detected
PCI: Enabling device 0000:00:0c.2 (0000 -> 0001)
uhci_hcd 0000:00:0c.2: UHCI Host Controller
uhci_hcd 0000:00:0c.2: new USB bus registered, assigned bus number 4
uhci_hcd 0000:00:0c.2: irq 9, io base 0x00001040
usb usb4: new device found, idVendor=0000, idProduct=0000
usb usb4: new device strings: Mfr=3, Product=2, SerialNumber=1
usb usb4: Product: UHCI Host Controller
usb usb4: Manufacturer: Linux 2.6.22-rc7-3-default uhci_hcd
usb usb4: SerialNumber: 0000:00:0c.2
usb usb4: configuration #1 chosen from 1 choice
hub 4-0:1.0: USB hub found
hub 4-0:1.0: 2 ports detected
PCI: Enabling device 0000:00:0c.3 (0000 -> 0001)
uhci_hcd 0000:00:0c.3: UHCI Host Controller
uhci_hcd 0000:00:0c.3: new USB bus registered, assigned bus number 5
uhci_hcd 0000:00:0c.3: irq 9, io base 0x00001060
usb usb5: new device found, idVendor=0000, idProduct=0000
usb usb5: new device strings: Mfr=3, Product=2, SerialNumber=1
usb usb5: Product: UHCI Host Controller
usb usb5: Manufacturer: Linux 2.6.22-rc7-3-default uhci_hcd
usb usb5: SerialNumber: 0000:00:0c.3
usb usb5: configuration #1 chosen from 1 choice
hub 5-0:1.0: USB hub found
hub 5-0:1.0: 2 ports detected
usb 1-3: new low speed USB device using ohci_hcd and address 3
usb 1-3: new device found, idVendor=062a, idProduct=0000
usb 1-3: new device strings: Mfr=0, Product=0, SerialNumber=0
usb 1-3: configuration #1 chosen from 1 choice
input: HID 062a:0000 as /class/input/input3
input: USB HID v1.10 Mouse [HID 062a:0000] on usb-0000:00:05.0-3
REISERFS (device sda6): found reiserfs format "3.6" with standard journal
REISERFS warning (device sda6): reiserfs_fill_super: CONFIG_REISERFS_CHECK is set ON
REISERFS warning (device sda6): reiserfs_fill_super: - it is slow mode for debugging.
REISERFS (device sda6): using ordered data mode
reiserfs: using flush barriers
REISERFS (device sda6): journal params: device sda6, size 8192, journal first block 18, max trans len 1024, max batch 900, max commit age 30, max trans age 30
REISERFS (device sda6): checking transaction log (sda6)
REISERFS debug (device sda6): journal-1153: found in header: first_unflushed_offset 5468, last_flushed_trans_id 16095
REISERFS debug (device sda6): journal-1206: Starting replay from offset 69131793612512, trans_id 3478220800
REISERFS debug (device sda6): journal-1299: Setting newest_mount_id to 18
REISERFS (device sda6): Using r5 hash to sort names
via-rhine.c:v1.10-LK1.4.3 2007-03-06 Written by Donald Becker
PCI: Enabling device 0000:00:0d.0 (0000 -> 0003)
eth0: VIA Rhine II at 0xfdff1300, 00:0b:2f:43:10:f0, IRQ 9.
eth0: MII PHY found at address 16, status 0x786d advertising 01e1 Link 45e1.
PCI: Enabling device 0000:00:01.0 (0000 -> 0003)
ohci1394: fw-host0: OHCI-1394 1.0 (PCI): IRQ=[9] MMIO=[80002800-80002fff] Max Packet=[2048] IR/IT contexts=[8/8]
parport_pc: VIA 686A/8231 detected
parport_pc: probing current configuration
parport_pc: Current parallel port base: 0x3BC
parport0: PC-style at 0x3bc, irq 7 [PCSPP]
MV-643xx 10/100/1000 Ethernet Driver
eth1: port 1 with MAC address 00:0b:2f:62:78:b6
eth1: Scatter Gather Enabled
eth1: TX TCP/IP Checksumming Supported
eth1: RX TCP/UDP Checksum Offload ON
eth1: RX NAPI Enabled
eth1: Using SRAM
parport_pc: VIA parallel port: io=0x3BC, irq=7
NET: Registered protocol family 23
PCI: Enabling device 0000:00:0c.5 (0000 -> 0001)
ieee1394: Host added: ID:BUS[0-00:1023] GUID[0011060000004b2f]
Adding 1000432k swap on /dev/sdb1. Priority:-1 extents:1 across:1000432k
device-mapper: ioctl: 4.11.0-ioctl (2006-10-12) initialised: dm-devel@redhat.com
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.
loop: module loaded
fuse init (API version 7.8)
AppArmor: AppArmor initialized<5>audit(1184175921.128:2): AppArmor initialized
eth0: link up, 100Mbps, full-duplex, lpa 0x45E1
NET: Registered protocol family 10
lo: Disabled Privacy Extensions
Mobile IPv6
ip6_tables: (C) 2000-2006 Netfilter Core Team
ip_tables: (C) 2000-2006 Netfilter Core Team
audit(1184168749.029:3): audit_backlog_limit=320 old=64 by auid=4294967295 res=1
audit(1184168749.185:4): audit_pid=3060 old=0 by auid=4294967295
eth0: no IPv6 routers present

_________________
CzP
http://czanik.blogs.balabit.com/


Top
   
 Post subject:
PostPosted: Wed Jul 11, 2007 10:09 am 
Offline
Site Admin

Joined: Fri Sep 24, 2004 1:39 am
Posts: 1589
Location: Austin, TX
It still says irq 0? I think that is a summary of the problems with the timeout, but why? :(

_________________
Matt Sealey


Top
   
 Post subject:
PostPosted: Thu Jul 12, 2007 12:33 am 
Offline

Joined: Sun Oct 24, 2004 7:37 am
Posts: 37
Quote:
It still says irq 0? I think that is a summary of the problems with the timeout, but why? :(
I still suffer from the timeout problems. Anyway I have here a serial console then if you need aditional informations add required debug to kernel and send me a diff. I will be happy to check/send results for you.


Top
   
 Post subject:
PostPosted: Thu Jul 12, 2007 12:50 am 
Offline

Joined: Thu Jul 28, 2005 12:41 am
Posts: 1066
Did you also modify prom_init.c? Info for that was well hidden in yesterdays patch :) Today it seems to be included, and in a patch instead of needing to paste some text file to the end of a file.

I also had the problem, that openSUSE's mkinitrd did not load the necessary modules to use libata. When I compiled everything in, it worked fine. (libata, pata_via, scsi, scsi hdd). I'm just trying to build all of these as modules...

_________________
CzP
http://czanik.blogs.balabit.com/


Top
   
 Post subject:
PostPosted: Thu Jul 12, 2007 6:00 am 
Offline
Site Admin

Joined: Fri Sep 24, 2004 1:39 am
Posts: 1589
Location: Austin, TX
Quote:
Quote:
It still says irq 0? I think that is a summary of the problems with the timeout, but why? :(
I still suffer from the timeout problems. Anyway I have here a serial console then if you need aditional informations add required debug to kernel and send me a diff. I will be happy to check/send results for you.
You know it may be easier if you go find the VT8231 datasheet and start hacking around yourself.

I'd suggest removing the part that sets IRQ steering (top read/write pair) since in theory it is not necessary. Maybe I should poke 14 into the interrupt line, too, maybe it's being reset..?

Since I have no Pegasos here I am relying on other people to try the patch. The information in the dmesg even with debug output would be very low.. there is not much more information you can print out. All I can confirm is, that since it says it is fixing the problem in CzP's dmesg, then dev->irq is actually 14 which means you should get 14 back from libata.

Anyway. This should have been a fix of 5 minutes and now I have been playing with it for 5 days straight and been concerned about it for over a year.

_________________
Matt Sealey


Top
   
 Post subject:
PostPosted: Thu Jul 12, 2007 6:14 am 
Offline

Joined: Thu Jul 28, 2005 12:41 am
Posts: 1066
Looking a bit more carefully at dmesg reveals, that only the primary IDE is working. Secondary is found:
Code:
ata2.00: ATAPI: SAMSUNG CDRW/DVD SM-352N, TA00, max UDMA/33
ata2.00: configured for UDMA/33
but it does not work, as all the timeout messages belong to there.

Still, it's a lot better, than nothing. With some re-cabling, an installation should work with HD as primary master and CD as slave on the same cable.

BTW: tested, pata_via works now nicely as module. Will test the old driver next..

_________________
CzP
http://czanik.blogs.balabit.com/


Top
   
 Post subject:
PostPosted: Thu Jul 12, 2007 7:03 am 
Offline
Site Admin

Joined: Fri Sep 24, 2004 1:39 am
Posts: 1589
Location: Austin, TX
Quote:
Looking a bit more carefully at dmesg reveals, that only the primary IDE is working. Secondary is found:
Code:
ata2.00: ATAPI: SAMSUNG CDRW/DVD SM-352N, TA00, max UDMA/33
ata2.00: configured for UDMA/33
but it does not work, as all the timeout messages belong to there.

Still, it's a lot better, than nothing. With some re-cabling, an installation should work with HD as primary master and CD as slave on the same cable.

BTW: tested, pata_via works now nicely as module. Will test the old driver next..
So basically the same as we always thought; sharing interrupts for the secondary channel seems broken on the VT8231. Whether that is our fault or driver fault, I don't know, but many people must be running the Via IDE in native interrupt mode..

I think if we cannot resolve a way to fix this up it will HAVE to be a libata improvement. At least we are proving to the libata guys that, this is not a Pegasos problem, but weird Via chipset problem, and we could find some pata_via dedicated fix which handles such strange configurations (native IO with legacy interrupts).

_________________
Matt Sealey


Top
   
 Post subject:
PostPosted: Fri Jul 13, 2007 12:59 am 
Offline

Joined: Thu Jul 28, 2005 12:41 am
Posts: 1066
Quote:
I am also VERY interested in whether the original via86cxxx block driver works with this patch (remove the #if's and take out the Pegasos hack from that driver). If it does, then we can remove the weird Pegasos hack from there and move it into platform support.
Here you go. First of all, dmesg of hw detection:
Code:
VP_IDE: IDE controller at PCI slot 0000:00:0c.1
VP_IDE: chipset revision 6
VP_IDE: VIA vt8231 (rev 10) IDE UDMA100 controller on pci0000:00:0c.1
VP_IDE: 100% native mode on irq 14
ide0: BM-DMA at 0x1020-0x1027, BIOS settings: hda:pio, hdb:pio
ide1: BM-DMA at 0x1028-0x102f, BIOS settings: hdc:pio, hdd:pio
Probing IDE interface ide0...
hda: ST340014A, ATA DISK drive
hdb: ST380021A, ATA DISK drive
ide0 at 0x1000-0x1007,0x100e on irq 14
hda: max request size: 512KiB
hda: 78165360 sectors (40020 MB) w/2048KiB Cache, CHS=16383/255/63, UDMA(100)
hda: cache flushes supported
hda: RDSK (512) hda1 (LNX^@)(res 2 spb 1) hda2 (SWP^@)(res 2 spb 1) hda3 (LNX^@)(res 2 spb 1) hda4 (LNX^@)(res 2 spb 1) hda5 (LNX^@)(res 2 spb 1) hda6 (LNX^@)(res 2 spb 1)
hdb: max request size: 128KiB
hdb: 156301488 sectors (80026 MB) w/2048KiB Cache, CHS=65535/16/63, UDMA(100)
hdb: cache flushes not supported
hdb: RDSK (512) hdb1 (SWP^@)(res 2 spb 1) hdb2 (LNX^@)(res 2 spb 1) hdb3 (LNX^@)(res 2 spb 1) hdb4 (LNX^@)(res 2 spb 1) hdb5 (LNX^@)(res 2 spb 1) hdb6 (LNX^@)(res 2 spb 1) hdb7 (LNX^@)(res 2 spb 1) hdb8 (LNX^@)(res 2 spb 1)
Probing IDE interface ide1...
hdc: SAMSUNG CDRW/DVD SM-352N, ATAPI CD/DVD-ROM drive
ide1 at 0x1010-0x1017,0x101e on irq 14
and a lot later:
Code:
hdc: ATAPI 52X DVD-ROM CD-R/RW drive, 2048kB Cache, UDMA(33)
Uniform CD-ROM driver Revision: 3.20
When I try to mount a CD/DVD, I get a nice ooooops:
Code:
hdc: cdrom_pc_intr: The drive appears confused (ireason = 0x01). Trying to recover by ending request.
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hdc: drive not ready for command
Unable to handle kernel paging request for data at address 0x00000004
Faulting instruction address: 0xc00b1ab4
Oops: Kernel access of bad area, sig: 11 [#1]
CHRP
Modules linked in: snd_pcm_oss snd_mixer_oss snd_seq iptable_filter ip_tables ip6table_filter ip6_tables x_tables ipv6 radeon drm agpgart apparmor fuse loop dm_mod snd_via82xx snd_ac97_codec ac97_bus snd_pcm snd_timer snd_page_alloc snd_mpu401_uart snd_rawmidi ide_cd snd_seq_device mv643xx_eth snd cdrom via_rhine via_ircc soundcore irda crc_ccitt parport_pc parport ohci1394 ieee1394 uhci_hcd ehci_hcd via82cxxx
NIP: c00b1ab4 LR: c00b1ab0 CTR: c00b7714
REGS: c5793b50 TRAP: 0300 Tainted: G N (2.6.22-rc7-3-default)
MSR: 00009032 <EE,ME,IR,DR> CR: 24024428 XER: 00000000
DAR: 00000004, DSISR: 40000000
TASK = cfdc2e10[3358] 'hald-probe-volu' THREAD: c5792000
GPR00: c00b1ab0 c5793c00 cfdc2e10 00000000 00004000 00000001 cff71ba0 00000000
GPR08: 00000000 00000000 00000008 0000553b 0249ba93 10025174 00000009 c00b8740
GPR16: c90f1de8 00000008 ffffffff 00000000 c5793e90 c90f1de8 00000f80 c5793dec
GPR24: c5578200 c5578200 00004000 0249ba93 00000001 c05bd120 00000000 c05bd120
NIP [c00b1ab4] create_empty_buffers+0x24/0x110
LR [c00b1ab0] create_empty_buffers+0x20/0x110
Call Trace:
[c5793c00] [c00b1ab0] create_empty_buffers+0x20/0x110 (unreliable)
[c5793c10] [c00b4f94] block_read_full_page+0x54/0x444
[c5793c80] [c00b7730] blkdev_readpage+0x1c/0x2c
[c5793c90] [c006e45c] __do_page_cache_readahead+0x1d0/0x270
[c5793d10] [c006e574] blockable_page_cache_readahead+0x78/0xe8
[c5793d30] [c006e800] page_cache_readahead+0x148/0x1ec
[c5793d50] [c0067ba8] do_generic_mapping_read+0x12c/0x49c
[c5793de0] [c0069f84] generic_file_aio_read+0x130/0x19c
[c5793e30] [c008bd30] do_sync_read+0xb8/0x10c
[c5793ef0] [c008c898] vfs_read+0xec/0x190
[c5793f10] [c008ccc0] sys_read+0x4c/0x8c
[c5793f40] [c0012838] ret_from_syscall+0x0/0x40
--- Exception: c00 at 0xfd39068
LR = 0x10003f34
Instruction dump:
38210030 7c0803a6 4e800020 9421fff0 7c0802a6 bfc10008 7cbe2b78 38a00001
90010014 7c7f1b78 4bffff09 7c691b78 <81690004> 80090000 2f8b0000 7c00f378
And of course, any related command (mount / eject / etc. ) hangs, and are unable to be killed even by -9 :evil:

_________________
CzP
http://czanik.blogs.balabit.com/


Top
   
 Post subject:
PostPosted: Fri Jul 13, 2007 1:13 am 
Offline

Joined: Mon Jul 02, 2007 4:29 am
Posts: 4
Hello,

* In the patch, you need to update pdev->class too after updating the actual register.

* printing 0 as irq was a bug in libata fixed recently. 2.6.22 should print the proper irq line number.

* Dunno about the specific chipset but via PATAs usually work fine in native mode.

* In the error message, ata2.00 timesout requests to configure udma/33 but gets successfully configured for udma/25. I wonder it's drive-specific problem. Can you put another device at the secondary channel and test?

Thanks.

_________________
tejun


Top
   
 Post subject:
PostPosted: Fri Jul 13, 2007 1:34 am 
Offline

Joined: Thu Jul 28, 2005 12:41 am
Posts: 1066
The same drive works fine with an unmodified old IDE driver, so it's probably not a hw problem. None the less, I'll try to find another drive when I next go to Budapest, as it's the only one here.

_________________
CzP
http://czanik.blogs.balabit.com/


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 35 posts ] 

All times are UTC-06:00


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
PowerDeveloper.org: Copyright © 2004-2012, Genesi USA, Inc. The Power Architecture and Power.org wordmarks and the Power and Power.org logos and related marks are trademarks and service marks licensed by Power.org.
All other names and trademarks used are property of their respective owners. Privacy Policy
Powered by phpBB® Forum Software © phpBB Group