| Age | Commit message (Collapse) | Author | Files | Lines |
|
This patch, mostly from Sven Luther and reworked by me, adds support for
Pegasos machines to the ppc32 arch. The patch contains all of the arch
code. I'll send separately a few driver changes as well.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
- Move MCA_bus declaration from <asm/processor.h> to <linux/mca.h>
- Define it in mca.c, not setup.c
- EXPORT_SYMBOL it at the site of its definition.
- Fix up random files to include <linux/mca.h> for the use of the MCA_bus
symbol
- Delete some unnecessary ifdefs.
- Delete some unneeded comments.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
|
|
This cleans up arch/ppc/kernel/traps.c and vecemu.c to use the same
formatting style for all functions, and fixes 2 warnings in the altivec
floating point emulation code. No functional change.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Here is both a GNU style and BK patch for adding support for the e500 core and
85xx platform to 2.6. This is pretty much a direct port from 2.4 with a bit
of cleanup around the edges.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
From: David Woodhouse <dwmw2@infradead.org>
Without this the task struct gets unaligned when using SLAB_DEBUG, causing
random problems with FP and Altivec.
|
|
|
|
into samba.org:/home/paulus/kernel/for-linus-ppc
|
|
When I change the setting of CONFIG_EISA, everything rebuilds. This is
because EISA_bus is declared in <asm/processor.h> which is implicitly
included by just about everything. This is a silly place to declare it,
so this patch moves it to include/linux/eisa.h.
While I'm at it, I also move the variable definition to
drivers/eisa/eisa-bus.c. The rest of this patch is fixing up the fallout
from having to include <linux/eisa.h> if you use EISA_bus.
|
|
|
|
|
|
|
|
The main thing here is that the signal delivery/return code for real-time
signals has been changed so that the layout of the registers corresponds
with the new ucontext_t definition being used by glibc. The old ucontext_t
didn't have space to actually store the registers, just a pointer to them,
which made it impossible to implement set/getcontext et al. The new
ucontext_t includes a mcontext_t which actually contains space to store
all of the general, floating pointer and vector registers.
We now also save the altivec registers on signal delivery and restore them
on return from the signal if the process has ever used altivec (since the
last exec).
Finally this adds a swapcontext system call. Swapcontext really needs to be
done in the kernel since on PPC, only privileged code can set all three of
CTR, LR and NIA (next instruction address) to arbitrary values. Also the kernel
know if the process currently owns the FP and altivec units and can optimize
in the case where it doesn't.
|
|
This has three main parts: (1) support for the 440GP and 440GX processors,
(2) support for the "Ebony" and "Ocotea" reference boards for those processors,
and (3) support for 64-bit physical addresses. The 440GP and 440GX are "Book E"
processors, and this introduces a CONFIG_BOOKE and some definitions that apply
to all Book E processors.
Having 64-bit physical addresses means that PTEs are now 64 bits. The PTE pages
stay at 4kB, and the pgdir expands to 8kB.
|
|
|
|
|
|
|
|
This patch gets rid of CONFIG_ALL_PPC, which was a very confusing
option, since it didn't actually mean "ALL" at all, it was more a
"common set" thing.
The primary replacement for CONFIG_ALL_PPC is CONFIG_PPC_MULTIPLATFORM.
I have also defined CONFIG_PPC_PMAC, CONFIG_PPC_PREP and CONFIG_PPC_CHRP
for selecting code which is only needed for one of the three platforms
that CONFIG_ALL_PPC represented. This is something that we (the PPC
community) have been talking about doing for some time. There is also a
CONFIG_PPC_OF which is for PPC machines with Open Firmware, which is
currently powermacs and CHRP machines.
At the moment, CONFIG_PPC_{PMAC,PREP,CHRP,OF} get unconditionally
defined if CONFIG_PPC_MULTIPLATFORM is selected, but in future this
split will let us have more control over what gets included, so that
for example we don't necessarily have to include powermac bits in a
kernel for a PReP machine.
I have gone through the uses of CONFIG_ALL_PPC one by one and decided
which of the new symbols best represents the set of machines that need
the code in question. In fact most of the uses of CONFIG_ALL_PPC in
the drivers have been replaced by CONFIG_PPC_PMAC. The other symbols
are mostly confined to the PPC architecture code.
|
|
|
|
into samba.org:/home/paulus/kernel/for-linus-ppc
|
|
prepare_to_copy().
The thread-pointer argument gets copied to R2 in the child in copy_thread() if
the CLONE_SETTLS flag is set. Adding a prepare_to_copy simplifies the copy_thread
logic since we don't have to do the extra copy of fpu/altivec state to the child.
|
|
This allows us to avoid having to use atomic updates for the lazy FP
status setting, since we don't have to worry about other CPU's racing
on the fields.
Also, fix x86 FP state after fork() by making sure the FP is unlazied
_before_ we copy the state information. Otherwise, if a process did a
fork() while holding the FP state lazily in the registers, the child
would incorrectly unlazy bogus state.
|
|
|
|
This provides for separate global and per-thread debug control
register value(s), which are switched as appropriate. This allows
us to use both an external JTAG debugger for debugging the kernel
as well as using gdb to debug user programs.
|
|
This patch moves BUG() and PAGE_BUG() from asm/page.h into asm/bug.h.
We also fix up linux/dcache.h, which included asm/page.h for the sole
purpose of getting the BUG() definition.
Since linux/kernel.h and linux/smp.h make use of BUG(), asm/bug.h is
included there as well.
In addition, linux/jbd.h did not contain a clear path with which to
obtain the archtecture BUG() definition, but did contain its own
definition.
|
|
|
|
All the iSeries machines that can run Linux are 64-bit PowerPC
machines and are now supported by the ppc64 kernel. Since no-one
is interested in maintaining the iSeries support in the ppc32
kernel, I am removing it.
|
|
|
|
This solves some mutual inclusion problems.
|
|
A supplement to manfred's patch; remove copy_segments, release_segments
and even forget_segments from all architectures (except x86-64 since
Andi wants to do that seperately):
|
|
The tags were slightly useful when the kernel maintainers weren't
using BK, but these days they are more trouble than they are worth.
They tend to cause patch rejects, and often end up getting turned
into the fixed form (rather than the %x% tag form).
|
|
Rename print_backtrace to show_stack and improve it, remove the
#if 0 around set_fpexc mode and add get_fpexc_mode, add the
__NR_security define and reserve syscall 225 for Tux.
|
|
Make cpu_relax() on all architectures a gcc barrier to match x86.
|
|
This adds support for recent powermac models and fixes a few bugs.
|
|
and also streamlines the exception entry/exit code by not saving
all the GPRs on the common exceptions (system call, external
interrupt and decrementer).
|
|
is properly 8kB-aligned.
|
|
having the thread_info struct at the base of the stack and
the task_struct elsewhere.
|
|
|
|
- Keith Owens: module exporting error checking
- Greg KH: USB update
- Paul Mackerras: clean up wait_init_idle(), ppc prefetch macros
- Jan Kara: quota fixes
- Abraham vd Merwe: agpgart support for Intel 830M
- Jakub Jelinek: ELF loader cleanups
- Al Viro: more cleanups
- David Miller: sparc64 fix, netfilter fixes
- me: tweak resurrected oom handling
|
|
- Neil Brown: md cleanups/fixes
- Andrew Morton: console locking merge
- Andrea Arkangeli: major VM merge
|
|
- Al Viro: block device cleanups
- Marcelo Tosatti: make bounce buffer allocations more robust (it's ok
for them to do IO, just not cause recursive bounce IO. So allow them)
- Anton Altaparmakov: NTFS update (1.1.17)
- Paul Mackerras: PPC update (big re-org)
- Petko Manolov: USB pegasus driver fixes
- David Miller: networking and sparc updates
- Trond Myklebust: Export atomic_dec_and_lock
- OGAWA Hirofumi: find and fix umsdos "filldir" users that were broken
by the 64-bit-cleanups. Fix msdos warnings.
- Al Viro: superblock handling cleanups and race fixes
- Johannes Erdfelt++: USB updates
|
|
- Jeff Hartmann: serverworks AGP gart unload memory leak fix
- Marcelo Tosatti: make zone_inactive_shortage() return how big the shortage is.
- Hugh Dickins: tidy up age_page_down()
- Al Viro: super block handling cleanups
|
|
- make sure "sync()" doesn't effectively lock up the machine by
overloading all the IO resources
- fix up some network memory allocations that don't wan tto wait on IO.
- merge with Alan (including MIPS update)
- Jeff Garzik: network driver updates.
- Al Viro: System V FS update (write capability, page cache, mondo cleanups)
- Kai Germaschewski: ISDN cleanups, TURBOPAM driver by Stelian Pop
- Ben Fennema: UDF update (time handling, i_blocks fix)
- Neil Brown: md error handling improvements, knfsd file handle compatibility
- Paul Mackerras: PPC update
- Jakub Jelinek: fix up kernel linker scripts to accept .rodata better
- Patrick Mochel: fix PME handling in pci_enable_wake()
- Chris Mason: reiserfs PF_MEMALLOC handling
|
|
- Johannes Erdfelt: OHCI hash-chain corruption fix, USB updates
- Richard Henderson, Ivan Kokshaysky: alpha PCI iommu fixes
- Tim Waugh: parport changelogs and printk levels
- Andrew Morton: vmalloc off-by-one (overly sensitive) test
- Al Viro: VFS layer cleanups
- Cort Dougan: PPC updates (big bootloader re-org)
- Alan Cox: more merges, remove phillips camera conversion code
- Andrea Arkangeli: alpha fixups
- OGAWA Hirofumi: big-sector support with FAT
- Neil Brown: more md fixes
|
|
- Al Viro: fs cleanups
- David Miller: sparc semaphores
- Christoph Hellwig: VxFS update
- Asit Mallick: set machine check bit with set_in_cr4
- Richard Henderson: fix alpha pci_controller_num(), sg_fill, SRM poweroff.
- Johannes Erdfelt: USB updates
- Cort Dougan: bitkeeper Id's on the ppc side
- Matt Chapman: NFS file locking SMP lock fix
- Alan Cox: further merging
|
|
- Al Viro: sanity-check user arguments, zero-terminated strings etc.
- Urban Widmark: smbfs update (server/client cache coherency etc)
- Rik van Riel, Marcelo Tosatti: VM updates
- Cort Dougan: PPC updates
- Neil Brown: raid1/5 failed drive fixups, NULL ptr checking, md error cleanup
- Neil Brown: knfsd fix for 64-bit architectures, and filehandle resolveir
- Ken Brownfield: workaround for menuconfig CPU selection glitch
- David Miller: sparc64 MM setup fix, arpfilter forward port
- Keith Owens: Remove obsolete IPv6 provider based addressing
- Jari Ruusu: block_write error case cleanup fix
- Jeff Garzik: netdriver update
|
|
- Jens Axboe: fix loop device deadlocks
- Greg KH: USB updates
- Alan Cox: continued merging
- Tim Waugh: parport and documentation updates
- Cort Dougan: PowerPC merge
- Jeff Garzik: network driver updates
- Justin Gibbs: new and much improved aic7xxx driver 6.1.5
|
|
- got a few too-new R128 #defines in the Radeon merge. Fix.
- tulip driver update from Jeff Garzik
- more cpq and DAC elevator fixes from Jens. Looks good.
- Petr Vandrovec: nicer ncpfs behaviour
- Andy Grover: APCI update
- Cort Dougan: PPC update
- David Miller: sparc updates
- David Miller: networking updates
- Neil Brown: RAID5 fixes
|
|
|