1. 26 3月, 2016 1 次提交
  2. 02 3月, 2016 1 次提交
    • T
      arch/hotplug: Call into idle with a proper state · fc6d73d6
      Thomas Gleixner 提交于
      Let the non boot cpus call into idle with the corresponding hotplug state, so
      the hotplug core can handle the further bringup. That's a first step to
      convert the boot side of the hotplugged cpus to do all the synchronization
      with the other side through the state machine. For now it'll only start the
      hotplug thread and kick the full bringup of the cpu.
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      Cc: linux-arch@vger.kernel.org
      Cc: Rik van Riel <riel@redhat.com>
      Cc: Rafael Wysocki <rafael.j.wysocki@intel.com>
      Cc: "Srivatsa S. Bhat" <srivatsa@mit.edu>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Arjan van de Ven <arjan@linux.intel.com>
      Cc: Sebastian Siewior <bigeasy@linutronix.de>
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Cc: Oleg Nesterov <oleg@redhat.com>
      Cc: Tejun Heo <tj@kernel.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Paul McKenney <paulmck@linux.vnet.ibm.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Paul Turner <pjt@google.com>
      Link: http://lkml.kernel.org/r/20160226182341.614102639@linutronix.deSigned-off-by: NThomas Gleixner <tglx@linutronix.de>
      fc6d73d6
  3. 21 1月, 2016 1 次提交
  4. 24 12月, 2015 1 次提交
  5. 05 12月, 2015 1 次提交
  6. 16 9月, 2015 2 次提交
    • T
      genirq: Remove irq argument from irq flow handlers · bd0b9ac4
      Thomas Gleixner 提交于
      Most interrupt flow handlers do not use the irq argument. Those few
      which use it can retrieve the irq number from the irq descriptor.
      
      Remove the argument.
      
      Search and replace was done with coccinelle and some extra helper
      scripts around it. Thanks to Julia for her help!
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      Cc: Julia Lawall <Julia.Lawall@lip6.fr>
      Cc: Jiang Liu <jiang.liu@linux.intel.com>
      bd0b9ac4
    • J
      metag: SMP: Fix 4KiB stack setup on secondary CPUs · 928df02b
      James Hogan 提交于
      Back in early 2008, 4KiB stack support was added to reduce memory
      consumption on workloads with lots of threads, using a separate IRQ
      stack per CPU to alleviate stack pressure. However the SMP code added a
      year and a half later didn't set up the IRQ stack when bringing up
      secondary CPUs, resulting in a crash when SMP is configured with 4KiB
      stacks, as soon as the first interrupt arrived on a secondary CPU.
      
      Fix with calls to irq_ctx_exit()/irq_ctx_exit() when bringing up/down a
      CPU.
      Signed-off-by: NJames Hogan <james.hogan@imgtec.com>
      Cc: linux-metag@vger.kernel.org
      928df02b
  7. 14 7月, 2015 1 次提交
  8. 13 4月, 2015 1 次提交
  9. 16 3月, 2015 1 次提交
  10. 12 3月, 2015 1 次提交
    • P
      metag: Use common outgoing-CPU-notification code · 490ab882
      Paul E. McKenney 提交于
      This commit removes the open-coded CPU-offline notification with new
      common code.  This change avoids calling scheduler code using RCU from
      an offline CPU that RCU is ignoring.  This commit is compatible with
      the existing code in not checking for timeout during a prior offline
      for a given CPU.
      Signed-off-by: NPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Cc: James Hogan <james.hogan@imgtec.com>
      Cc: <linux-metag@vger.kernel.org>
      490ab882
  11. 13 2月, 2015 1 次提交
    • A
      all arches, signal: move restart_block to struct task_struct · f56141e3
      Andy Lutomirski 提交于
      If an attacker can cause a controlled kernel stack overflow, overwriting
      the restart block is a very juicy exploit target.  This is because the
      restart_block is held in the same memory allocation as the kernel stack.
      
      Moving the restart block to struct task_struct prevents this exploit by
      making the restart_block harder to locate.
      
      Note that there are other fields in thread_info that are also easy
      targets, at least on some architectures.
      
      It's also a decent simplification, since the restart code is more or less
      identical on all architectures.
      
      [james.hogan@imgtec.com: metag: align thread_info::supervisor_stack]
      Signed-off-by: NAndy Lutomirski <luto@amacapital.net>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: "H. Peter Anvin" <hpa@zytor.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Kees Cook <keescook@chromium.org>
      Cc: David Miller <davem@davemloft.net>
      Acked-by: NRichard Weinberger <richard@nod.at>
      Cc: Richard Henderson <rth@twiddle.net>
      Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      Cc: Matt Turner <mattst88@gmail.com>
      Cc: Vineet Gupta <vgupta@synopsys.com>
      Cc: Russell King <rmk@arm.linux.org.uk>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Will Deacon <will.deacon@arm.com>
      Cc: Haavard Skinnemoen <hskinnemoen@gmail.com>
      Cc: Hans-Christian Egtvedt <egtvedt@samfundet.no>
      Cc: Steven Miao <realmz6@gmail.com>
      Cc: Mark Salter <msalter@redhat.com>
      Cc: Aurelien Jacquiot <a-jacquiot@ti.com>
      Cc: Mikael Starvik <starvik@axis.com>
      Cc: Jesper Nilsson <jesper.nilsson@axis.com>
      Cc: David Howells <dhowells@redhat.com>
      Cc: Richard Kuo <rkuo@codeaurora.org>
      Cc: "Luck, Tony" <tony.luck@intel.com>
      Cc: Geert Uytterhoeven <geert@linux-m68k.org>
      Cc: Michal Simek <monstr@monstr.eu>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Jonas Bonn <jonas@southpole.se>
      Cc: "James E.J. Bottomley" <jejb@parisc-linux.org>
      Cc: Helge Deller <deller@gmx.de>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Acked-by: Michael Ellerman <mpe@ellerman.id.au> (powerpc)
      Tested-by: Michael Ellerman <mpe@ellerman.id.au> (powerpc)
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Cc: Chen Liqin <liqin.linux@gmail.com>
      Cc: Lennox Wu <lennox.wu@gmail.com>
      Cc: Chris Metcalf <cmetcalf@ezchip.com>
      Cc: Guan Xuetao <gxt@mprc.pku.edu.cn>
      Cc: Chris Zankel <chris@zankel.net>
      Cc: Max Filippov <jcmvbkbc@gmail.com>
      Cc: Oleg Nesterov <oleg@redhat.com>
      Cc: Guenter Roeck <linux@roeck-us.net>
      Signed-off-by: NJames Hogan <james.hogan@imgtec.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      f56141e3
  12. 27 8月, 2014 1 次提交
  13. 06 8月, 2014 1 次提交
  14. 19 7月, 2014 1 次提交
  15. 18 7月, 2014 1 次提交
  16. 19 6月, 2014 1 次提交
  17. 30 4月, 2014 1 次提交
  18. 18 3月, 2014 1 次提交
  19. 17 3月, 2014 1 次提交
  20. 07 3月, 2014 2 次提交
  21. 06 1月, 2014 1 次提交
  22. 19 12月, 2013 1 次提交
  23. 06 12月, 2013 1 次提交
    • J
      smp, metag: kill SMP single function call interrupt · 1d61cf12
      Jiang Liu 提交于
      Commit 9a46ad6d "smp: make smp_call_function_many() use logic
      similar to smp_call_function_single()" has unified the way to handle
      single and multiple cross-CPU function calls. Now only one interrupt is
      needed for architecture specific code to support generic SMP function
      call interfaces, so kill the redundant single function call interrupt.
      Signed-off-by: NJiang Liu <liuj97@gmail.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Shaohua Li <shli@kernel.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Cc: Jiri Kosina <trivial@kernel.org>
      Signed-off-by: NJames Hogan <james.hogan@imgtec.com>
      1d61cf12
  24. 29 11月, 2013 1 次提交
    • J
      metag: smp: don't set irq regs in do_IPI() · 5a25f7bb
      James Hogan 提交于
      Since commit f6b30d32 (metag: kick: add missing irq_enter/exit to
      kick_handler()), the main kick_handler() function deals with setting and
      restoring the irq registers pointer. Therefore do_IPI() which is called
      indirectly from kick_handler() doesn't need to do that itself any
      longer. Therefore remove that code and do_IPI()'s pt_regs argument.
      Signed-off-by: NJames Hogan <james.hogan@imgtec.com>
      Cc: linux-metag@vger.kernel.org
      Cc: Thomas Gleixner <tglx@linutronix.de>
      5a25f7bb
  25. 25 11月, 2013 1 次提交
  26. 13 11月, 2013 1 次提交
  27. 06 11月, 2013 1 次提交
    • J
      metag: handle low level kicks directly · 95281171
      James Hogan 提交于
      Kick interrupts trigger the LWK (low level kick) signal, usually handled
      by the __TBIDoStdLWK() function which is the only handler inherited from
      the bootloader. The LWK signal is converted either to a SWK (plain
      software kick) or a SWS (software kick with an attached message).
      
      Linux has kick_handler() to handle SWK and call registered kick handlers
      (IPIs and inter-thread comms), but SWS is as far as I'm aware unused
      with Linux.
      
      Therefore remove that abstraction and have Linux handle LWK directly.
      This will reduce kick latency slightly, and reduce our dependence on the
      bootloader, which makes it easier to directly boot a kernel in QEMU
      (particularly for SMP).
      Signed-off-by: NJames Hogan <james.hogan@imgtec.com>
      95281171
  28. 10 10月, 2013 4 次提交
  29. 01 10月, 2013 1 次提交
    • F
      irq: Consolidate do_softirq() arch overriden implementations · 7d65f4a6
      Frederic Weisbecker 提交于
      All arch overriden implementations of do_softirq() share the following
      common code: disable irqs (to avoid races with the pending check),
      check if there are softirqs pending, then execute __do_softirq() on
      a specific stack.
      
      Consolidate the common parts such that archs only worry about the
      stack switch.
      Acked-by: NLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: NFrederic Weisbecker <fweisbec@gmail.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@au1.ibm.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: H. Peter Anvin <hpa@zytor.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Paul Mackerras <paulus@au1.ibm.com>
      Cc: James Hogan <james.hogan@imgtec.com>
      Cc: James E.J. Bottomley <jejb@parisc-linux.org>
      Cc: Helge Deller <deller@gmx.de>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Cc: David S. Miller <davem@davemloft.net>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      7d65f4a6
  30. 15 7月, 2013 1 次提交
    • P
      metag: delete __cpuinit usage from all metag files · 54be16e7
      Paul Gortmaker 提交于
      The __cpuinit type of throwaway sections might have made sense
      some time ago when RAM was more constrained, but now the savings
      do not offset the cost and complications.  For example, the fix in
      commit 5e427ec2 ("x86: Fix bit corruption at CPU resume time")
      is a good example of the nasty type of bugs that can be created
      with improper use of the various __init prefixes.
      
      After a discussion on LKML[1] it was decided that cpuinit should go
      the way of devinit and be phased out.  Once all the users are gone,
      we can then finally remove the macros themselves from linux/init.h.
      
      Note that some harmless section mismatch warnings may result, since
      notify_cpu_starting() and cpu_up() are arch independent (kernel/cpu.c)
      are flagged as __cpuinit  -- so if we remove the __cpuinit from
      arch specific callers, we will also get section mismatch warnings.
      As an intermediate step, we intend to turn the linux/init.h cpuinit
      content into no-ops as early as possible, since that will get rid
      of these warnings.  In any case, they are temporary and harmless.
      
      This removes all the arch/metag uses of the __cpuinit macros from
      all C files.  Currently metag does not have any __CPUINIT used in
      assembly files.
      
      [1] https://lkml.org/lkml/2013/5/20/589
      
      Cc: James Hogan <james.hogan@imgtec.com>
      Acked-by: NJames Hogan <james.hogan@imgtec.com>
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      54be16e7
  31. 04 7月, 2013 1 次提交
    • J
      metag: move EXPORT_SYMBOL(csum_partial) to metag_ksyms.c · c20eb0f1
      James Hogan 提交于
      Move EXPORT_SYMBOL(csum_partial) from lib/checksum.c into metag_ksyms.c
      so that it doesn't get omitted by the static linker if it's not used by
      any other statically linked code, which can result in undefined symbols
      when building modules.
      
      For example a randconfig caused the following error:
      ERROR: "csum_partial" [fs/reiserfs/reiserfs.ko] undefined!
      Signed-off-by: NJames Hogan <james.hogan@imgtec.com>
      c20eb0f1
  32. 02 7月, 2013 4 次提交