aboutsummaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2006-09-12Merge branch 'audit.b29' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current * 'audit.b29' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current: [PATCH] sparc64 audit syscall classes hookup [PATCH] syscall class hookup for all normal targets
2006-09-12[PATCH] sparc64 audit syscall classes hookupAl Viro
... that should do it for all targets; the only remaining issues are mips (currently treated as non-biarch) and handling of other OS emulations (OSF/SunOS/Solaris/???). The latter would need to be assigned new AUDIT_ARCH_... ABI numbers anyway... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2006-09-12[PATCH] syscall class hookup for all normal targetsAl Viro
Take default arch/*/kernel/audit.c to lib/, have those with special needs (== biarch) define AUDIT_ARCH in their Kconfig. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2006-09-12sh64: Add a sane pm_power_off implementation.Paul Mundt
sh64 wasn't providing a sensible pm_power_off(), add one, and just wrap it to machine_power_off, which already does the right thing. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2006-09-12sh64: Trivial build fixes.Paul Mundt
While we've been sorting out the toolchain fiasco, some of the code has suffered a bit of bitrot. Building with GCC4 also brings up some more build warnings. Trivial fixes for both issues. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2006-09-12sh64: Drop deprecated ISA tuning for legacy toolchains.Paul Mundt
The original sh64 toolchains required that we tune the ISA level accordingly to not have head.S/entry.S blow up. With current toolchains, this is no longer the case, and the syntax magically changed as well, causing all current toolchains to die a horrible death. Incidentally, code generation in other parts of the kernel is now significantly complex enough that none of the older toolchains make it very far these days, so there's not even any point in preserving legacy compatability via as-option. This fixes a long-standing issue, as noted here: http://lkml.org/lkml/2005/1/5/223 Though at the time the current toolchains were too broken to make adjusting the tuning worthwhile. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2006-09-11[PATCH] audit: AUDIT_PERM supportAl Viro
add support for AUDIT_PERM predicate Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2006-09-11[PATCH] audit: more syscall classes addedAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2006-09-11[PATCH] syscall classes hookup for ppc and s390Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2006-09-11Merge master.kernel.org:/home/rmk/linux-2.6-armLinus Torvalds
* master.kernel.org:/home/rmk/linux-2.6-arm: [ARM] 3778/1: S3C24XX: remove changelogs from include/asm-arm/arch-s3c2410 [simtec] [ARM] 3783/1: S3C2412: fix IRQ_EINT0 to IRQ_EINT3 handling [ARM] 3779/1: S3C24XX: remove changelogs from include/asm-arm/arch-s3c2410 [left] [ARM] 3777/1: S3C24XX: remove changelogs from include/asm-arm/arch-s3c2410 [regs-*.h] [ARM] 3776/1: S3C24XX: remove changelogs from include/asm-arm/arch-s3c2410 [ARM] 3775/1: S3C24XX: do not add same sysdev_driver to two classes [ARM] 3774/1: S3C24XX: SMDK2413 has two machine IDs [ARM] 3773/1: Add the HWCAP_VFP bit for the ARM926 CPUs [ARM] 3772/1: Fix compilation error in mach-ixp4xx/nslu2* [ARM] 3767/1: S3C24XX: remove changelog comments from arch/arm/mach-s3c2410 [ARM] 3766/1: Fix typo in ARM _raw_read_trylock
2006-09-09[ARM] 3783/1: S3C2412: fix IRQ_EINT0 to IRQ_EINT3 handlingBen Dooks
Patch from Ben Dooks The IRQ_EINT0 through IRQ_EINT3 handling has changed on the S3C2412 from the previous SoCs in the range, and thus we need to add code to handle this. The changes come about due to these IRQs being displayed in two different registers, and needing to be acked and masked in both. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-09-09[ARM] 3775/1: S3C24XX: do not add same sysdev_driver to two classesBen Dooks
Patch from Ben Dooks The s3c244x-irq.c code makes the mistake of adding the same drive to two different sys-classes. This causes the class lists to become corrupted and the suspend code to OOPS. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-09-08[IA64] SN fix for cpu hotplug/kexecJack Steiner
The sn_cpu_init() is required for cpu initialization on SN platforms. Change __init to __cpuinit so that the function is not freed with init code/data. Signed-off-by: Jack Steiner <steiner@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
2006-09-08[IA64] Save register stack contents on cpu startJack Steiner
The SN PROM uses the register stack in the slave loop. The contents must be preserved for the OS to return to the slave loop via offlining a cpu or for kexec. A 'flushrs" is needed to force the stack to be written to memory prior to changing bspstore. Signed-off-by: Jack Steiner <steiner@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
2006-09-08[IA64] Unwire set/get_robust_listAndreas Schwab
The syscalls set/get_robust_list must not be wired up until futex_atomic_cmpxchg_inatomic is implemented. Otherwise the kernel will hang in handle_futex_death. Signed-off-by: Andreas Schwab <schwab@suse.de> Signed-off-by: Tony Luck <tony.luck@intel.com>
2006-09-08[IA64] correct file descriptor reference counting in perfmonStephane Eranian
Fix a bug in sys_perfmonctl() whereby it was not correctly decrementing the file descriptor reference count. Signed-off-by: stephane eranian <eranian@hpl.hp.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
2006-09-08[PATCH] IA64,sparc: local DoS with corrupted ELFsKirill Korotaev
This prevents cross-region mappings on IA64 and SPARC which could lead to system crash. They were correctly trapped for normal mmap() calls, but not for the kernel internal calls generated by executable loading. This code just moves the architecture-specific cross-region checks into an arch-specific "arch_mmap_check()" macro, and defines that for the architectures that needed it (ia64, sparc and sparc64). Architectures that don't have any special requirements can just ignore the new cross-region check, since the mmap() code will just notice on its own when the macro isn't defined. Signed-off-by: Pavel Emelianov <xemul@openvz.org> Signed-off-by: Kirill Korotaev <dev@openvz.org> Acked-by: David Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> [ Cleaned up to not affect architectures that don't need it ] Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-09-06[ARM] 3774/1: S3C24XX: SMDK2413 has two machine IDsBen Dooks
Patch from Ben Dooks It turns out we have both SMDK2413 and S3C2413 for the same board. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-09-06[ARM] 3773/1: Add the HWCAP_VFP bit for the ARM926 CPUsCatalin Marinas
Patch from Catalin Marinas The ARM926EJ-S CPU has the VFP coprocessor and therefore it should be shown in the /proc/cpuinfo if CONFIG_VFP is enabled. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-09-06[ARM] 3772/1: Fix compilation error in mach-ixp4xx/nslu2*Martin Michlmayr
Patch from Martin Michlmayr Include linux/irq.h in the nslu2 code in order to avoid the following compiler error: CC arch/arm/mach-ixp4xx/nslu2-power.o arch/arm/mach-ixp4xx/nslu2-power.c: In function 'nslu2_power_init': arch/arm/mach-ixp4xx/nslu2-power.c:53: warning: implicit declaration of function 'set_irq_type' arch/arm/mach-ixp4xx/nslu2-power.c:53: error: 'IRQ_TYPE_LEVEL_LOW' undeclared (first use in this function) arch/arm/mach-ixp4xx/nslu2-power.c:53: error: (Each undeclared identifier is reported only once arch/arm/mach-ixp4xx/nslu2-power.c:53: error: for each function it appears in.) arch/arm/mach-ixp4xx/nslu2-power.c:54: error: 'IRQ_TYPE_LEVEL_HIGH' undeclared (first use in this function) make[5]: *** [arch/arm/mach-ixp4xx/nslu2-power.o] Error 1 Signed-off-by: Martin Michlmayr <tbm@cyrius.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-09-06[ARM] 3767/1: S3C24XX: remove changelog comments from arch/arm/mach-s3c2410Ben Dooks
Patch from Ben Dooks Remove the pointless changelog comments from arch/arm/mach-s3c2410 files, as all this can be found from the revision control system. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-09-06[PATCH] FRV: Use the generic time stuff for FRVjohn stultz
Use the generic time stuff for FRV. Signed-off-by: John Stultz <johnstul@us.ibm.com> Signed-Off-By: David Howells <dhowells@redhat.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-09-03[PATCH] powerpc: Fix typo in powermac platform functionsBenjamin Herrenschmidt
New sparse caught that typo which could have caused erratic hardware behaviour on some machines if the platform functions are used by the firmware to change bits in some FCR registers. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-09-02Merge master.kernel.org:/home/rmk/linux-2.6-armLinus Torvalds
* master.kernel.org:/home/rmk/linux-2.6-arm: [ARM] 3762/1: Fix ptrace cache coherency bug for ARM1136 VIPT nonaliasing Harvard caches [ARM] 3765/1: S3C24XX: cleanup include/asm-arm/arch-s3c2410/dma.h [ARM] 3764/1: S3C24XX: change type naming to kernel style [ARM] 3763/1: add both rtcs to csb337 defconfig [ARM] Fix ARM __raw_read_trylock() implementation [ARM] 3750/3: Fix double VFP emulation for EABI kernels
2006-09-02[ARM] 3762/1: Fix ptrace cache coherency bug for ARM1136 VIPT nonaliasing ↵George G. Davis
Harvard caches Patch from George G. Davis Resolve ARM1136 VIPT non-aliasing cache coherency issues observed when using ptrace to set breakpoints and cleanup copy_{to,from}_user_page() while we're here as requested by Russell King because "it's also far too heavy on non-v6 CPUs". NOTES: 1. Only access_process_vm() calls copy_{to,from}_user_page(). 2. access_process_vm() calls get_user_pages() to pin down the "page". 3. get_user_pages() calls flush_dcache_page(page) which ensures cache coherency between kernel and userspace mappings of "page". However flush_dcache_page(page) may not invalidate I-Cache over this range for all cases, specifically, I-Cache is not invalidated for the VIPT non-aliasing case. So memory is consistent between kernel and user space mappings of "page" but I-Cache may still be hot over this range. IOW, we don't have to worry about flush_cache_page() before memcpy(). 4. Now, for the copy_to_user_page() case, after memcpy(), we must flush the caches so memory is consistent with kernel cache entries and invalidate the I-Cache if this mm region is executable. We don't need to do anything after memcpy() for the copy_from_user_page() case since kernel cache entries will be invalidated via the same process above if we access "page" again. The flush_ptrace_access() function (borrowed from SPARC64 implementation) is added to handle cache flushing after memcpy() for the copy_to_user_page() case. Signed-off-by: George G. Davis <gdavis@mvista.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-09-01[PATCH] powerpc: Fix PowerMac IRQ handling bugBenjamin Herrenschmidt
The port to genirq & the new powerpc interrupt model in 2.6.18 introduced a bug in the legacy PowerMac PIC code (used on older machines) because of a typo potentially causing hangs due to interrupt storms. This fixes it, along with a performance issue causing us to do spurrious retriggers after masking an interrupt. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: "Antonino A. Daplas" <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-09-01[PATCH] xtensa: ptrace: EXIT_ZOMBIE fixBill Huey (hui
We're testing the wrong task_struct field. Acked-by: Chris Zankel <chris@zankel.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-09-01[PATCH] Fix faulty HPET clocksource usage (fix for bug #7062)john stultz
Apparently some systems export valid HPET addresses, but hpet_enable() fails. Then when the HPET clocksource starts up, it only checks for a valid HPET address, and the result is a system where time does not advance. See http://bugme.osdl.org/show_bug.cgi?id=7062 for details. This patch just makes sure we better check that the HPET is functional before registering the HPET clocksource. Signed-off-by: John Stultz <johnstul@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-08-31Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6Linus Torvalds
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6: [S390] cio: unsolicited interrupts during sense pgid. [S390] cio: no path after machine check. [S390] cio: kernel stack overflow. [S390] dasd: fix device shutdown process. [S390] broken copy_in_user function.
2006-08-31[ARM] 3764/1: S3C24XX: change type naming to kernel styleBen Dooks
Patch from Ben Dooks The type naming in the s3c24xx dma code is riddled with typedefs creating _t types, from the code import from 2.4 which is contrary to the current Kernel coding style. This patch cleans this up, removing the typedefs and and fixing up the resultant code changes. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-08-31[ARM] 3763/1: add both rtcs to csb337 defconfigDavid Brownell
Patch from David Brownell This adds RTC support to the csb337 default config. Both the AT91 and the ds1307 RTCs are enabled (rtc0 and rtc1 respectively). The ds1307 is used to initialize the system time, since it's battery-backed. From then on the AT91 RTC is used, since it's more capable (with both alarm and update irqs, and system wakeup capability) even though it needs manual initialization (symlink /dev/rtc to /dev/rtc0 for older versions of hwclock, then "hwclock --systohc") in an rc script or from inittab. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-08-30Merge branch 'merge' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: [POWERPC] Fix return value from memcpy [POWERPC] iseries: Define insw et al. so libata/ide will compile [POWERPC] Fix irq enable/disable in smp_generic_take_timebase [POWERPC] Fix problem with time not advancing on 32-bit platforms [POWERPC] Restore copyright notice in arch/powerpc/kernel/fpu.S [POWERPC] Fix up ibm_architecture_vec definition [POWERPC] Make OF irq map code detect more error cases [POWERPC] Support for "weird" MPICs and fixup mpc7448_hpc2 [POWERPC] Fix MPIC sense codes in documentation [POWERPC] Fix performance regression in IRQ radix tree locking [POWERPC] Add mpc7448hpc2 device tree source file [POWERPC] Add MPC8349E MDS device tree source file to arch/powerpc/boot/dts [POWERPC] modify mpc83xx platforms to use new IRQ layer [POWERPC] Adapt ipic driver to new host_ops interface, add set_irq_type to set IRQ sense [POWERPC] back up old school ipic.[hc] to arch/ppc [POWERPC] Use mpc8641hpcn PIC base address from dev tree. [POWERPC] Allow MPC8641 HPCN to build with CONFIG_PCI disabled too. [POWERPC] Fix powerpc 44x_mmu build [POWERPC] Remove flush_dcache_all export
2006-08-30[PATCH] ppc32: fix last_jiffy time comparisonPaul Mackerras
This fixes a hang on ppc32. The problem was that I was comparing a 32-bit quantity with a 64-bit quantity, and consequently time wasn't advancing. This makes us use a 64-bit quantity on all platforms, which ends up simplifying the code since we can now get rid of the tb_last_stamp variable (which actually fixes another bug that Ben H and I noticed while going carefully through the code). This works fine on my G4 tibook. Let me know how it goes on your machines. Acked-by: Olaf Hering <olaf@aepfle.de> Acked-by: Mikael Pettersson <mikpe@it.uu.se> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-08-31[POWERPC] Fix return value from memcpyPaul Mackerras
As pointed out by Herbert Xu <herbert@gondor.apana.org.au>, our memcpy implementation didn't return the destination pointer as its return value, and there is code in the kernel that expects that. This fixes it. Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-08-30Merge branch 'release' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6: [IA64] Increase default nodes shift to 10, nr_cpus to 1024 [IA64] remove redundant local_irq_save() calls from sn_sal.h [IA64] panic if topology_init kzalloc fails [IA64-SGI] Silent data corruption caused by XPC V2.
2006-08-30[PATCH] x86_64: Don't write out segments from vsyscall32 DSO if it is not mappedSuleiman Souhlal
It's possible to get an invalid page fault in kernel mode when we try to write out segments from vsyscall32 when dumping core for a 32bit process if the vsyscall32 DSO is not mapped in its address space (which can happen if, for example, ulimit -v 100 is run). Signed-off-by: Suleiman Souhlal <suleiman@google.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-08-30[PATCH] x86_64: Save original IST values for checking stack addressesKeith Owens
The values in init_tss.ist[] can change when an IST event occurs. Save the original IST values for checking stack addresses when debugging or doing stack traces. Signed-off-by: Keith Owens <kaos@ocs.com.au> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-08-30[PATCH] i386: Fix stack switching in do_IRQAndi Kleen
There was a bogus hunk from the genirq merge that essentially broke stack switching for hard interrupts. Remove it since it isn't needed. Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-08-30[PATCH] x86: Disable MMCONFIG on Intel SDV using DMI blacklistAndi Kleen
As a replacement for the earlier removal of the e820 MCFG check we blacklist the Intel SDV with the original BIOS bug that motivated that check. On those machines don't use MMCONFIG. This also adds a new pci=mmconf parameter to override the blacklist. Cc: Greg KH <gregkh@suse.de> Cc: Arjan van de Ven <arjan@infradead.org> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-08-30[PATCH] x86_64: Recover 1MB of kernel memoryAndi Kleen
Noticed by Jan Beulich. When the kernel was moved from 1MB to 2MB in 2.6.17 the kernel reservation code wasn't adjusted and it still reserved starting with 1MB. This means 1MB always were lost. This patch fixes this by reserving only starting with _text. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-08-30[PATCH] x86: Make backtracer fallback logic more bullet-proofJan Beulich
The unwinder fallback logic still had potential for falling through to the legacy stack trace code without printing an indication (at once serving as a separator) of this. Further, the stack pointer retrieval for the fallback should be as restrictive as possible (in order to avoid having the legacy stack tracer try to access invalid memory). The patch tightens that, but this could certainly be further improved. Also making the call_trace command line option now conditional upon CONFIG_STACK_UNWIND (as it's meaningless otherwise). Signed-off-by: Jan Beulich <jbeulich@novell.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-08-30[PATCH] i386: Add kernel thread stack frame termination for properly ↵Andi Kleen
stopping stack unwinds. One open question: Should this added push perhaps be made conditional upon CONFIG_STACK_UNWIND or CONFIG_UNWIND_INFO? [AK: not needed, these are all very slow paths] Signed-off-by: Jan Beulich <jbeulich@novell.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-08-30[PATCH] x86_64: Add kernel thread stack frame termination for properly ↵Andi Kleen
stopping stack unwinds. One open question: Should these added pushes perhaps be made conditional upon CONFIG_STACK_UNWIND or CONFIG_UNWIND_INFO? [AK: Not needed -- these are all very slow paths] Signed-off-by: Jan Beulich <jbeulich@novell.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-08-30[PATCH] x86: Revert e820 MCFG heuristicsAndi Kleen
The check for the MCFG table being reserved in the e820 map was originally added to detect a broken BIOS in a preproduction Intel SDV. However it also breaks the Apple x86 Macs, which can't supply this properly, but need a working MCFG. With this patch they wouldn't use the MCFG and not work. After some discussion I think it's best to remove the heuristic again. It also failed on some other boxes (although it didn't cause much problems there because old style port access for PCI config space still works as fallback), but the preproduction SDVs can just use pci=nommcfg. Supporting production machines properly is more important. Edgar Hucek did all the debugging work. Cc: Arjan van de Ven <arjan@infradead.org> Cc: Edgar Hucek <hostmaster@ed-soft.at> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-08-30[PATCH] x86_64: Update defconfigAndi Kleen
Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-08-30[ARM] 3750/3: Fix double VFP emulation for EABI kernelsDaniel Jacobowitz
Patch from Daniel Jacobowitz vfp_put_double didn't work in a CONFIG_AEABI kernel. By swapping the arguments, we arrange for them to be in the same place regardless of ABI. I made the same change to vfp_put_float for consistency. Signed-off-by: Daniel Jacobowitz <dan@codesourcery.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-08-30[S390] broken copy_in_user function.Martin Schwidefsky
The copy_in_user primitive does not work as advertised. If the source and target area are available copy_in_user copies one byte too much. If one of the memory areas is not available it does not copy as much data as it can, but up to 257 bytes less. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2006-08-30[POWERPC] Fix irq enable/disable in smp_generic_take_timebasePaul Mackerras
Eran Ben-Avi <eranpublic@yahoo.com> pointed out that the arch/ppc version of smp_generic_take_timebase disables interrupts on entry but exits without restoring them. However, both it and the arch/powerpc version have another problem, which is that they use local_irq_disable/enable rather than local_irq_save/restore, and they are called with interrupts disabled. This fixes both problems; it changes a return to a break in the arch/ppc version, and changes both versions to use local_irq_save/restore. Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-08-30[POWERPC] Fix problem with time not advancing on 32-bit platformsPaul Mackerras
This fixes a problem introduced in 5db9fa9593e2ff69f2b95f9d59229dc4faaa564d. The last_jiffy per-cpu variable is only 32 bits on 32-bit machines, but it was being compared with a 64-bit quantity (tb_next_jiffy), which resulted in time not advancing. This fixes it by changing last_jiffy to be 64 bits on all platforms. With this, we no longer need tb_last_stamp as a 32-bit version of tb_last_jiffy, so this gets rid of tb_last_stamp and we just use tb_last_jiffy instead. This also fixes a bug when the boot cpu is not online, because using tb_last_stamp could have caused the wrong timebase origin value to be used when calculating the time of day. Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-08-30[POWERPC] Restore copyright notice in arch/powerpc/kernel/fpu.SPaul Mackerras
This code got moved from head.S but the copyright notice on head.S didn't get transferred with it. Noticed by Cort Dougan <cort@fsmlabs.com>. Signed-off-by: Paul Mackerras <paulus@samba.org>