linux/arch/powerpc/include/asm
Benjamin Herrenschmidt f2f6dad6ca powerpc/iseries: Fix early init access to lppaca
The combination of commit

8154c5d22d and
93c22703ef

Broke boot on iSeries.

The problem is that iSeries very early boot code, which generates
the device-tree and runs before our normal early initializations
does need access the lppaca's very early, before the PACA array is
initialized, and in fact even before the boot PACA has been
initialized (it contains all 0's at this stage).

However, the first patch above makes that code use the new
llpaca_of(cpu) accessor, which itself is changed by the second patch to
use the PACA array.

We fix that by reverting iSeries to directly dereferencing the array. In
addition, we fix all iterators in the iSeries code to always skip CPU
whose number is above 63 which is the maximum size of that array and
the maximum number of supported CPUs on these machines.

Additionally, we make sure the boot_paca is properly initialized
in our early startup code.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2011-03-10 10:06:02 +11:00
..
iseries
8xx_immap.h tree-wide: fix comment/printk typos 2010-11-01 15:38:34 -04:00
8253pit.h
Kbuild
abs_addr.h
agp.h
asm-compat.h
asm-offsets.h
async_tx.h
atomic.h
auxvec.h
backlight.h
bitops.h powerpc: Add support for popcnt instructions 2010-11-29 15:48:17 +11:00
bitsperlong.h
bootx.h
btext.h
bug.h
bugs.h
byteorder.h
cache.h
cacheflush.h
cell-pmu.h
cell-regs.h
checksum.h
clk_interface.h
code-patching.h
compat.h
cpm.h
cpm1.h
cpm2.h
cputable.h powerpc: Add support for popcnt instructions 2010-11-29 15:48:17 +11:00
cputhreads.h powerpc: Cleanup APIs for cpu/thread/core mappings 2010-11-29 15:48:19 +11:00
cputime.h taskstats: use real microsecond granularity for CPU times 2010-10-27 18:03:17 -07:00
current.h
dbdma.h
dbell.h
dcr-generic.h
dcr-mmio.h
dcr-native.h
dcr-regs.h
dcr.h
delay.h
device.h powerpc/macio: Ensure all dma routines get copied over 2010-11-29 15:48:21 +11:00
disassemble.h
div64.h
dma-mapping.h
dma.h
edac.h
eeh.h
eeh_event.h
elf.h
emergency-restart.h
emulated_ops.h
errno.h
exception-64e.h
exception-64s.h
fb.h
fcntl.h
feature-fixups.h powerpc: Ensure the else case of feature sections will fit 2011-01-21 14:08:33 +11:00
firmware.h powerpc: Add VPHN firmware feature 2010-11-29 15:48:22 +11:00
fixmap.h
floppy.h
fs_pd.h
fsl_85xx_cache_sram.h
fsl_gtm.h
fsl_guts.h
fsl_lbc.h P4080/mtd: Fix the freescale lbc issue with 36bit mode 2010-10-25 15:41:04 +01:00
ftrace.h
futex.h
gpio.h
grackle.h
hardirq.h
heathrow.h
highmem.h mm: stack based kmap_atomic() 2010-10-26 16:52:08 -07:00
hugetlb.h
hvcall.h powerpc: Add VPHN firmware feature 2010-11-29 15:48:22 +11:00
hvconsole.h
hvcserver.h
hw_breakpoint.h
hw_irq.h
hydra.h
i8259.h
ibmebus.h
ide.h
immap_cpm2.h
immap_qe.h powerpc: fix warning when compiling immap_qe.h 2011-01-12 18:02:46 -06:00
io-defs.h
io.h
ioctl.h
ioctls.h TTY: Add tty ioctl to figure device node of the system console. 2010-12-16 16:18:28 -08:00
iommu.h
ipcbuf.h
ipic.h
irq.h
irq_regs.h
irqflags.h powerpc/ppc64/tracing: Add stack frame to calls of trace_hardirqs_on/off 2011-01-21 14:08:33 +11:00
kdebug.h
kdump.h
kexec.h
keylargo.h
kgdb.h kgdb,ppc: Individual register get/set for ppc 2010-10-29 13:14:42 -05:00
kmap_types.h
kprobes.h
kvm.h KVM: PPC: Implement Level interrupts on Book3S 2010-10-24 10:52:19 +02:00
kvm_44x.h
kvm_asm.h KVM: PPC: Implement Level interrupts on Book3S 2010-10-24 10:52:19 +02:00
kvm_book3s.h KVM: PPC: Implement correct SID mapping on Book3s_32 2010-10-24 10:52:15 +02:00
kvm_book3s_32.h
kvm_book3s_64.h
kvm_book3s_asm.h
kvm_booke.h
kvm_e500.h
kvm_fpu.h
kvm_host.h KVM: PPC: Add book3s_32 tlbie flush acceleration 2010-10-24 10:50:58 +02:00
kvm_para.h KVM: PPC: Move of include to __KERNEL__ section 2010-10-24 10:52:23 +02:00
kvm_ppc.h
libata-portmap.h
linkage.h
local.h
local64.h
lppaca.h powerpc/iseries: Fix early init access to lppaca 2011-03-10 10:06:02 +11:00
lv1call.h
machdep.h powerpc/kexec: Restore ppc_md.machine_kexec 2011-03-02 14:56:48 +11:00
macio.h
mc146818rtc.h
mediabay.h
memblock.h
mman.h
mmu-8xx.h
mmu-40x.h
mmu-44x.h
mmu-book3e.h powerpc/book3e: Protect complex macro args in mmu-book3e.h 2011-02-07 12:47:56 +11:00
mmu-hash32.h
mmu-hash64.h
mmu.h
mmu_context.h
mmzone.h powerpc: Add memory_hotplug_max() 2010-11-29 15:48:21 +11:00
module.h
mpc5xxx.h
mpc6xx.h
mpc8xx.h
mpc52xx.h
mpc52xx_psc.h
mpc5121.h
mpc8260.h
mpic.h
msgbuf.h
msi_bitmap.h
mutex.h
nvram.h powerpc/nvram: Move the log partition stuff to pseries 2010-11-30 15:37:45 +11:00
ohare.h
oprofile_impl.h
pSeries_reconfig.h
paca.h
page.h powerpc: Fix pfn_valid() when memory starts at a non-zero address 2011-02-07 12:47:56 +11:00
page_32.h
page_64.h
param.h
parport.h
pasemi_dma.h
pci-bridge.h
pci.h
percpu.h
perf_event.h
perf_event_fsl_emb.h
perf_event_server.h
pgalloc-32.h
pgalloc-64.h
pgalloc.h
pgtable-ppc32.h mm: remove pte_*map_nested() 2010-10-26 16:52:08 -07:00
pgtable-ppc64-4k.h
pgtable-ppc64-64k.h
pgtable-ppc64.h mm: remove pte_*map_nested() 2010-10-26 16:52:08 -07:00
pgtable.h
phyp_dump.h
pmac_feature.h
pmac_low_i2c.h
pmac_pfunc.h
pmc.h
pmi.h
poll.h
posix_types.h
ppc-opcode.h powerpc: Hardcode popcnt instructions for old assemblers 2010-12-09 15:35:30 +11:00
ppc-pci.h
ppc4xx.h
ppc_asm.h
processor.h powerpc: Removing undead ifdef __KERNEL__ 2010-11-29 15:48:18 +11:00
prom.h of/address: use proper endianess in get_flags 2010-12-23 15:57:48 -07:00
ps3.h
ps3av.h
ps3fb.h
ps3gpu.h
ps3stor.h
pte-8xx.h
pte-40x.h
pte-44x.h
pte-book3e.h
pte-common.h
pte-fsl-booke.h
pte-hash32.h
pte-hash64-4k.h
pte-hash64-64k.h
pte-hash64.h
ptrace.h
qe.h
qe_ic.h
reg.h powerpc/85xx: add e500 HID1 bit definition 2011-01-12 18:00:29 -06:00
reg_8xx.h
reg_booke.h powerpc/85xx: add e500 HID1 bit definition 2011-01-12 18:00:29 -06:00
reg_fsl_emb.h
resource.h
rheap.h
rio.h
rtas.h
rtc.h
rwsem.h
scatterlist.h
seccomp.h
sections.h
sembuf.h
serial.h
setjmp.h
setup.h
sfp-machine.h
shmbuf.h
shmparam.h
sigcontext.h
siginfo.h
signal.h
smp.h
smu.h
socket.h
sockios.h
sparsemem.h
spinlock.h
spinlock_types.h
spu.h powerpc/kdump: Move crash_kexec_stop_spus to kdump crash handler 2011-01-21 14:08:36 +11:00
spu_csa.h
spu_info.h
spu_priv1.h
sstep.h
stat.h
statfs.h
string.h
suspend.h
swab.h
swiotlb.h
synch.h
syscall.h
syscalls.h
systbl.h
system.h
tce.h
termbits.h
termios.h
thread_info.h
time.h
timex.h
tlb.h
tlbflush.h
topology.h powerpc/pseries: Fix build of topology stuff without CONFIG_NUMA 2011-01-12 10:56:29 +11:00
trace.h
tsi108.h
tsi108_irq.h
tsi108_pci.h
types.h
uaccess.h
ucc.h
ucc_fast.h
ucc_slow.h
ucontext.h
udbg.h
uic.h
unaligned.h
uninorth.h
unistd.h
user.h
vdso.h
vdso_datapage.h powerpc: Removing undead ifdef __KERNEL__ 2010-11-29 15:48:18 +11:00
vga.h
vio.h
xilinx_intc.h
xilinx_pci.h
xmon.h
xor.h