![]() Merge ppc32 and ppc64 versions of thread_info.h. They were pretty similar already, the chief changes are: - Instead of inline asm to implement current_thread_info(), which needs to be different for ppc32 and ppc64, we use C with an asm("r1") register variable. gcc turns it into the same asm as we used to have for both platforms. - We replace ppc32's 'local_flags' with the ppc64 'syscall_noerror' field. The noerror flag was in fact the only thing in the local_flags field anyway, so the ppc64 approach is simpler, and means we only need a load-immediate/store instead of load/mask/store when clearing the flag. - In readiness for 64k pages, when THREAD_SIZE will be less than a page, ppc64 used kmalloc() rather than get_free_pages() to allocate the kernel stack. With this patch we do the same for ppc32, since there's no strong reason not to. - For ppc64, we no longer export THREAD_SHIFT and THREAD_SIZE via asm-offsets, thread_info.h can now be safely included in asm, as on ppc32. Built and booted on G4 Powerbook (ARCH=ppc and ARCH=powerpc) and Power5 (ARCH=ppc64 and ARCH=powerpc). Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org> |
||
---|---|---|
.. | ||
iSeries | ||
abs_addr.h | ||
bitops.h | ||
bootinfo.h | ||
btext.h | ||
cache.h | ||
cacheflush.h | ||
checksum.h | ||
compat.h | ||
current.h | ||
dart.h | ||
delay.h | ||
dma-mapping.h | ||
eeh.h | ||
firmware.h | ||
floppy.h | ||
futex.h | ||
hvcall.h | ||
hvconsole.h | ||
hvcserver.h | ||
ide.h | ||
imalloc.h | ||
io.h | ||
ipcbuf.h | ||
kexec.h | ||
lppaca.h | ||
mmu.h | ||
mmu_context.h | ||
mmzone.h | ||
naca.h | ||
numnodes.h | ||
nvram.h | ||
paca.h | ||
page.h | ||
parport.h | ||
pci-bridge.h | ||
pci.h | ||
pgalloc.h | ||
pgtable.h | ||
plpar_wrappers.h | ||
ppc32.h | ||
ppcdebug.h | ||
prom.h | ||
ptrace-common.h | ||
ptrace.h | ||
scatterlist.h | ||
serial.h | ||
sigcontext.h | ||
signal.h | ||
smp.h | ||
sparsemem.h | ||
spinlock.h | ||
sstep.h | ||
stat.h | ||
system.h | ||
systemcfg.h | ||
tce.h | ||
tlb.h | ||
tlbflush.h | ||
uaccess.h | ||
ucontext.h | ||
udbg.h | ||
vdso.h | ||
vio.h | ||
xics.h |