1. 18 6月, 2014 1 次提交
  2. 07 6月, 2014 2 次提交
    • R
      sysrq,rcu: suppress RCU stall warnings while sysrq runs · 722773af
      Rik van Riel 提交于
      Some sysrq handlers can run for a long time, because they dump a lot of
      data onto a serial console.  Having RCU stall warnings pop up in the
      middle of them only makes the problem worse.
      
      This patch temporarily disables RCU stall warnings while a sysrq request
      is handled.
      Signed-off-by: NRik van Riel <riel@redhat.com>
      Suggested-by: NPaul McKenney <paulmck@linux.vnet.ibm.com>
      Signed-off-by: NPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Cc: Madper Xie <cxie@redhat.com>
      Cc: Randy Dunlap <rdunlap@infradead.org>
      Cc: Richard Weinberger <richard@nod.at>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      722773af
    • R
      sysrq: rcu-ify __handle_sysrq · 984d74a7
      Rik van Riel 提交于
      Echoing values into /proc/sysrq-trigger seems to be a popular way to get
      information out of the kernel.  However, dumping information about
      thousands of processes, or hundreds of CPUs to serial console can result
      in IRQs being blocked for minutes, resulting in various kinds of cascade
      failures.
      
      The most common failure is due to interrupts being blocked for a very
      long time.  This can lead to things like failed IO requests, and other
      things the system cannot easily recover from.
      
      This problem is easily fixable by making __handle_sysrq use RCU instead
      of spin_lock_irqsave.
      
      This leaves the warning that RCU grace periods have not elapsed for a
      long time, but the system will come back from that automatically.
      
      It also leaves sysrq-from-irq-context when the sysrq keys are pressed,
      but that is probably desired since people want that to work in
      situations where the system is already hosed.
      
      The callers of register_sysrq_key and unregister_sysrq_key appear to be
      capable of sleeping.
      Signed-off-by: NRik van Riel <riel@redhat.com>
      Reported-by: NMadper Xie <cxie@redhat.com>
      Cc: Randy Dunlap <rdunlap@infradead.org>
      Cc: Richard Weinberger <richard@nod.at>
      Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      984d74a7
  3. 05 6月, 2014 1 次提交
  4. 03 6月, 2014 1 次提交
  5. 30 5月, 2014 7 次提交
  6. 29 5月, 2014 28 次提交