* PATA_ARTOP oppes in 2.6.38
@ 2011-03-28 0:31 Daniel Palmer
2011-03-28 7:25 ` Mikael Pettersson
0 siblings, 1 reply; 3+ messages in thread
From: Daniel Palmer @ 2011-03-28 0:31 UTC (permalink / raw)
To: linux-ide
Hi,
I posted this on the linux-sh list too
(http://marc.info/?l=linux-sh&m=130121196319157&w=2).
With vanilla 2.6.38 the board/arch specific code was generating the
wrong address for one of the IO ports associated with the PATA
controller (I don't really understand how PCI works, I'm just guessing
here based on the dmesg output really.. ;)). In vanilla 2.6.38
pata_artop oops on "Unable to handle kernel paging request at virtual
address 000013ff" instead.. this is now fixed so it's not accessing
outside of the assigned ranges but it still oops.
I've attached the full output from the board below.. you should be able
to see where I load modules and it oops when pata_artop is loaded.
If someone could help me debug this I would be very grateful.
Regards,
Daniel
SH IPL+g version 0.9, Copyright (C) 2000 Free Software Foundation, Inc.
This software comes with ABSOLUTELY NO WARRANTY; for details type `w'.
This is free software, and you are welcome to redistribute it under
certain conditions; type `l' for details.
2002/09/09 Making. 2003/10/16 I-O DATA NSD NWG Update.
266:133:33 on base clock 22.22MHz and SDRAM 4 burst. ATA boot.
A-Card ATP865 ATA controller found.
PCIC initialization done.
MASTER:48bit LBA mode non support
Disk drive detected: SanDisk SDCFH-004G HDX 5.04 ALZ012210190202
LBA: 00778E30
DiskSize: 4011614208Byte
PIO MODE1
Set Transfer Mode result: 50
A-Card ATP865 ATA controller found.
> b
Set Transfer Mode result: 50
Initialize Device Parameters result: 50
IDLE result: 50
LILO boot:
1 : NEW
2 : CF
3 : TEST
4 : 38
Select boot image -> 4
Loading 38.....................................................done.
[ 0.000000] Setting GDB trap vector to 80000100
[ 0.000000] Linux version 2.6.38dgp (root@momoko) (gcc version 4.4.5
(Debian 4.4.5-12) ) #1 Sun Mar 27 12:06:40 JST 2011
[ 0.000000] Boot params:
[ 0.000000] ... MOUNT_ROOT_RDONLY - 00000001
[ 0.000000] ... RAMDISK_FLAGS - 00000000
[ 0.000000] ... ORIG_ROOT_DEV - 00000301
[ 0.000000] ... LOADER_TYPE - 00000001
[ 0.000000] ... INITRD_START - 00000000
[ 0.000000] ... INITRD_SIZE - 00000000
[ 0.000000] Memory limited to 64MB
[ 0.000000] Booting machvec: LANDISK
[ 0.000000] initrd disabled
[ 0.000000] Node 0: start_pfn = 0xc000, low = 0x10000
[ 0.000000] Zone PFN ranges:
[ 0.000000] Normal 0x0000c000 -> 0x00010000
[ 0.000000] Movable zone start PFN for each node
[ 0.000000] early_node_map[1] active PFN ranges
[ 0.000000] 0: 0x0000c000 -> 0x00010000
[ 0.000000] I-O DATA DEVICE, INC. "LANDISK Series" support.
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on.
Total pages: 16256
[ 0.000000] Kernel command line: ro mem=64M console=ttySC1,9600
root=/dev/hda3 rootdelay=20
[ 0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
[ 0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768
bytes)
[ 0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] PVR=04050005 CVR=20480000 PRR=00000113
[ 0.000000] I-cache : n_ways=2 n_sets=256 way_incr=8192
[ 0.000000] I-cache : entry_mask=0x00001fe0 alias_mask=0x00001000
n_aliases=2
[ 0.000000] D-cache : n_ways=2 n_sets=512 way_incr=16384
[ 0.000000] D-cache : entry_mask=0x00003fe0 alias_mask=0x00003000
n_aliases=4
[ 0.000000] Memory: 60832k/65536k available (2257k kernel code, 546k
data, 1200k init)
[ 0.000000] virtual kernel memory layout:
[ 0.000000] fixmap : 0xdfff7000 - 0xdffff000 ( 32 kB)
[ 0.000000] vmalloc : 0xc0000000 - 0xdfff5000 ( 511 MB)
[ 0.000000] lowmem : 0x8c000000 - 0x90000000 ( 64 MB) (cached)
[ 0.000000] : 0xa0000000 - 0xc0000000 ( 512 MB) (uncached)
[ 0.000000] .init : 0x8c2bf000 - 0x8c3eb000 (1200 kB)
[ 0.000000] .data : 0x8c2356b4 - 0x8c2be100 ( 546 kB)
[ 0.000000] .text : 0x8c001000 - 0x8c2356b4 (2257 kB)
[ 0.000000] NR_IRQS:512 nr_irqs:512 8
[ 0.000000] intc: Registered controller 'sh7750' with 20 IRQs
[ 0.000000] intc: Registered controller 'sh7750_dma8' with 9 IRQs
[ 0.000000] intc: Registered controller 'sh7750_tmu34' with 2 IRQs
[ 0.000000] intc: Registered controller 'sh7750_pci' with 8 IRQs
[ 0.000000] intc: Registered controller 'landisk' with 8 IRQs
[ 0.000000] Console: colour dummy device 80x25
[ 0.000000] sh_tmu.0: used for clock events
[ 0.000000] sh_tmu.0: used for periodic clock events
[ 0.000000] sh_tmu.1: used as clock source
[ 0.000000] Calibrating delay loop (skipped)... 266.66 BogoMIPS
PRESET (lpj=533333)
[ 0.000000] pid_max: default: 32768 minimum: 301
[ 0.000000] Mount-cache hash table entries: 512
[ 0.000000] CPU: SH7751R
[ 0.008000] print_constraints: dummy:
[ 0.008000] NET: Registered protocol family 16
[ 0.020000] PCI: Starting initialization.
[ 0.044000] bio: create slab <bio-0> at 0
[ 0.048000] vgaarb: loaded
[ 0.052000] SCSI subsystem initialized
[ 0.064000] pci 0000:00:01.0: BAR 6: assigned [mem
0xfd000000-0xfd00ffff pref]
[ 0.064000] pci 0000:00:02.0: BAR 0: assigned [mem
0xfd010000-0xfd010fff]
[ 0.064000] pci 0000:00:02.0: BAR 0: set to [mem
0xfd010000-0xfd010fff] (PCI address [0xfd010000-0xfd010fff])
[ 0.064000] pci 0000:00:02.1: BAR 0: assigned [mem
0xfd011000-0xfd011fff]
[ 0.064000] pci 0000:00:02.1: BAR 0: set to [mem
0xfd011000-0xfd011fff] (PCI address [0xfd011000-0xfd011fff])
[ 0.064000] pci 0000:00:00.0: BAR 0: assigned [io 0x1000-0x10ff]
[ 0.064000] pci 0000:00:00.0: BAR 0: set to [io 0x1000-0x10ff] (PCI
address [0x1000-0x10ff])
[ 0.064000] pci 0000:00:00.0: BAR 1: assigned [mem
0xfd012000-0xfd0120ff]
[ 0.064000] pci 0000:00:00.0: BAR 1: set to [mem
0xfd012000-0xfd0120ff] (PCI address [0xfd012000-0xfd0120ff])
[ 0.064000] pci 0000:00:02.2: BAR 0: assigned [mem
0xfd012100-0xfd0121ff]
[ 0.064000] pci 0000:00:02.2: BAR 0: set to [mem
0xfd012100-0xfd0121ff] (PCI address [0xfd012100-0xfd0121ff])
[ 0.064000] pci 0000:00:01.0: BAR 4: assigned [io 0x1400-0x140f]
[ 0.064000] pci 0000:00:01.0: BAR 4: set to [io 0x1400-0x140f] (PCI
address [0x1400-0x140f])
[ 0.064000] pci 0000:00:01.0: BAR 0: assigned [io 0x1410-0x1417]
[ 0.064000] pci 0000:00:01.0: BAR 0: set to [io 0x1410-0x1417] (PCI
address [0x1410-0x1417])
[ 0.064000] pci 0000:00:01.0: BAR 2: assigned [io 0x1418-0x141f]
[ 0.064000] pci 0000:00:01.0: BAR 2: set to [io 0x1418-0x141f] (PCI
address [0x1418-0x141f])
[ 0.064000] pci 0000:00:01.0: BAR 1: assigned [io 0x1420-0x1423]
[ 0.064000] pci 0000:00:01.0: BAR 1: set to [io 0x1420-0x1423] (PCI
address [0x1420-0x1423])
[ 0.064000] pci 0000:00:01.0: BAR 3: assigned [io 0x1424-0x1427]
[ 0.064000] pci 0000:00:01.0: BAR 3: set to [io 0x1424-0x1427] (PCI
address [0x1424-0x1427])
[ 0.068000] Switching to clocksource sh_tmu.1
[ 0.072000] platform sh_tmu.0: used for oneshot clock events
[ 0.152000] NET: Registered protocol family 2
[ 0.152000] IP route cache hash table entries: 1024 (order: 0, 4096
bytes)
[ 0.152000] TCP established hash table entries: 2048 (order: 2, 16384
bytes)
[ 0.152000] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.152000] TCP: Hash tables configured (established 2048 bind 2048)
[ 0.152000] TCP reno registered
[ 0.152000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.152000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.456000] sq: Registering store queue API.
[ 0.460000] gio: driver initialized
[ 0.472000] VFS: Disk quotas dquot_6.5.2
[ 0.472000] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.472000] ROMFS MTD (C) 2007 Red Hat, Inc.
[ 0.472000] msgmni has been set to 118
[ 0.476000] Block layer SCSI generic (bsg) driver version 0.4 loaded
(major 253)
[ 0.476000] io scheduler noop registered (default)
[ 1.624000] SuperH SCI(F) driver initialized
[ 1.628000] sh-sci.0: ttySC0 at MMIO 0xffe00000 (irq = 23) is a sci
[ 1.632000] sh-sci.1: ttySC1 at MMIO 0xffe80000 (irq = 40) is a scif
[ 8.500000] console [ttySC1] enabled
[ 8.664000] brd: module loaded
[ 8.708000] mousedev: PS/2 mouse device common for all mice
[ 8.776000] cpuidle: using governor ladder
[ 8.832000] sh_tmu sh_tmu.0: kept as earlytimer
[ 8.888000] sh_tmu sh_tmu.1: kept as earlytimer
[ 8.948000] TCP cubic registered
[ 8.984000] Registering the dns_resolver key type
[ 9.048000] registered taskstats version 1
[ 9.104000] Freeing unused kernel memory: 1200k freed
Dropping into initramfs environment
/bin/sh: can't access tty; job control turned off
/ # insmod
bin/ init modules/ sbin/ usr/
dev/ mnt/ proc/ sys/
/ # insmod modules/
ext3.ko jbd.ko libata.ko mbcache.ko pata_artop.ko
/ # insmod modules/jbd.ko
/ # insmod modules/mbcache.ko
/ # insmod modules/ext3.ko
/ # insmod modules/libata.ko
/ # insmod modules/pata_artop.ko
[ 58.284000] Unable to handle kernel paging request at virtual address
00001400
[ 58.372000] pc = c00fa28e
[ 58.400000] *pde = 00000000
[ 58.436000] Oops: 0000 [#1]
[ 58.436000] last sysfs file:
[ 58.436000] Modules linked in: pata_artop(+) libata ext3 mbcache jbd
[ 58.436000]
[ 58.436000] Pid : 783, Comm: insmod
[ 58.436000] CPU : 0 Not tainted (2.6.38dgp #1)
[ 58.436000]
[ 58.436000] PC is at artop_init_one+0xee/0x1e0 [pata_artop]
[ 58.436000] PR is at artop_init_one+0xee/0x1e0 [pata_artop]
[ 58.436000] PC : c00fa28e SP : 8ff9fe58 SR : 40008101 TEA : 00001400
[ 58.436000] R0 : 00001400 R1 : 00000000 R2 : 00000001 R3 : 00001000
[ 58.436000] R4 : 00001400 R5 : 00000001 R6 : 00000005 R7 : 00000005
[ 58.436000] R8 : 8ff9fe58 R9 : 8fc3b020 R10 : c00fa81c R11 : 8fc3b020
[ 58.436000] R12 : 8c003a80 R13 : 8c182780 R14 : 004ae284
[ 58.436000] MACH: 0000016b MACL: 0000019a GBR : 0051c470 PR : c00fa28e
[ 58.436000]
[ 58.436000] Call trace:
[ 58.436000] [<8c1494ea>] local_pci_probe+0x4a/0x120
[ 58.436000] [<8c003a80>] arch_local_save_flags+0x0/0x20
[ 58.436000] [<8c003a40>] arch_local_irq_restore+0x0/0x40
[ 58.436000] [<8c131c10>] kobject_get+0x10/0x20
[ 58.436000] [<8c149a22>] pci_device_probe+0x62/0xa0
[ 58.436000] [<8c003a80>] arch_local_save_flags+0x0/0x20
[ 58.436000] [<8c17da64>] driver_probe_device+0xa4/0x220
[ 58.436000] [<8c003a40>] arch_local_irq_restore+0x0/0x40
[ 58.436000] [<8c17dc66>] __driver_attach+0x86/0xa0
[ 58.436000] [<8c232a00>] mutex_lock+0x0/0x60
[ 58.436000] [<8c17d10e>] bus_for_each_dev+0x4e/0x80
[ 58.436000] [<8c22bd60>] klist_next+0x0/0xe0
[ 58.436000] [<8c17dbe0>] __driver_attach+0x0/0xa0
[ 58.436000] [<8c17c8e2>] bus_add_driver+0x82/0x240
[ 58.436000] [<8c17dff2>] driver_register+0x52/0x160
[ 58.436000] [<c00fd000>] artop_init+0x0/0x1c [pata_artop]
[ 58.436000] [<8c149c6e>] __pci_register_driver+0x2e/0xa0
[ 58.436000] [<c00fd000>] artop_init+0x0/0x1c [pata_artop]
[ 58.436000] [<8c002084>] do_one_initcall+0x24/0x1c0
[ 58.436000] [<8c04c992>] sys_init_module+0x92/0x1c0
[ 58.436000] [<8c03a620>] blocking_notifier_call_chain+0x0/0x20
[ 58.436000] [<8c008232>] syscall_call+0xc/0x10
[ 58.436000] [<8c04c900>] sys_init_module+0x0/0x1c0
[ 58.436000]
[ 58.436000] Process: insmod (pid: 783, stack limit = 8ff9e001)
[ 58.436000] Stack: (0x8ff9fe58 to 0x8ffa0000)
[ 58.436000]
fe40: c00fa718
00000000
[ 58.436000] fe60: 004ae284 8c1494ea 8c003a80 8fc3b020 8fc3b07c
8c003a40 8ff9fea4 8c131c10
[ 58.436000] fe80: 8c149a22 004ae284 c00fa884 8c003a80 8c3f9ae8
8fc3b0bc c00fa854 8fc3b020
[ 58.436000] fea0: 8fc3b07c c00fa854 8fc3b020 c00fa81c 8c17da64
8c003a40 8fc3b07c 8ffb8340
[ 58.436000] fec0: 8c17dc66 004ae284 00423ae0 00000000 8c232a00
8fc3b0b0 c00fa884 8fc3b07c
[ 58.436000] fee0: 8c17d10e 8c22bd60 8c17dbe0 8c2b5570 c00fa884
8fc2e918 8fc3f7f0 8c17c8e2
[ 58.436000] ff00: 00000000 fffffff4 8ffb8340 8c2b5570 c00fa884
8c17dff2 004ae284 00423ae0
[ 58.436000] ff20: fffffff0 c00fd000 8c3eb064 c00fa884 c00fa854
00000000 8c149c6e 00000000
[ 58.436000] ff40: c00fd000 8c3eb064 c00fa884 c00fa854 00000000
8c002084 8c3eb064 00000000
[ 58.436000] ff60: c00fab34 00000000 00000000 8f8438a0 8c04c992
004ae284 00423ae0 00000000
[ 58.436000] ff80: c00fac30 8c03a620 c00fab34 c00fab34 8c008232
00000000 00000071 00000100
[ 58.436000] ffa0: 8c04c900 00000000 ffffffff fffffff4 00000080
0051d688 00002046 004e0028
[ 58.436000] ffc0: 00002050 7bb65ec8 004e0028 7bb65d7c 7bb65ecc
00000000 00423ae0 004ae284
[ 58.436000] ffe0: 7bb65c2c 00455006 004b3a28 00008001 0051c470
00000022 ffffe000 00000054
[ 62.304000] ---[ end trace 7f9ead9e754eeb05 ]---
Segmentation fault
/ #
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: PATA_ARTOP oppes in 2.6.38
2011-03-28 0:31 PATA_ARTOP oppes in 2.6.38 Daniel Palmer
@ 2011-03-28 7:25 ` Mikael Pettersson
2011-03-28 7:34 ` Daniel Palmer
0 siblings, 1 reply; 3+ messages in thread
From: Mikael Pettersson @ 2011-03-28 7:25 UTC (permalink / raw)
To: Daniel Palmer; +Cc: linux-ide
Daniel Palmer writes:
> Hi,
>
> I posted this on the linux-sh list too
> (http://marc.info/?l=linux-sh&m=130121196319157&w=2).
> With vanilla 2.6.38 the board/arch specific code was generating the
> wrong address for one of the IO ports associated with the PATA
> controller (I don't really understand how PCI works, I'm just guessing
> here based on the dmesg output really.. ;)). In vanilla 2.6.38
> pata_artop oops on "Unable to handle kernel paging request at virtual
> address 000013ff" instead.. this is now fixed so it's not accessing
> outside of the assigned ranges but it still oops.
>
> I've attached the full output from the board below.. you should be able
> to see where I load modules and it oops when pata_artop is loaded.
>
> If someone could help me debug this I would be very grateful.
pata_artop works fine with 2.6.38 on one of my older ARM boxes
(a Synology DS101 NAS, arm/mach-ixp4xx/, BSP not in upstream kernel).
I'd suspect an issue with your platform (sh?). A kernel bisection
should identify the offending commit.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: PATA_ARTOP oppes in 2.6.38
2011-03-28 7:25 ` Mikael Pettersson
@ 2011-03-28 7:34 ` Daniel Palmer
0 siblings, 0 replies; 3+ messages in thread
From: Daniel Palmer @ 2011-03-28 7:34 UTC (permalink / raw)
To: Mikael Pettersson; +Cc: linux-ide
On 28/03/11 08:25, Mikael Pettersson wrote:
> pata_artop works fine with 2.6.38 on one of my older ARM boxes
> (a Synology DS101 NAS, arm/mach-ixp4xx/, BSP not in upstream kernel).
>
> I'd suspect an issue with your platform (sh?). A kernel bisection
> should identify the offending commit.
>
Thank you, I too suspected it was something in the arch specific code..
the code for the Landisk boards hasn't changed since ~2007 but some
recent commits broke a lot of things. I did send the oops to the person
that did the changes (linked in my original mail) and they said they
think it's the driver.
If it works for you though that rules that out to a certain degree.
Thanks again!
Daniel
/me just noticed I spelled oops incorrectly in the subject. oops.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2011-03-28 7:34 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-03-28 0:31 PATA_ARTOP oppes in 2.6.38 Daniel Palmer
2011-03-28 7:25 ` Mikael Pettersson
2011-03-28 7:34 ` Daniel Palmer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).