ioremap of pci region on pSeries LPAR vs SMP
Anil Kumar Prasad
anil_411 at yahoo.com
Mon Jan 10 18:49:30 EST 2005
Hi,
I am using SLES9 default kernel(2.6.5). I have a piece
of code where i do ioremap on pci memory region. It
works on JS20 machine where linux runs in partition
mode while it causes SLB miss on SMP box(P630) and
subsequently panics.
On JS20, i get va in IO_REGION (0xE000....) while on
p630 ioremap returns address in
EEH_REGION(0xA000...). As soon as i try to dereference
this returned va on p630, kernel crashes(dump is at
the end of mail).
I looked in slab.c:slb_allocate(). it doesn't look
like that SLB miss in EEH_REGION will ever get through
'us REGION_ID check will return user address.
Did i miss something? Please help.
Thanks a lot,
Anil.
------------------
SMP NR_CPUS=128 NUMA PSERIES
NIP: D000000000649CB4 XER: 0000000000000000 LR:
D000000000649CA4
REGS: c0000003f7897670 TRAP: 0380 Tainted: GF U
(2.6.5-7.97-pseries64)
MSR: 9000000000009032 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR:
11
DAR: a000000082060010, DSISR: 0000000002200000
TASK: c00000003f1b5340[5037] 'modprobe' THREAD:
c0000003f7894000 CPU: 0
GPR00: 0000000000000001 C0000003F78978F0
D0000000006AEB70 00000000001E8480
GPR04: 0000000000000000 0000000000000004
0000000028088422 0000000000000000
GPR08: 0000000000000000 FFFFFFFFFFFFFFFF
C0000000006CAC80 0000000000000080
GPR12: 0000000048004028 C000000000444000
D0000000006A6DD9 D0000000006A6DA8
GPR16: 0000000000000001 0000000000000000
C000000000411770 C000000000411670
GPR20: C000000000411050 D0000000006A6DA8
0000000000001867 0000000000006278
GPR24: 0000000000000001 C0000003F7897A40
C0000001FD158080 C0000001FD158180
GPR28: 0000000000000000 A000000082060010
D0000000006A8F38 C000000000411000
---------------------------------------------------
__________________________________
Do you Yahoo!?
Yahoo! Mail - Find what you need with new enhanced search.
http://info.mail.yahoo.com/mail_250
More information about the Linuxppc64-dev
mailing list