summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2007-01-09Merge branch 'merge' of ↵Linus Torvalds25-97/+282
master.kernel.org:/pub/scm/linux/kernel/git/paulus/powerpc * 'merge' of master.kernel.org:/pub/scm/linux/kernel/git/paulus/powerpc: [POWERPC] Fix bugs in the hypervisor call stats code [POWERPC] Fix corruption in hcall9 [POWERPC] iSeries: fix setup initcall [POWERPC] iSeries: fix viopath initialisation [POWERPC] iSeries: fix lpevents initialisation [POWERPC] iSeries: fix proc/iSeries initialisation [POWERPC] iSeries: fix mf proc initialisation [POWERPC] disable PReP and EFIKA during make oldconfig [POWERPC] Fix mpc52xx serial driver to work for arch/ppc again [POWERPC] Don't include powerpc/sysdev/rom.o for arch/ppc builds [POWERPC] Fix mpc52xx fdt to use correct device_type for sound devices [POWERPC] 52xx: Don't use device_initcall to probe of_platform_bus [POWERPC] Add legacy iSeries to ppc64_defconfig [POWERPC] Update ppc64_defconfig [POWERPC] Fix manual assembly WARN_ON() in enter_rtas(). [POWERPC] Avoid calling get_irq_server() with a real, not virtual irq. [POWERPC] Fix unbalanced uses of of_node_put [POWERPC] Fix bogus BUG_ON() in in hugetlb_get_unmapped_area()
2007-01-09Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6Linus Torvalds9-17/+38
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6: [S390] locking problem with __cpcmd. [S390] don't call handle_mm_fault() if in an atomic context. [S390] Fix vmalloc area size calculation. [S390] Fix cpu hotplug (missing 'online' attribute). [S390] cio: use barrier() in stsch_reset. [S390] memory detection misses 128k.
2007-01-09[PATCH] i2c/pci: fix sis96x smbus quirk once and for allMark M. Hoffman1-6/+8
The sis96x SMBus PCI device depends on two different quirks to run in a specific order. Apart from being fragile, this was found to actually break on (at least) recent FC4, FC5, and FC6 kernels. This patch fixes the quirks so that they work without relying on the compiler and/or linker to put them in any specific order. http://lists.lm-sensors.org/pipermail/lm-sensors/2006-April/015962.html https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=189719 I tested this patch. Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com> Cc: Andrew Morton <akpm@osdl.org> Cc: Adrian Bunk <bunk@stusta.de> Cc: Greg K-H <greg@kroah.com> Cc: Jean Delvare <khali@linux-fr.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2007-01-09[S390] locking problem with __cpcmd.Christian Borntraeger1-1/+1
Changeset 740b5706b9c4b3767f597b3ea76654c6f2a800b2 moved the protecting spinlock from __cpcmd to cpcmd. Therefore vmcp can no longer use __cpcmd, instead we have to use cpcmd. Signed-off-by: Christian Borntraeger <cborntra@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-01-09[S390] don't call handle_mm_fault() if in an atomic context.Heiko Carstens3-4/+6
There are several places in the futex code where a spin_lock is held and still uaccesses happen. Deadlocks are avoided by increasing the preempt count. The pagefault handler will then not take any locks but will immediately search the fixup tables. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-01-09[S390] Fix vmalloc area size calculation.Heiko Carstens1-1/+1
setup_memory_end() uses VMALLOC_END instead of VMALLOC_END_INIT to calculate the maximum supported size of physical memory. Since VMALLOC_END is zero, this will cause a crash on 31 bit systems. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-01-09[S390] Fix cpu hotplug (missing 'online' attribute).Heiko Carstens1-1/+4
72486f1f8f0a2bc828b9d30cf4690cf2dd6807fc inverts the logic if an 'online' attribute in /sys/devices/system/cpu/cpuX should appear. So we end up with no hotpluggable cpus at all... Set the hotpluggable value to one to make sure the online attribute appears again. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-01-09[S390] cio: use barrier() in stsch_reset.Heiko Carstens1-8/+4
Use barrier() in stsch_reset() instead of duplicating the stsch() inline assembly and adding "memory" to the clobberlist. Pointed out by Chuck Ebbert. Real fix would be to add a fixup section to the stsch() and extend the basic program check handler so it searches the exception tables in case of a program check. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-01-09[S390] memory detection misses 128k.Hongjie Yang2-2/+22
Fix a memory leak problem in the memory detection routines. A memory leak of 128k occurs when we have a contiguous memory with mixed access-mode (read or write) ranges. Signed-off-by: Hongjie Yang <hongjie@us.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-01-09[POWERPC] Fix bugs in the hypervisor call stats codeAnton Blanchard3-7/+5
There were a few issues with the HCALL_STATS code: - PURR cpu feature checks were backwards - We iterated one entry off the end of the hcall_stats array - Remove dead update_hcall_stats() function prototype I noticed one thing while debugging, and that is we call H_ENTER (to set up the MMU hashtable in early init) before we have done the cpu fixups. This means we will execute the PURR SPR reads even on a CPU that isnt capable of it. I wonder if we can move the CPU feature fixups earlier. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] Fix corruption in hcall9Anton Blanchard1-1/+2
It looks to me like we are corrupting r12 in the hcall9 function. Although we have r0 free we cant use offsets against it, so save away r12 in there instead. r12 holds the ninth return value from the hypervisor call, so without this fix, the caller will see the wrong value for the ninth element in the array that gets the return values. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] iSeries: fix setup initcallStephen Rothwell1-1/+2
Clearing the progress indicator should only be done if we are running on legacy iSeries. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] iSeries: fix viopath initialisationStephen Rothwell1-0/+4
/proc/iSeries/config should only be created if we are running on legacy iSeries. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] iSeries: fix lpevents initialisationStephen Rothwell1-0/+4
/proc/iSeries/lpevents should only be created if we are running on legacy iSeries. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] iSeries: fix proc/iSeries initialisationStephen Rothwell1-1/+10
These proc files should only be created if we are running on legacy iSeries. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] iSeries: fix mf proc initialisationStephen Rothwell1-0/+4
This proc file should only be created if we are running on legacy iSeries. Since we can now run the same kernel on legacy iSeries and other machines, we currently get the /proc/iSeries directory and the files in it on non-iSeries machines, and accessing them causes an oops in some cases. This and the following patches make sure that these files are not created on non-iSeries machines, thus avoiding the oops. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] disable PReP and EFIKA during make oldconfigOlaf Hering1-2/+2
New boards should not be enabled per default. Disable EFIKA and PReP per default. Anyone who really needes the new code can enable it during make oldconfig. Signed-off-by: Olaf Hering <olaf@aepfle.de> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] Fix mpc52xx serial driver to work for arch/ppc againGrant Likely1-0/+2
The mpc52xx_uart_of_enumerate() function was added when adding 52xx support to arch/powerpc, but it must not be called for arch/ppc. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] Don't include powerpc/sysdev/rom.o for arch/ppc buildsGrant Likely1-1/+1
sysdev/rom.c is for arch/powerpc only. Don't compile it when building an arch/ppc kernel. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Sylvain Munaut <tnt@246tNt.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] Fix mpc52xx fdt to use correct device_type for sound devicesGrant Likely3-6/+6
This corrects the documented interface for mpc52xx device trees. Sound devices should be using 'sound' for the device_type field, not the type of sound interface. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Sylvain Munaut <tnt@246tNt.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] 52xx: Don't use device_initcall to probe of_platform_busSylvain Munaut3-3/+6
Using device_initcall makes it happen for every platform that compiles this file in. This is really bad, for obvious reasons. Instead, we use the .init field of the machine description. If the platform needs the hook to do something specific it can provides its own function and call mpc52xx_declare_of_platform_devices from there. If not, the mpc52xx_declare_of_platform_devices function can directly be used as the init hook. Signed-off-by: Sylvain Munaut <tnt@246tNt.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] Add legacy iSeries to ppc64_defconfigStephen Rothwell1-2/+13
Since we can now boot legacy iSeries and other machines with the same config, enable legacy iSeries in ppc64_defconfig. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] Update ppc64_defconfigStephen Rothwell1-55/+185
Enabled new netfilter stuff corresponding to what was enabled before under different names, and turned on the gxt4500 video driver; otherwise just took the defaults. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] Fix manual assembly WARN_ON() in enter_rtas().David Woodhouse3-11/+32
When we switched over to the generic BUG mechanism we forgot to change the assembly code which open-codes a WARN_ON() in enter_rtas(), so the bug table got corrupted. This patch provides an EMIT_BUG_ENTRY macro for use in assembly code, and uses it in entry_64.S. Tested with CONFIG_DEBUG_BUGVERBOSE on ppc64 but not without -- I tried to turn it off but it wouldn't go away; I suspect Aunt Tillie probably needed it. This version gets __FILE__ and __LINE__ right in the assembly version -- rather than saying include/asm-powerpc/bug.h line 21 every time which is a little suboptimal. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] Avoid calling get_irq_server() with a real, not virtual irq.Michal Ostrowski1-3/+2
We can use default_server when masking an interrupt vector. get_irq_server() assumes a virtual irq, so badness may happen if we give it a real one. Signed-off-by: Michal Ostrowski <mostrows@watson.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] Fix unbalanced uses of of_node_putNathan Lynch2-2/+0
The (maple|pasemi)_init_IRQ functions call of_node_put(root) once more than they should, causing the refcount of the root node to underflow, which triggers the WARN_ON in kref_get. Signed-off-by: Nathan Lynch <ntl@pobox.com> Acked-by: Olof Johansson <olof@lixom.net> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09[POWERPC] Fix bogus BUG_ON() in in hugetlb_get_unmapped_area()David Gibson1-4/+4
The powerpc specific version of hugetlb_get_unmapped_area() makes some unwarranted assumptions about what checks have been made to its parameters by its callers. This will lead to a BUG_ON() if a 32-bit process attempts to make a hugepage mapping which extends above TASK_SIZE (4GB). I'm not sure if these assumptions came about because they were valid with earlier versions of the get_unmapped_area() path, or if it was always broken. Nonetheless this patch fixes the logic, and removes the crash. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-01-09Merge branch 'for-linus' of ↵Linus Torvalds4-47/+29
master.kernel.org:/pub/scm/linux/kernel/git/jmorris/selinux-2.6 * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jmorris/selinux-2.6: selinux: Delete mls_copy_context
2007-01-09Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linusLinus Torvalds13-87/+581
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: [MIPS] PNX8550: Fix system timer support [MIPS] TX49: Fix use of CDEX build_store_reg() [MIPS] pnx8550: Fix write_config_byte() PCI config space accessor [MIPS] Fix build errors on SEAD [MIPS] SMTC build fix [MIPS] csum_partial and copy in parallel [MIPS] Malta: Add missing MTD file.
2007-01-09Merge master.kernel.org:/home/rmk/linux-2.6-armLinus Torvalds13-17/+103
* master.kernel.org:/home/rmk/linux-2.6-arm: [ARM] Provide basic printk_clock() implementation [ARM] Resolve fuse and direct-IO failures due to missing cache flushes [ARM] pass vma for flush_anon_page() [ARM] Fix potential MMCI bug [ARM] Fix kernel-mode undefined instruction aborts [ARM] 4082/1: iop3xx: fix iop33x gpio register offset [ARM] 4070/1: arch/arm/kernel: fix warnings from missing includes [ARM] 4079/1: iop: Update MAINTAINERS
2007-01-09Revert "[PATCH] x86-64: Try multiple timer variants in check_timer"Linus Torvalds3-51/+82
This reverts commit b026872601976f666bae77b609dc490d1834bf77, which has been linked to several problem reports with IO-APIC and the timer. Machines either don't boot because the timer doesn't happen, or we get double timer interrupts because we end up double-routing the timer irq through multiple interfaces. See for example http://lkml.org/lkml/2006/12/16/101 http://lkml.org/lkml/2007/1/3/9 http://bugzilla.kernel.org/show_bug.cgi?id=7789 about some of the discussion. Patches to fix this cleanup exist (and have been confirmed to work fine at least for some of the affected cases) and we'll revisit it for 2.6.21, but this late in the -rc series we're better off just reverting the incomplete commit that caused the problems. Suggested-by: Adrian Bunk <bunk@stusta.de> Cc: Eric W. Biederman <ebiederm@xmission.com> Cc: Yinghai Lu <yinghai.lu@amd.com> Cc: Andrew Morton <akpm@osdl.org> Cc: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2007-01-09selinux: Delete mls_copy_contextVenkat Yekkirala4-47/+29
This deletes mls_copy_context() in favor of mls_context_cpy() and replaces mls_scopy_context() with mls_context_cpy_low(). Signed-off-by: Venkat Yekkirala <vyekkirala@TrustedCS.com> Acked-by: Stephen Smalley <sds@tycho.nsa.gov> Signed-off-by: James Morris <jmorris@namei.org>
2007-01-09[MIPS] PNX8550: Fix system timer supportVitaly Wool2-9/+37
the patch inlined below restores proper time accounting for PNX8550-based boards. It also gets rid of #ifdef in the generic code which becomes unnecessary then. It's functionally identical to the previous patch with the same name but it has minor comments from Atsushi and Sergei taken into account. Signed-off-by: Vitaly Wool <vwool@ru.mvista.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-01-09[MIPS] TX49: Fix use of CDEX build_store_reg()Atsushi Nemoto1-5/+4
The commit a923660d786a53e78834b19062f7af2535f7f8ad accidently prevents TX49 from using CDEX. Use build_dst_pref() only if prefetch for store was really available. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-01-09[MIPS] pnx8550: Fix write_config_byte() PCI config space accessorDavy Chan1-1/+1
There's a serious typo in the function: arch/mips/pci/ops-pnx8550.c:write_config_byte() The parameter passed to the function config_access() is PCI_CMD_CONFIG_READ instead of PCI_CMD_CONFIG_WRITE. This renders any attempts to write a single byte to the PCI configuration registers useless. This problem does not exist for write_config_word() nor write_config_dword(). This problem has been there since kernel v2.6.17 and is still there as of kernel v2.6.19.1. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-01-09[MIPS] Fix build errors on SEADAtsushi Nemoto2-4/+9
Quick and dirty fix for build errors on SEAD. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-01-09[MIPS] SMTC build fixAtsushi Nemoto1-3/+3
Pass "irq" to __DO_IRQ_SMTC_HOOK() macro. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-01-09[MIPS] csum_partial and copy in parallelAtsushi Nemoto5-65/+464
Implement optimized asm version of csum_partial_copy_nocheck, csum_partial_copy_from_user and csum_and_copy_to_user which can do calculate and copy in parallel, based on memcpy.S. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-01-09[MIPS] Malta: Add missing MTD file.Ralf Baechle1-0/+63
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-01-08[ARM] Provide basic printk_clock() implementationRussell King1-0/+11
Current sched_clock() implementations on ARM cause unbootable kernels with PRINTK_TIME support enabled. To avoid this, provide a basic printk_clock() implementation which avoids sched_clock() being called before the page tables have been set up. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2007-01-08[ARM] Resolve fuse and direct-IO failures due to missing cache flushesRussell King2-0/+49
fuse does not work on ARM due to cache incoherency issues - fuse wants to use get_user_pages() to copy data from the current process into kernel space. However, since this accesses userspace via the kernel mapping, the kernel mapping can be out of date wrt data written to userspace. This can lead to unpredictable behaviour (in the case of fuse) or data corruption for direct-IO. This resolves debian bug #402876 Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2007-01-08[ARM] pass vma for flush_anon_page()Russell King4-5/+6
Since get_user_pages() may be used with processes other than the current process and calls flush_anon_page(), flush_anon_page() has to cope in some way with non-current processes. It may not be appropriate, or even desirable to flush a region of virtual memory cache in the current process when that is different to the process that we want the flush to occur for. Therefore, pass the vma into flush_anon_page() so that the architecture can work out whether the 'vmaddr' is for the current process or not. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2007-01-08[ARM] Fix potential MMCI bugRussell King1-0/+4
The MMCI driver might end up aborting the initial command and leaving the data part of the command sequence still in place. Avoid this problem by ensuring that any data sequence is properly cleared out when a command completes. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2007-01-07Linux 2.6.20-rc4v2.6.20-rc4Linus Torvalds1-1/+1
2007-01-07[ARM] Fix kernel-mode undefined instruction abortsRussell King1-4/+8
If the kernel attempts to execute a CP1 or CP2 instruction and it aborts, and a FP emulator is not loaded, we try to return as if to a user context, instead of the proper kernel context. Since the fault came from kernel mode, we must use the kernel return paths. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2007-01-07Revert "[PATCH] binfmt_elf: randomize PIE binaries (2nd try)"Linus Torvalds1-7/+1
This reverts commit 59287c0913cc9a6c75712a775f6c1c1ef418ef3b. Hugh Dickins reports that it causes random failures on x86 with SuSE 10.2, and points out "Isn't that randomization, anywhere from 0x10000 to ELF_ET_DYN_BASE, sure to place the ET_DYN from time to time just where the comment says it's trying to avoid? I assume that somehow results in the error reported." (where the comment in question is the existing comment in the source code about mmap/brk clashes). Suggested-by: Hugh Dickins <hugh@veritas.com> Acked-by: Marcus Meissner <meissner@suse.de> Cc: Andrew Morton <akpm@osdl.org> Cc: Andi Kleen <ak@suse.de> Cc: Ingo Molnar <mingo@elte.hu> Cc: Dave Jones <davej@codemonkey.org.uk> Cc: Arjan van de Ven <arjan@linux.intel.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2007-01-06[ARM] 4082/1: iop3xx: fix iop33x gpio register offsetDan Williams2-4/+4
iop33x gpio offset is correct in include/asm-arm/arch-iop33x/iop33x.h, but include/asm-arm/hardware/iop3xx.h adds 4. Signed-off-by: Dan Williams <dan.j.williams@intel.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2007-01-06[ARM] 4070/1: arch/arm/kernel: fix warnings from missing includesBen Dooks2-0/+3
Include <asm/io.h> to fix the warning: arch/arm/kernel/traps.c:647:6: warning: symbol '__readwrite_bug' was not declared. Should it be static? Include <linux/mc146818rtc.h> to fix the warning: arch/arm/kernel/time.c:42:1: warning: symbol 'rtc_lock' was not declared. Should it be static? Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2007-01-06[ARM] 4079/1: iop: Update MAINTAINERSDan Williams1-4/+18
Signed-off-by: Dan Williams <dan.j.williams@intel.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2007-01-06Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6Linus Torvalds1-5/+33
* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6: [PATCH] Driver core: Fix prefix driver links in /sys/module by bus-name