aboutsummaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2006-11-14[PATCH] x86-64: Fix PTRACE_[SG]ET_THREAD_AREA regression with ia32 emulation.Andi Kleen
ptrace(PTRACE_[SG]ET_THREAD_AREA) calls from ia32 code should be passed onto the x86_64 implementation. The default case in sys32_ptrace used to call to sys_ptrace(), but is now EINVAL. This patch fixes a regression caused by that changed. Signed-off-by: Mike McCormack <mike@codeweavers.com> Signed-off-by: Andi Kleen <ak@suse.de>
2006-11-14[PATCH] x86-64: Fix partial page check to ensure unusable memory is not ↵Aaron Durbin
being marked usable. Fix partial page check in e820_register_active_regions to ensure partial pages are not being marked as active in the memory pool. Signed-off-by: Aaron Durbin <adurbin@google.com> Signed-off-by: Andi Kleen <ak@suse.de>
2006-11-14Revert "[PATCH] MMCONFIG and new Intel motherboards"Andi Kleen
This reverts 4c6e052adfe285ede5884e4e8c4d33af33932c13 commit. Following Linus' i386 change: revert resource reservation for mmcfg config now. Will be revisited in .20 hopefully.
2006-11-13Merge 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] cell: set ARCH_SPARSEMEM_DEFAULT in Kconfig [POWERPC] Fix cell "new style" mapping and add debug [POWERPC] pseries: Force 4k update_flash block and list sizes [POWERPC] CPM_UART: Fix non-console initialisation [POWERPC] CPM_UART: Fix non-console transmit [POWERPC] Make sure initrd and dtb sections get into zImage correctly
2006-11-13[PATCH] mspec driver build fixJes Sorensen
Fix MSPEC driver to build for non SN2 enabled configs as the driver should work in cached and uncached modes (no fetchop) on these systems. In addition make MSPEC select IA64_UNCACHED_ALLOCATOR, which is required for it and move it to arch/ia64/Kconfig to avoid warnings on non ia64 architectures running allmodconfig. Once the Kconfig code is fixed, we can move it back. Signed-off-by: Jes Sorensen <jes@sgi.com> Cc: Fernando Luis Vzquez Cao <fernando@oss.ntt.co.jp> Cc: "Luck, Tony" <tony.luck@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-10[POWERPC] cell: set ARCH_SPARSEMEM_DEFAULT in KconfigGeoff Levand
The current cell processor support needs sparsemem, so set it as the default memory model. Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Acked-by: Arnd Bergmann <arnd.bergmann@de.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-11-10[POWERPC] Fix cell "new style" mapping and add debugBenjamin Herrenschmidt
This fixes a typo in the "new style" code for mapping SPE resources, which causes it to try to map the same resource 4 times. It also adds some pr_debug's that are useful to track down issues with the firmware when bringinh up new machines. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-11-10[POWERPC] pseries: Force 4k update_flash block and list sizesJohn Rose
The enablement of 64k pages on pseries platforms exposed a bug in the RTAS mechanism for updating firmware. RTAS assumes 4k for flash block and list sizes, and use of any other sizes results in a failure, even though PAPR does not specify any such requirement. This patch changes the rtas_flash module to force the use of 4k memory block and list sizes when preparing and sending a firmware image to RTAS. The rtas_flash function now uses a slab cache of 4k blocks with 4k alignment, rather than get_zeroed_page(), to allocate the memory for the flash blocks and lists. The 4k alignment requirement is specified in PAPR. Signed-off-by: John Rose <johnrose@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-11-09[POWERPC] Make sure initrd and dtb sections get into zImage correctlyPaul Mackerras
The "wrapper" script was using the wrong names for the initrd and dtb (device-tree blob) sections. This fixes it, and also ensures the symbols for the start and end of the dtb get defined correctly. Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-11-08[PATCH] htirq: refactor so we only have one function that writes to the chipEric W. Biederman
This refactoring actually optimizes the code a little by caching the value that we think the device is programmed with instead of reading it back from the hardware. Which simplifies the code a little and should speed things up a bit. This patch introduces the concept of a ht_irq_msg and modifies the architecture read/write routines to update this code. There is a minor consistency fix here as well as x86_64 forgot to initialize the htirq as masked. Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Cc: Andi Kleen <ak@suse.de> Acked-by: Bryan O'Sullivan <bos@pathscale.com> Cc: <olson@pathscale.com> Cc: Roland Dreier <rolandd@cisco.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08[PATCH] ia64: select ACPI_NUMA if ACPIKAMEZAWA Hiroyuki
When ACPI && NUMA, pxm_to_node is used and it exists in drivers/acpi/numa.c Tony said: The patch makes sense ... if you pick both of "ACPI" and "NUMA", then you need (and should automatically be given) ACPI_NUMA too. The only open question is whether there is a better way of getting there. Perhaps with less configuration options in the first place? We are heading towards a future where so many systems will be NUMA that there would seem to be little benefit in keeping ACPI_NUMA separate from ACPI ... but perhaps we aren't quite there yet. Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujtisu.com> Cc: Len Brown <lenb@kernel.org> Acked-by: "Luck, Tony" <tony.luck@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08[PATCH] kretprobe: fix kretprobe-booster to save regs and set statusMasami Hiramatsu
There are two bugs in the kretprobe-booster. 1) It doesn't make room for gs registers. 2) It doesn't change status of the current kprobe. This status will effect the fault handling. This patch fixes these bugs and, additionally, saves skipped registers for compatibility with the original kretprobe. Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08[PATCH] i386: Force data segment to be 4K alignedVivek Goyal
o Currently there is no specific alignment restriction in linker script and in some cases it can be placed non 4K aligned addresses. This fails kexec which checks that segment to be loaded is page aligned. o I guess, it does not harm data segment to be 4K aligned. Signed-off-by: Vivek Goyal <vgoyal@in.ibm.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08[PATCH] Regression in 2.6.19-rc microcode driverArjan van de Ven
If the microcode driver is built in (rather than module) there are some, ehm, interesting effects happening due to the new "call out to userspace" behavior that is introduced.. and which runs too early. The result is a boot hang; which is really nasty. The patch below is a minimally safe patch to fix this regression for 2.6.19 by just not requesting actual microcode updates during early boot. (That is a good idea in general anyway) The "real" fix is a lot more complex given the entire cpu hotplug scenario (during cpu hotplug you normally need to load the microcode as well); but the interactions for that are just really messy at this point; this fix at least makes it work and avoids a full detangle of hotplug. Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08Merge merom:v2.6/linuxLinus Torvalds
* merom:v2.6/linux: x86-64: write IO APIC irq routing entries in correct order x86-64: clean up io-apic accesses
2006-11-08x86-64: write IO APIC irq routing entries in correct orderLinus Torvalds
This is the x86-64 version of f9dadfa71bc594df09044da61d1c72701121d802 that did the same thing on i386. Since the "mask" bit is in the low word, when we write a new entry, we need to write the high word first, before we potentially unmask it. The exception is when we actually want to mask the interrupt, in which case we want to write the low word first to make sure that the high word doesn't change while the interrupt routing is still active. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08x86-64: clean up io-apic accessesLinus Torvalds
This is just commit 130fe05dbc0114609cfef9815c0c5580b42decfa ported to x86-64, for all the same reasons. It cleans up the IO-APIC accesses in order to then fix the ordering issues. We move the accessor functions (that were only used by io_apic.c) out of a header file, and use proper memory-mapped accesses rather than making up our own "volatile" pointers. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08Revert "[PATCH] i386: Add MMCFG resources to i386 too"Linus Torvalds
This reverts commit de09bddb9d6f96785be470c832b881e6d72d589f. It tried to reserve the MMCONFIG mmio memory ranges, but since the MMCONFIG information is broken and often bogus (which is why we don't dare use it most of the time _anyway_), it does more harm than good. Cc: Jeff Chua <jeff.chua.linux@gmail.com> Cc: Adrian Bunk <bunk@stusta.de> Cc: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-07Merge branch 'fixes_for_linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/jbglaw/vax-linux * 'fixes_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbglaw/vax-linux: Update for the srm_env driver.
2006-11-07Merge master.kernel.org:/home/rmk/linux-2.6-armLinus Torvalds
* master.kernel.org:/home/rmk/linux-2.6-arm: [ARM] 3927/1: Allow show_mem() to work with holes in memory map. [ARM] 3926/1: make timer led handle HZ != 100 [ARM] 3923/1: S3C24XX: update s3c2410_defconfig with new drivers [ARM] 3922/1: S3C24XX: update s3c2410_defconfig to 2.6.19-rc4 [ARM] 3921/1: S3C24XX: remove bast_defconfig [ARM] 3920/1: S3C24XX: Remove smdk2410_defconfig [ARM] 3919/1: Fixed definition of some PXA270 CIF related registers [ARM] 3918/1: ixp4xx irq-chip rework [ARM] 3912/1: Make PXA270 advertise HWCAP_IWMMXT capability [ARM] 3915/1: S3C2412: Add s3c2410_gpio_getirq() to general gpio.c [ARM] 3917/1: Fix dmabounce symbol exports
2006-11-07Update for the srm_env driver.Jan-Benedict Glaw
This patch contains a fix for a bug introduced more than a year ago (not setting *eof) and updates whitespace a bit. Signed-off-by: Jan-Benedict Glaw <jbglaw@lug-owl.de>
2006-11-07[ARM] 3927/1: Allow show_mem() to work with holes in memory map.Ray Lehtiniemi
show_mem() was not correctly handling holes in the memory map. It was treating the freed sections of the map as though they contained valid struct page entries. This could cause incorrect debugging output or even a kernel panic. This patch keeps the struct meminfo around after system initialization so that show_mem() can use it when scanning memory. show_mem() now walks over each bank of each online node, rather than assuming that each node contains a single contiguous bank. Signed-off-by: Ray Lehtiniemi <rayl@mail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-11-07[ARM] 3926/1: make timer led handle HZ != 100David Brownell
The timer LED is unusable at HZ=large, since it's got a hard-wired value of 100 ticks per cycle; when HZ=1024 (for example) it's essentially always-on. This patch just makes that be HZ ticks per cycle. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-11-06[MIPS] Fix EV64120 and Ocelot builds by providing a plat_timer_setup().Ralf Baechle
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06[MIPS] EV64120: Fix PCI interrupt allocation.Ralf Baechle
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06[MIPS] Make irq number allocator generally available for fixing EV64120.Ralf Baechle
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06[MIPS] EV64120: Fix timer initialization for HZ != 100.Ralf Baechle
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06[MIPS] Ocelot 3: Fix MAC address detection after platform_device conversion.Ralf Baechle
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06[MIPS] Ocelot C: Fix MAC address detection after platform_device conversion.Ralf Baechle
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06[MIPS] SB1: On bootup only flush cache on local CPU.Ralf Baechle
This fixes a warning on bootup warning in smp_call_function. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06[MIPS] Ocelot 3: Fix large number of warnings.Ralf Baechle
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06[MIPS] Ocelot C: Fix mapping of ioport address range.Ralf Baechle
o Fix warnings o 768MB worth of I/O ports were insane o 64-bit kernels don't need special handling because ioremap does the magic Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06[MIPS] Ocelot C: Fix warning about missmatching format string.Ralf Baechle
CC arch/mips/momentum/ocelot_c/setup.o arch/mips/momentum/ocelot_c/setup.c: In function 'momenco_time_init': arch/mips/momentum/ocelot_c/setup.c:223: warning: format '%d' expects type 'int', but argument 2 has type 'long unsigned int' Change data type to match format string; a 32-bit type better suits our needs. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06[MIPS] Ocelot C: fix eth registration after conversion to platform_deviceRalf Baechle
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06[MIPS] Ocelot C: Fix large number of warnings.Ralf Baechle
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06Merge branch 'for-linus' of git://www.atmel.no/~hskinnemoen/linux/kernel/avr32Linus Torvalds
* 'for-linus' of git://www.atmel.no/~hskinnemoen/linux/kernel/avr32: AVR32: Add missing return instruction in __raw_writesb AVR32: Wire up sys_epoll_pwait AVR32: Fix thinko in generic_find_next_zero_le_bit() AVR32: Get rid of board_early_init
2006-11-06AVR32: Add missing return instruction in __raw_writesbHaavard Skinnemoen
__raw_writesb ends with a conditional branch, which is obviously wrong. It should return after the last loop terminates. Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
2006-11-06AVR32: Wire up sys_epoll_pwaitHaavard Skinnemoen
Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
2006-11-06[S390] IRQs too early enabled.Heiko Carstens
setup_lowcore() calls ctl_set_bit() which returns withs interrupts enabled. The setup arch code is not supposed to enable interrupts that early. Therefore use the __ctl_set_bit() variant. This fixes the not working lock dependency validator on non 64 bit systems. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2006-11-06[S390] revert add_active_range() usage patch.Heiko Carstens
Commit 7676bef9c183fd573822cac9992927ef596d584c breaks DCSS support on s390. DCSS needs initialized struct pages to work. With the usage of add_active_range() only the struct pages for physically present pages are initialized. This could be fixed if the DCSS driver would initiliaze the struct pages itself, but this doesn't work too. This is because the mem_map array does not include holes after the last present memory area and therefore there is nothing that could be initialized. To fix this and to avoid some dirty hacks revert this patch for now. Will be added later when we move to a virtual mem_map. Cc: Carsten Otte <cotte@de.ibm.com> Cc: Adrian Bunk <bunk@stusta.de> Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2006-11-06AVR32: Fix thinko in generic_find_next_zero_le_bit()Haavard Skinnemoen
The existing implementation of this function seems to be looking for a one although it should be looking for a zero. This causes trouble for the ext2 filesystem, which tends to report -ENOSPC without this patch. Fix this by complementing each word before scanning. Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
2006-11-06AVR32: Get rid of board_early_initHaavard Skinnemoen
board_early_init() is left over from some early prototyping work where we had to initialize the SDRAM controller ourselves. This depends on the kernel being loaded into static RAM, which just isn't possible on any commercially available products today. In order to run without a boot loader, we need to create a zImage stub or have the debugger initialize the SDRAM for us (for really low-level debugging) Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
2006-11-05[SPARC]: Fix robust futex syscalls and wire up migrate_pages.David S. Miller
When I added the entries for the robust futex syscall entries, I forgot to bump NR_SYSCALLS. The current situation is error-prone because NR_SYSCALLS lives in entry.S where the system call limit checks are enforced. Move the definition to asm/unistd.h in order to make this mistake much more difficult to make. And wire up sys_migrate_pages since the powerpc folks implemented the compat wrapper for us. Signed-off-by: David S. Miller <davem@davemloft.net>
2006-11-03Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6Linus Torvalds
* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6: PCI: Let PCI_MULTITHREAD_PROBE depend on BROKEN PCI: Revert "PCI: i386/x86_84: disable PCI resource decode on device disable"
2006-11-03[PATCH] uml: include tidyingJeff Dike
In order to get the __NR_* constants, we need sys/syscall.h. linux/unistd.h works as well since it includes syscall.h, however syscall.h is more parsimonious. We were inconsistent in this, and this patch adds syscall.h includes where necessary and removes linux/unistd.h includes where they are not needed. asm/unistd.h also includes the __NR_* constants, but these are not the glibc-sanctioned ones, so this also removes one such inclusion. Signed-off-by: Jeff Dike <jdike@addtoit.com> Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-03[PATCH] uml: fix I/O hangJeff Dike
Fix a UML hang in which everything would just stop until some I/O happened - a ping, someone whacking the keyboard - at which point everything would start up again as though nothing had happened. The cause was gcc reordering some code which absolutely needed to be executed in the order in the source. When unblock_signals switches signals from off to on, it needs to see if any interrupts had happened in the critical section. The interrupt handlers check signals_enabled - if it is zero, then the handler adds a bit to the "pending" bitmask and returns. unblock_signals checks this mask to see if any signals need to be delivered. The crucial part is this: signals_enabled = 1; save_pending = pending; if(save_pending == 0) return; pending = 0; In order to avoid an interrupt arriving between reading pending and setting it to zero, in which case, the record of the interrupt would be erased, signals are enabled. What happened was that gcc reordered this so that 'save_pending = pending' came before 'signals_enabled = 1', creating a one-instruction window within which an interrupt could arrive, set its bit in pending, and have it be immediately erased. When the I/O workload is purely disk-based, the loss of a block device interrupt stops the entire I/O system because the next block request will wait for the current one to finish. Thus the system hangs until something else causes some I/O to arrive, such as a network packet or console input. The fix to this particular problem is a memory barrier between enabling signals and reading the pending signal mask. An xchg would also probably work. Looking over this code for similar problems led me to do a few more things: - make signals_enabled and pending volatile so that they don't get cached in registers - add an mb() to the return paths of block_signals and unblock_signals so that the modification of signals_enabled doesn't get shuffled into the caller in the event that these are inlined in the future. Signed-off-by: Jeff Dike <jdike@addtoit.com> Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-03[PATCH] acpi_noirq section fixAndrew Morton
WARNING: vmlinux - Section mismatch: reference to .init.data:acpi_noirq from .text between 'pcibios_penalize_isa_irq' (at offset 0xc026ffa1) and 'pirq_serverworks_get' Acked-by: "Brown, Len" <len.brown@intel.com> Cc: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-03[ARM] 3923/1: S3C24XX: update s3c2410_defconfig with new driversBen Dooks
Add the new drivers, such as SPI, LED and RTC core, to the s3c2410_defconfig. Signed-off-by: Ben Dooks <ben-linux@fluff.irg> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-11-03[ARM] 3922/1: S3C24XX: update s3c2410_defconfig to 2.6.19-rc4Ben Dooks
Update the s3c2410_defconfig to 2.6.19-rc4 Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-11-03[ARM] 3921/1: S3C24XX: remove bast_defconfigBen Dooks
Remove the bast_defconfig, as it has not been updated since 2.6.13. The s3c2410_defconfig should be a good replacement. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>