summaryrefslogtreecommitdiffstats
path: root/arch
Commit message (Collapse)AuthorAgeFilesLines
* i386: fix a hang on stuck nmi watchdogDaniel Walker2007-09-101-1/+1
| | | | | | | | | | | | | | In the case when an nmi gets stucks the endflag stays equal to zero. This causes the busy looping on other cpus to continue, even though the nmi test is done. On my machine with out the change below the system would hang right after check_nmi_watchdog(). The change below just sets endflag prior to checking if the test was successful or not. Signed-off-by: Daniel Walker <dwalker@mvista.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* x86_64: Remove CLFLUSH in text_poke()Andi Kleen2007-09-101-4/+2
| | | | | | | | | | | | The CLFLUSH for the modified code line in text_poke was supposed to speed up CPU recovery. Unfortunately it seems to cause hangs on some VIA C3s (at least on VIA Esther Model 10 Stepping 9) Remove it. Thanks to Stefan Becker for reporting/testing. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* i386: Fix perfctr watchdog on core duoStephane Eranian2007-09-101-6/+22
| | | | | | | | | | | | | | | | | | | Fix the NMI watchdog on Intel CoreDuo processor where the kernel would get stuck during boot. The issue is related to errata AE49, where the PERFEVTSEL1 counter does not have a working enable bit. Thus it is not possible to use it for NMI. The patch creates a dedicated wd_ops for CoreDuo which falls back to using PERFEVTSEL0. The other Intel processors supporting the architectural PMU will keep on using PERFEVTSEL1 as this allows other subsystems, such as perfmon, to use PERFEVTSEL0 for PEBS monitoring in particular. Bug initially reported by Daniel Walker. AK: Added comments Signed-off-by: Stephane Eranian <eranian@hpl.hp.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Fix spurious syscall tracing after PTRACE_DETACH + PTRACE_ATTACHRoland McGrath2007-09-103-3/+0
| | | | | | | | | | | | | | | | | | | | | | When PTRACE_SYSCALL was used and then PTRACE_DETACH is used, the TIF_SYSCALL_TRACE flag is left set on the formerly-traced task. This means that when a new tracer comes along and does PTRACE_ATTACH, it's possible he gets a syscall tracing stop even though he's never used PTRACE_SYSCALL. This happens if the task was in the middle of a system call when the second PTRACE_ATTACH was done. The symptom is an unexpected SIGTRAP when the tracer thinks that only SIGSTOP should have been provoked by his ptrace calls so far. A few machines already fixed this in ptrace_disable (i386, ia64, m68k). But all other machines do not, and still have this bug. On x86_64, this constitutes a regression in IA32 compatibility support. Since all machines now use TIF_SYSCALL_TRACE for this, I put the clearing of TIF_SYSCALL_TRACE in the generic ptrace_detach code rather than adding it to every other machine's ptrace_disable. Signed-off-by: Roland McGrath <roland@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linusLinus Torvalds2007-09-107-26/+13
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: [MIPS] Ocelot: remove remaining bits [MIPS] TLB: Fix instruction bitmasks [MIPS] R10000: Fix wrong test in dma-default.c [MIPS] Provide empty irq_enable_hazard definition for legacy and R1 cores. [MIPS] Sibyte: Remove broken dependency on EXPERIMENTAL from SIBYTE_SB1xxx_SOC. [MIPS] Kconfig: whitespace cleanup. [MIPS] PCI: Set need_domain_info if controller domain index is non-zero. [MIPS] BCM1480: Fix computation of interrupt mask address register. [MIPS] i8259: Add disable method. [MIPS] tty: add the new ioctls and definitions.
| * [MIPS] Ocelot: remove remaining bitsYoichi Yuasa2007-09-101-14/+0
| | | | | | | | | | Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] TLB: Fix instruction bitmasksThiemo Seufer2007-09-101-2/+2
| | | | | | | | | | Signed-Off-By: Thiemo Seufer <ths@networkno.de> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] R10000: Fix wrong test in dma-default.cMaxime Bizon2007-09-101-1/+1
| | | | | | | | | | Signed-off-by: Maxime Bizon <mbizon@freebox.fr> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] Sibyte: Remove broken dependency on EXPERIMENTAL from SIBYTE_SB1xxx_SOC.Ralf Baechle2007-09-101-1/+0
| | | | | | | | | | | | | | Otherwise Kconfig will produce a nonsenical .config for a kernel that is neither 32-bit nor 64-bit. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] Kconfig: whitespace cleanup.Ralf Baechle2007-09-101-4/+4
| | | | | | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] PCI: Set need_domain_info if controller domain index is non-zero.Ralf Baechle2007-09-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes this little funny: bigsur:/proc/bus/pci# ls -l total 0 dr-xr-xr-x 2 root root 0 Aug 28 19:31 00 dr-xr-xr-x 2 root root 0 Aug 28 19:31 00 dr-xr-xr-x 2 root root 0 Aug 28 19:31 01 dr-xr-xr-x 2 root root 0 Aug 28 19:31 03 -r--r--r-- 1 root root 0 Aug 28 19:31 devices Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] BCM1480: Fix computation of interrupt mask address register.Ralf Baechle2007-09-101-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | CC arch/mips/sibyte/bcm1480/irq.o arch/mips/sibyte/bcm1480/irq.c: In function 'bcm1480_mask_irq': arch/mips/sibyte/bcm1480/irq.c:112: warning: cast to pointer from integer of different size arch/mips/sibyte/bcm1480/irq.c:114: warning: cast to pointer from integer of different size arch/mips/sibyte/bcm1480/irq.c: In function 'bcm1480_unmask_irq': arch/mips/sibyte/bcm1480/irq.c:130: warning: cast to pointer from integer of different size arch/mips/sibyte/bcm1480/irq.c:132: warning: cast to pointer from integer of different size Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] i8259: Add disable method.Kyungmin Park2007-09-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | After 76d2160147f43f982dfe881404cfde9fd0a9da21, the qemu NE2000 was frequently producing WATCHDOG timeouts. Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Cc: Ralf Baechle <ralf@linux-mips.org> Cc: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | Merge branch 'for-linus' of git://www.linux-m32r.org/git/takata/linux-2.6_devLinus Torvalds2007-09-1053-3209/+2418
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'for-linus' of git://www.linux-m32r.org/git/takata/linux-2.6_dev: m32r: Rename STI/CLI macros m32r: build fix of entry.S m32r: Separate syscall table from entry.S m32r: Cosmetic updates of arch/m32r/kernel/entry.S m32r: Exit ei_handler directly for no IRQ case or IPI operations m32r: Simplify ei_handler code m32r: Define symbols to unify platform-dependent ICU checks m32r: Move dot.gdbinit files m32r: Rearrange platform-dependent codes m32r: Add defconfig file for the usrv platform. m32r: Update defconfig files for 2.6.23-rc1 m32r: Move defconfig files to arch/m32r/configs/
| * | m32r: Rename STI/CLI macrosHirokazu Takata2007-09-061-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | The names of STI and CLI macros were derived from i386 arch historically, but their name are incomprehensible. So, for easy to understand, rename these macros to ENABLE_INTERRUPTS and DISABLE_INTERRUPTS, respectively. Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
| * | m32r: build fix of entry.SHirokazu Takata2007-09-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes the following compile error: <-- snip --> ... AS arch/m32r/kernel/entry.o /home/bunk/linux/kernel-2.6/linux-2.6.23-rc3-mm1/arch/m32r/kernel/entry.S: Assembler messages: /home/bunk/linux/kernel-2.6/linux-2.6.23-rc3-mm1/arch/m32r/kernel/entry.S:358: Error: bad instruction `addi r0,#(((((0)+(64))+(32))+(32)))' make[2]: *** [arch/m32r/kernel/entry.o] Error 1 <-- snip --> Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Cc: Adrian Bunk <bunk@kernel.org>
| * | m32r: Separate syscall table from entry.SHirokazu Takata2007-09-032-287/+290
| | | | | | | | | | | | | | | | | | | | | | | | - Separate sys_call_table from arch/m32r/kernel/entry.S and move it to arch/m32r/kernel/system_call.S. - Change sys_call_table section from .data to .rodata. Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
| * | m32r: Cosmetic updates of arch/m32r/kernel/entry.SHirokazu Takata2007-09-031-15/+7
| | | | | | | | | | | | | | | | | | | | | - Remove unused symbols *_MASK - Change indentation of comments, etc. Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
| * | m32r: Exit ei_handler directly for no IRQ case or IPI operationsHirokazu Takata2007-09-031-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If no IRQ request is found in the IRQ check of ei_handler, we can exit directly by jumping "restore_all", instead of via "ret_from_intr". This modification is also likely effective for IPI operations, because scheduler call never happen at the exit of IPIs. Signed-off-by: Hitoshi Yamamoto <hitoshiy@linux-m32r.org> Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
| * | m32r: Simplify ei_handler codeHirokazu Takata2007-09-031-202/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Simplify and clean up messy ei_handler code in arch/m32r/kernel/entry.S. - Remove ifdef's for CONFIG_CHIP_* configulations. - Rearrange the M32700 workaround code. - Remove the messy platform-dependent interrupt check routines and consolidate them to common INT0/INT1/INT2 check routines for all platforms with cascaded interrupt controllers. Signed-off-by: Hitoshi Yamamoto <hitoshiy@linux-m32r.org> Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
| * | m32r: Define symbols to unify platform-dependent ICU checksHirokazu Takata2007-09-031-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On some m32r platforms, cascaded ICUs are used. This patch is required to simplify ei_handler and consolidate platform- dependent ICU check routines. platform ICU/INT1 ICU/INT0 ICU/INT2 -------------- -------- -------- -------- m32104ut o - - m32700ut o o o opsput o o o usrv o - - (others) - - - Signed-off-by: Hitoshi Yamamoto <hitoshiy@linux-m32r.org> Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
| * | m32r: Move dot.gdbinit filesHirokazu Takata2007-09-0310-0/+0
| | | | | | | | | | | | | | | | | | | | | Move dot.gdbinit files from arch/m32r/{platforms}/dot.gdbinit* to arch/m32r/platforms/{platform}/. Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
| * | m32r: Rearrange platform-dependent codesHirokazu Takata2007-09-0327-28/+37
| | | | | | | | | | | | | | | | | | | | | Rearrange platform-dependent codes from arch/m32r/kernel/*.c to arch/m32r/platforms/{platform}/. Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
| * | m32r: Add defconfig file for the usrv platform.Hirokazu Takata2007-09-031-0/+774
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add usrv_defcofig file for the usrv (M32R MicroServer) platform. platform defconfig Note ---------- ---------------------- --------------------------- usrv usrv_defconfig SMP Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
| * | m32r: Update defconfig files for 2.6.23-rc1Hirokazu Takata2007-09-0312-2669/+1244
| | | | | | | | | | | | | | | | | | Update defconfig files for 2.6.23-rc1 in arch/m32r/configs/. Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
| * | m32r: Move defconfig files to arch/m32r/configs/Hirokazu Takata2007-09-0311-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change defconfig file's location from arch/m32r/{platform}/defconfig* to arch/m32r/configs/{platform}_defconfig. Applying this patch, we can use defconfig file for each m32r platform easily, like other architectures. ex. Setup defconfig for cross-building $ make ARCH=m32r CROSS_COMPILE=m32r-linux-gnu- {platform}_defconfig. platform defconfig Note ---------- ---------------------- --------------------------- m32104ut m32104ut_defconfig MMU-less m32700ut m32700ut.smp_defconfig SMP m32700ut m32700ut.up_defconfig UP mappi mappi.smp_defconfig SMP mappi mappi.up_defconfig UP mappi mappi.nommu_defconfig MMU-less mappi2 mappi2.opsp_defconfig FPGA env. (CPU Core: OPSP) mappi2 mappi2.vdec2_defconfig FPGA env. (CPU Core: VDEC2) mappi3 imappi3.smp_defconfig SMP oaks32r oaks32r_defconfig MMU-less opsput opsput_defconfig UP Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
* | | Merge branch 'for-linus' of ↵Linus Torvalds2007-09-101-1/+5
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup: [x86 setup] Work around bug in Xen HVM
| * | | [x86 setup] Work around bug in Xen HVMChristian Ehrhardt2007-09-051-1/+5
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Apparently XEN does not keep the contents of the 48-bit gdt_48 data structure that is passed to lgdt in the XEN machine state. Instead it appears to save the _address_ of the 48-bit descriptor somewhere. Unfortunately this data happens to reside on the stack and is probably no longer availiable at the time of the actual protected mode jump. This is Xen bug but given that there is a one-line patch to work around this problem, the linux kernel should probably do this. My fix is to make the gdt_48 description in setup_gdt static (in setup_idt this is already the case). This allows the kernel to boot under Xen HVM again. Signed-off-by: Christian Ehrhardt <lk@c--e.de> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | | [POWERPC] ibmebus: Prevent bus_id collisionsJoachim Fenkes2007-09-111-21/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, ibmebus derived a device's bus_id from its location code. The location code is not guaranteed to be unique, so we might get bus_id collisions if two devices share the same location code. The OFDT full_name, however, is unique, so we use that instead (truncating it on the left if it is too long). Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* | | [POWERPC] cell/PS3: Ignore storage devices that are still being probedGeert Uytterhoeven2007-09-112-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On PS3, A storage device may show up in the repository before the hypervisor has finished probing: - If its type is not yet known, it shows up as PS3_DEV_TYPE_STOR_DUMMY, - If its regions are being probed, it shows up as having zero regions. If any of these happen, consider the device not yet present. The storage probe thread will retry later. This fixes the timing-dependent problem where a kernel booted from FLASH ROM sometimes cannot find the hard disk. Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com> Acked-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* | | [POWERPC] cell/PS3: Always set master run control bit in mfc_sr1_setJeremy Kerr2007-09-111-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At present, running any SPE program on the ps3 will trigger a BUG_ON when spufs_run_spu tries to clear the master run control bit, as lv1 does not make the master run control available to Linux. This change makes SPE apps work again by disabling changes to the master run control on PS3. Although we don't have the facility to disable a SPE with supervisor-level privileges, it's better than hitting the BUG_ON unconditionally. Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Acked-by: Masato Noguchi <Masato.Noguchi@jp.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* | | [POWERPC] cell/PS3: Fix a bug that causes the PS3 to hang on the SPU Class 0 ↵Masato Noguchi2007-09-111-9/+15
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | interrupt. The Cell BE Architecture spec states that the SPU MFC Class 0 interrupt is edge-triggered. The current spu interrupt handler assumes this behavior and does not clear the interrupt status. The PS3 hypervisor visualizes all SPU interrupts as level, and on return from the interrupt handler the hypervisor will deliver a new virtual interrupt for any unmasked interrupts which for which the status has not been cleared. This fix clears the interrupt status in the interrupt handler. Signed-off-by: Masato Noguchi <Masato.Noguchi@jp.sony.com> Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Acked-by: Arnd Bergmann <arnd.bergmann@de.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* | Merge branch 'release' of ↵Linus Torvalds2007-09-0416-37/+118
|\ \ | |/ |/| | | git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
| * [IA64] Cleanup HPSIM code (was: Re: Enable early console for Ski simulator)Peter Chubb2007-09-013-12/+4
| | | | | | | | | | | | | | | | | | After my last patch we have a new header file for HP simulator use. Here's code to use it for stuff that used to have `extern' statements inline in the code. Functionality should not change with this patch. Signed-off-by: Peter Chubb <peterc@gelato.unsw.edu.au> Signed-off-by: Tony Luck <tony.luck@intel.com>
| * [IA64] Enable early console for Ski simulatorPeter Chubb2007-09-013-14/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch cleans up the `enable early console for SKI' patch (471e7a44848f467c9b83adc3463d019d2fa8817f), and 1. potentially allows the gensparse_defconfig to work again. (there are other problems running a generic kernel on Ski) 2. fixes the `console registered twice' problem. 3. Cleans up the code by moving the `extern hpsim_cons' declaration to a new asm/hpsim.h file. Thanks to Jes for comments. Signed-off-by: Peter Chubb <peterc@gelato.unsw.edu.au> Signed-off-by: Tony Luck <tony.luck@intel.com>
| * [IA64] Stop bogus NMI & softlockup warnings in ia64 show_memPrarit Bhargava2007-09-012-0/+6
| | | | | | | | | | | | | | | | | | | | | | When dumping memory via sysrq-m it is possible to take a bogus NMI watchdog or softlockup watchdog because the dump can take a long time on big memory systems. Occasionally tickle the watchdog when doing the dump. Signed-off-by: Prarit Bhargava <prarit@redhat.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
| * [IA64] SN: Add support for CPU disableJohn Keller2007-09-017-4/+61
| | | | | | | | | | | | | | | | | | | | | | Add additional support for CPU disable on SN platforms. Correctly setup the smp_affinity mask for I/O error IRQs. Restrict the use of the feature to Altix 4000 and 450 systems running with a CPU disable capable PROM, and do not allow disabling of CPU 0. Signed-off-by: John Keller <jpk@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
| * [IA64] Remove unnecessary cast of allocation return value in ↵Jesper Juhl2007-09-011-1/+2
| | | | | | | | | | | | | | | | | | sn_hwperf_enum_objects() vmalloc() returns a void pointer - no need to cast it. Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
| * [IA64] Clear pending interrupts at CPU boot up timeKenji Kaneshige2007-08-281-0/+5
| | | | | | | | | | | | | | | | | | | | The pending interrupts can be remaining at boot up time on some platform. This will cause spurious interrupts when interrupt is enabled for the first time. This patch clears IVR at the CPU initialization to eliminate such spurious interrupts. Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
| * [IA64] Fix unexpected interrupt vector handlingKenji Kaneshige2007-08-281-6/+22
| | | | | | | | | | | | | | | | | | | | | | | | Fix handling for spurious interrupts not being mapped to any IRQs. Currently, spurious interrupts that are not mapped to any IRQs are handled as IRQ 15 (== IA64_SPURIOUS_VECTOR). But it is not proper because vector != irq. We need special handlings for such spurious interrupts not being mapped to any IRQs. Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
* | Merge branch 'for-linus' of ↵Linus Torvalds2007-08-311-13/+21
|\ \ | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup: [x86 setup] Don't rely on the VESA BIOS being register-clean
| * | [x86 setup] Don't rely on the VESA BIOS being register-cleanH. Peter Anvin2007-08-311-13/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The VESA BIOS is specified to be register-clean. However, we have now found at least one system which violates that. Thus, be as paranoid about VESA calls as about everything else. Huge thanks to Will Simoneau for reporting, diagnosing, and testing this out on Dell Inspiron 5150. Cc: Will Simoneau <simoneau@ele.uri.edu> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | | x86: be even more careful about checking the stack frame on dumpingLinus Torvalds2007-08-311-12/+21
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | lguest didn't initialize the kernel stack the way a real i386 kernel does, and ended up triggering a corner-case in the stack frame checking that doesn't happen on naive i386, and that the stack dumping didn't handle quite right. This makes the frame handling more correct, and tries to clarify the code at the same time so that it's a bit more obvious what is going on. Thanks to Rusty Russell for debugging the lguest failure- Cc: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | hugepage: fix broken check for offset alignment in hugepage mappingsDavid Gibson2007-08-313-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For hugepage mappings, the file offset, like the address and size, needs to be aligned to the size of a hugepage. In commit 68589bc353037f233fe510ad9ff432338c95db66, the check for this was moved into prepare_hugepage_range() along with the address and size checks. But since BenH's rework of the get_unmapped_area() paths leading up to commit 4b1d89290b62bb2db476c94c82cf7442aab440c8, prepare_hugepage_range() is only called for MAP_FIXED mappings, not for other mappings. This means we're no longer ever checking for an aligned offset - I've confirmed that mmap() will (apparently) succeed with a misaligned offset on both powerpc and i386 at least. This patch restores the check, removing it from prepare_hugepage_range() and putting it back into hugetlbfs_file_mmap(). I'm putting it there, rather than in the get_unmapped_area() path so it only needs to go in one place, than separately in the half-dozen or so arch-specific implementations of hugetlb_get_unmapped_area(). Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Cc: Adam Litke <agl@us.ibm.com> Cc: Andi Kleen <ak@suse.de> Cc: "David S. Miller" <davem@davemloft.net> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | PM: Fix dependencies of CONFIG_SUSPEND and CONFIG_HIBERNATIONRafael J. Wysocki2007-08-311-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | Dependencies of CONFIG_SUSPEND and CONFIG_HIBERNATION introduced by commit 296699de6bdc717189a331ab6bbe90e05c94db06 "Introduce CONFIG_SUSPEND for suspend-to-Ram and standby" are incorrect, as they don't cover the facts that (1) not all architectures support suspend and (2) SMP hibernation is only possible on X86 and PPC64 (if CONFIG_PPC64_SWSUSP is set). Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | spi: correct name for spi_txx9Atsushi Nemoto2007-08-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | Correct the name of the spi_txx9 driver (and their in-tree user) instead of MODULE_ALIAS workaround. This would be preferable in the long term. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Acked-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | uml: fix x86_64 core dump crashJeff Dike2007-08-312-6/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Stop UML crashing when trying to dump a process core on x86_64. This is the minimal fix to stop the crash - more things are broken here, and patches are forthcoming. The immediate thing to do is define ELF_CORE_COPY_REGS and ELF_CORE_COPY_FPREGS. Defining ELF_CORE_COPY_FPREGS allows dump_fpu to go away. It is defined in terms of save_fp_registers, so that needs to be added. Signed-off-by: Jeff Dike <jdike@linux.intel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | uml: fix linker script alignment bugsJeff Dike2007-08-312-10/+13
| | | | | | | | | | | | | | | | | | Fix a class of bugs in the UML linker scripts which caused section boundary variables to sometimes not line up with their sections. Signed-off-by: Jeff Dike <jdike@linux.intel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | [SPARC64]: Fix several bugs in MSI handling.David S. Miller2007-08-303-14/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1) sun4{u,v}_build_msi() have improper return value handling. We should always return negative error codes, instead of using the magic value "0" which could in fact be a valid MSI number. 2) sun4{u,v}_build_msi() should return -ENOMEM instead of calling prom_prom() halt with kzalloc() of the interrupt data fails. 3) We 'remembered' the MSI number using a singleton in the struct device archdata area, this doesn't work for MSI-X which can cause multiple MSIs assosciated with one device. Delete that archdata member, and instead store the MSI number in the IRQ chip data area. Signed-off-by: David S. Miller <davem@davemloft.net>
* | [SPARC64]: Fix type and constant sizes wrt. sun4u IMAP/ICLR handling.David S. Miller2007-08-301-1/+1
| | | | | | | | | | | | | | | | Sometimes we were using 32-bit values and the top bits were getting inadvertantly chopped off. This will matter for the forthcoming Fire controller MSI support. Signed-off-by: David S. Miller <davem@davemloft.net>
OpenPOWER on IntegriCloud