1. 27 3月, 2006 1 次提交
    • P
      powerpc: Unify the 32 and 64 bit idle loops · a0652fc9
      Paul Mackerras 提交于
      This unifies the 32-bit (ARCH=ppc and ARCH=powerpc) and 64-bit idle
      loops.  It brings over the concept of having a ppc_md.power_save
      function from 32-bit to ARCH=powerpc, which lets us get rid of
      native_idle().  With this we will also be able to simplify the idle
      handling for pSeries and cell.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      a0652fc9
  2. 23 3月, 2006 1 次提交
    • A
      [PATCH] more for_each_cpu() conversions · 394e3902
      Andrew Morton 提交于
      When we stop allocating percpu memory for not-possible CPUs we must not touch
      the percpu data for not-possible CPUs at all.  The correct way of doing this
      is to test cpu_possible() or to use for_each_cpu().
      
      This patch is a kernel-wide sweep of all instances of NR_CPUS.  I found very
      few instances of this bug, if any.  But the patch converts lots of open-coded
      test to use the preferred helper macros.
      
      Cc: Mikael Starvik <starvik@axis.com>
      Cc: David Howells <dhowells@redhat.com>
      Acked-by: NKyle McMartin <kyle@parisc-linux.org>
      Cc: Anton Blanchard <anton@samba.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Cc: Paul Mundt <lethal@linux-sh.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: William Lee Irwin III <wli@holomorphy.com>
      Cc: Andi Kleen <ak@muc.de>
      Cc: Christian Zankel <chris@zankel.net>
      Cc: Philippe Elie <phil.el@wanadoo.fr>
      Cc: Nathan Scott <nathans@sgi.com>
      Cc: Jens Axboe <axboe@suse.de>
      Cc: Eric Dumazet <dada1@cosmosbay.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      394e3902
  3. 22 3月, 2006 1 次提交
  4. 17 3月, 2006 1 次提交
  5. 08 3月, 2006 1 次提交
    • P
      powerpc: Fix various syscall/signal/swapcontext bugs · 1bd79336
      Paul Mackerras 提交于
      A careful reading of the recent changes to the system call entry/exit
      paths revealed several problems, plus some things that could be
      simplified and improved:
      
      * 32-bit wasn't testing the _TIF_NOERROR bit in the syscall fast exit
        path, so it was only doing anything with it once it saw some other
        bit being set.  In other words, the noerror behaviour would apply to
        the next system call where we had to reschedule or deliver a signal,
        which is not necessarily the current system call.
      
      * 32-bit wasn't doing the call to ptrace_notify in the syscall exit
        path when the _TIF_SINGLESTEP bit was set.
      
      * _TIF_RESTOREALL was in both _TIF_USER_WORK_MASK and
        _TIF_PERSYSCALL_MASK, which is odd since _TIF_RESTOREALL is only set
        by system calls.  I took it out of _TIF_USER_WORK_MASK.
      
      * On 64-bit, _TIF_RESTOREALL wasn't causing the non-volatile registers
        to be restored (unless perhaps a signal was delivered or the syscall
        was traced or single-stepped).  Thus the non-volatile registers
        weren't restored on exit from a signal handler.  We probably got
        away with it mostly because signal handlers written in C wouldn't
        alter the non-volatile registers.
      
      * On 32-bit I simplified the code and made it more like 64-bit by
        making the syscall exit path jump to ret_from_except to handle
        preemption and signal delivery.
      
      * 32-bit was calling do_signal unnecessarily when _TIF_RESTOREALL was
        set - but I think because of that 32-bit was actually restoring the
        non-volatile registers on exit from a signal handler.
      
      * I changed the order of enabling interrupts and saving the
        non-volatile registers before calling do_syscall_trace_leave; now we
        enable interrupts first.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      1bd79336
  6. 24 2月, 2006 1 次提交
  7. 20 2月, 2006 1 次提交
    • O
      [PATCH] powerpc: remove duplicate exports · 0728a2f9
      Olaf Hering 提交于
      A few symbols are exported twice, remove them from ppc_ksyms.c
      Remove users of sys_ctrler in arch/ppc/
      
      WARNING: vmlinux: duplicate symbol '__delay' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol '__up' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol '__down' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol '__down_interruptible' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'sys_ctrler' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'strncat' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'strncmp' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'strchr' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'strrchr' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'strnlen' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'strpbrk' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'memscan' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'strstr' previous definition was in vmlinux
      Signed-off-by: NOlaf Hering <olh@suse.de>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      0728a2f9
  8. 10 2月, 2006 3 次提交
  9. 08 2月, 2006 1 次提交
  10. 07 2月, 2006 1 次提交
  11. 15 1月, 2006 2 次提交
  12. 14 1月, 2006 2 次提交
    • P
      ppc: Remove duplicate export of get_wchan · 91f62a24
      Paul Mackerras 提交于
      The arch/powerpc version of process.c exports get_wchan itself.  When
      I moved ARCH=ppc over to using arch/powerpc/kernel/process.c the
      get_wchan export in arch/ppc/kernel/ppc_ksyms.c became redundant, so
      remove it.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      (cherry picked from 9871166ad692121d6b944159ef3f053570158ea8 commit)
      91f62a24
    • M
      [PATCH] powerpc/8xx: Use 8MB D-TLB's for kernel static mapping faults · 8f069b1a
      Marcelo Tosatti 提交于
      The following implements support for instantiation of 8MB D-TLB
      entries for the kernel direct virtual mapping on 8xx, thus reducing TLB
      space consumed for the kernel.
      
      Test used: writing 40MB from /dev/zero to file in ext2fs over 
      RAMDISK.
      
      $ time dd if=/dev/zero of=file bs=4k count=10000 
      
      VANILLA			8MB kernel data pages
      
      real    0m11.485s	real    0m11.267s
      user    0m0.218s        user    0m0.250s
      sys     0m8.939s	sys     0m9.108s
      
      real    0m11.518s	real    0m10.978s
      user    0m0.203s 	user    0m0.222s
      sys     0m9.585s	sys     0m9.138s
      
      real    0m11.554s	real    0m10.967s
      user    0m0.228s    	user    0m0.222s
      sys     0m9.497s	sys     0m9.127s
      
      real    0m11.633s	real	0m11.286s
      user    0m0.214s	user    0m0.196s
      sys     0m9.529s	sys     0m9.134s
      
      and averages for both:
      
      real	11.54750	real 11.12450
      
      Which is a 3.6% improvement in execution time. More improvement is
      expected for loads with larger kernel data footprint (real workloads).
      Signed-off-by: NMarcelo Tosatti <marcelo.tosatti@cyclades.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      8f069b1a
  13. 13 1月, 2006 2 次提交
  14. 12 1月, 2006 2 次提交
  15. 11 1月, 2006 1 次提交
    • V
      [PATCH] kdump: dynamic per cpu allocation of memory for saving cpu registers · cc571658
      Vivek Goyal 提交于
      - In case of system crash, current state of cpu registers is saved in memory
        in elf note format.  So far memory for storing elf notes was being allocated
        statically for NR_CPUS.
      
      - This patch introduces dynamic allocation of memory for storing elf notes.
        It uses alloc_percpu() interface.  This should lead to better memory usage.
      
      - Introduced based on Andi Kleen's and Eric W. Biederman's suggestions.
      
      - This patch also moves memory allocation for elf notes from architecture
        dependent portion to architecture independent portion.  Now crash_notes is
        architecture independent.  The whole idea is that size of memory to be
        allocated per cpu (MAX_NOTE_BYTES) can be architecture dependent and
        allocation of this memory can be architecture independent.
      Signed-off-by: NVivek Goyal <vgoyal@in.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      cc571658
  16. 10 1月, 2006 1 次提交
  17. 09 1月, 2006 10 次提交
  18. 07 1月, 2006 1 次提交
  19. 12 12月, 2005 1 次提交
  20. 30 11月, 2005 2 次提交
    • P
      [PATCH] ppc: fix floating point register corruption · 9f232a12
      Paolo Galtieri 提交于
      I recently discovered a bug on PPC which causes the floating point
      registers to get corrupted when CONFIG_PREEMPT=y.
      
      The problem occurred while running a multi threaded Java application that
      does floating point.  The problem could be reproduced in anywhere from 2 to
      6 hours.  With the patch I have included below it ran for over a week
      without failure.
      Signed-off-by: NPaolo Galtieri <pgaltieri@mvista.com>
      Cc: Kumar Gala <galak@gate.crashing.org>
      Cc: Matt Porter <mporter@kernel.crashing.org>
      Cc: Tom Rini <trini@kernel.crashing.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      9f232a12
    • P
      [PATCH] ppc: fix floating point register corruption · 8117ce76
      Paolo Galtieri 提交于
      I recently discovered a bug on PPC which causes the floating point
      registers to get corrupted when CONFIG_PREEMPT=y.
      
      The problem occurred while running a multi threaded Java application that
      does floating point.  The problem could be reproduced in anywhere from 2 to
      6 hours.  With the patch I have included below it ran for over a week
      without failure.
      Signed-off-by: NPaolo Galtieri <pgaltieri@mvista.com>
      Cc: Kumar Gala <galak@gate.crashing.org>
      Cc: Matt Porter <mporter@kernel.crashing.org>
      Cc: Tom Rini <trini@kernel.crashing.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      8117ce76
  21. 29 11月, 2005 1 次提交
  22. 18 11月, 2005 2 次提交
  23. 16 11月, 2005 1 次提交