1. 17 2月, 2010 3 次提交
  2. 09 2月, 2010 4 次提交
  3. 08 2月, 2010 1 次提交
    • M
      powerpc/pseries: Fix kexec regression caused by CPPR tracking · 36350e00
      Mark Nelson 提交于
      The code to track the CPPR values added by commit
      49bd3647 ("powerpc/pseries: Track previous
      CPPR values to correctly EOI interrupts") broke kexec on pseries because
      the kexec code in xics.c calls xics_set_cpu_priority() before the IPI has
      been EOI'ed. This wasn't a problem previously but it now triggers a BUG_ON
      in xics_set_cpu_priority() because os_cppr->index isn't 0.
      
      Fix this problem by setting the index on the CPPR stack to 0 before calling
      xics_set_cpu_priority() in xics_teardown_cpu().
      
      Also make it clear that we only want to set the priority when there's just
      one CPPR value in the stack, and enforce it by updating the value of
      os_cppr->stack[0] rather than os_cppr->stack[os_cppr->index].
      
      While we're at it change the BUG_ON to a WARN_ON.
      Reported-by: NAnton Blanchard <anton@samba.org>
      Signed-off-by: NMark Nelson <markn@au1.ibm.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      36350e00
  4. 01 2月, 2010 1 次提交
  5. 15 1月, 2010 3 次提交
  6. 18 12月, 2009 4 次提交
    • G
      powerpc/pseries: Make declarations of cpu_hotplug_driver_lock() ANSI compatible. · 3d9b740b
      Gautham R Shenoy 提交于
      And add the __acquires() and __releases() annotations, while at it.
      Signed-off-by: NGautham R Shenoy <ego@in.ibm.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      3d9b740b
    • G
      powerpc/pseries: Don't panic when H_PROD fails during cpu-online. · e9edb232
      Gautham R Shenoy 提交于
      If an online-attempt on a CPU which has been offlined using H_CEDE
      with an appropriate cede latency hint fails, don't panic.
      
      Instead print the error message and let the __cpu_up() code notify the
      CPU Hotplug framework of the failure, which in turn can notify the
      other subsystem through CPU_UP_CANCELED.
      Signed-off-by: NGautham R Shenoy <ego@in.ibm.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      e9edb232
    • M
      powerpc/pseries: Select XICS and PCI_MSI PSERIES · 8a55c4ba
      Mel Gorman 提交于
      It's possible to set CONFIG_XICS without CONFIG_PCI_MSI. When that happens,
      the kernel fails to build with
      
      arch/powerpc/platforms/built-in.o: In function `.xics_startup':
      xics.c:(.text+0x12f60): undefined reference to `.unmask_msi_irq' make: ***
      [.tmp_vmlinux1] Error 1
      
      Furthermore, as noted by Benjamin Herrenschmidt, "CONFIG_XICS should be
      made invisible and selected by PSERIES."
      
      This patch fixes PSERIES to select both options
      
      Signed-off-by: Mel Gorman <mel[at]csn.ul.ie>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      8a55c4ba
    • R
      powerpc: Make the CMM memory hotplug aware · 14b8a76b
      Robert Jennings 提交于
      The Collaborative Memory Manager (CMM) module allocates individual pages
      over time that are not migratable.  On a long running system this can
      severely impact the ability to find enough pages to support a hotplug
      memory remove operation.
      
      This patch adds a memory isolation notifier and a memory hotplug notifier.
      The memory isolation notifier will return the number of pages found in
      the range specified.  This is used to determine if all of the used pages
      in a pageblock are owned by the balloon (or other entities in the notifier
      chain).  The hotplug notifier will free pages in the range which is to be
      removed.  The priority of this hotplug notifier is low so that it will be
      called near last, this helps avoids removing loaned pages in operations
      that fail due to other handlers.
      
      CMM activity will be halted when hotplug remove operations are active and
      resume activity after a delay period to allow the hypervisor time to
      adjust.
      Signed-off-by: NRobert Jennings <rcj@linux.vnet.ibm.com>
      Cc: Mel Gorman <mel@csn.ul.ie>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Brian King <brking@linux.vnet.ibm.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Gerald Schaefer <geralds@linux.vnet.ibm.com>
      Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      14b8a76b
  7. 15 12月, 2009 1 次提交
  8. 09 12月, 2009 7 次提交
  9. 24 11月, 2009 3 次提交
  10. 05 11月, 2009 1 次提交
  11. 30 10月, 2009 5 次提交
  12. 29 10月, 2009 1 次提交
    • T
      percpu: make percpu symbols in powerpc unique · 6b7487fc
      Tejun Heo 提交于
      This patch updates percpu related symbols in powerpc such that percpu
      symbols are unique and don't clash with local symbols.  This serves
      two purposes of decreasing the possibility of global percpu symbol
      collision and allowing dropping per_cpu__ prefix from percpu symbols.
      
      * arch/powerpc/kernel/perf_callchain.c: s/callchain/cpu_perf_callchain/
      
      * arch/powerpc/kernel/setup-common.c: s/pvr/cpu_pvr/
      
      * arch/powerpc/platforms/pseries/dtl.c: s/dtl/cpu_dtl/
      
      * arch/powerpc/platforms/cell/interrupt.c: s/iic/cpu_iic/
      
      Partly based on Rusty Russell's "alloc_percpu: rename percpu vars
      which cause name clashes" patch.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Acked-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: linuxppc-dev@ozlabs.org
      6b7487fc
  13. 28 10月, 2009 2 次提交
  14. 14 10月, 2009 1 次提交
    • A
      powerpc: Fix hypervisor TLB batching · b6dcde5c
      Anton Blanchard 提交于
      Profiling of a page fault scalability microbenchmark shows flush_hash_range
      is not calling the batch hpte invalidate hcall (H_BULK_REMOVE).
      
      It turns out we have a duplicate firmware feature for hcall-bulk and the
      current setup code stops after finding the first match. This meant we never
      batch and always do individual invalidates.
      
      The patch below removes the duplicate and shifts FW_FEATURE_CMO to close
      the gap. With the patch applied the single threaded page fault rate improves
      from 217169 to 238755 per second on a POWER5 test box, a 10% improvement.
      Signed-off-by: NAnton Blanchard <anton@samba.org>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      b6dcde5c
  15. 02 10月, 2009 1 次提交
  16. 24 9月, 2009 2 次提交