1. 13 10月, 2012 6 次提交
  2. 12 10月, 2012 9 次提交
    • K
      xen/bootup: allow {read|write}_cr8 pvops call. · 1a7bbda5
      Konrad Rzeszutek Wilk 提交于
      We actually do not do anything about it. Just return a default
      value of zero and if the kernel tries to write anything but 0
      we BUG_ON.
      
      This fixes the case when an user tries to suspend the machine
      and it blows up in save_processor_state b/c 'read_cr8' is set
      to NULL and we get:
      
      kernel BUG at /home/konrad/ssd/linux/arch/x86/include/asm/paravirt.h:100!
      invalid opcode: 0000 [#1] SMP
      Pid: 2687, comm: init.late Tainted: G           O 3.6.0upstream-00002-gac264ac-dirty #4 Bochs Bochs
      RIP: e030:[<ffffffff814d5f42>]  [<ffffffff814d5f42>] save_processor_state+0x212/0x270
      
      .. snip..
      Call Trace:
       [<ffffffff810733bf>] do_suspend_lowlevel+0xf/0xac
       [<ffffffff8107330c>] ? x86_acpi_suspend_lowlevel+0x10c/0x150
       [<ffffffff81342ee2>] acpi_suspend_enter+0x57/0xd5
      
      CC: stable@vger.kernel.org
      Signed-off-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      1a7bbda5
    • K
      xen/bootup: allow read_tscp call for Xen PV guests. · cd0608e7
      Konrad Rzeszutek Wilk 提交于
      The hypervisor will trap it. However without this patch,
      we would crash as the .read_tscp is set to NULL. This patch
      fixes it and sets it to the native_read_tscp call.
      
      CC: stable@vger.kernel.org
      Signed-off-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      cd0608e7
    • J
      kgdb,x86: fix warning about unused variable · 42c12213
      Jason Wessel 提交于
      When compiling without CONFIG_DEBUG_RODATA the following
      compiler warning is generated:
      
      arch/x86/kernel/kgdb.c: In function 'kgdb_arch_set_breakpoint':
      arch/x86/kernel/kgdb.c:749: warning: unused variable 'opc'
      
      The variable instantiation needs to be inside the #ifdef to
      make the warning go away.
      Reported-by: NThiago Rafael Becker <trbecker@trbecker.org>
      Signed-off-by: NJason Wessel <jason.wessel@windriver.com>
      42c12213
    • J
      mips,kgdb: fix recursive page fault with CONFIG_KPROBES · f0a996ee
      Jason Wessel 提交于
      This fault was detected using the kgdb test suite on boot and it
      crashes recursively due to the fact that CONFIG_KPROBES on mips adds
      an extra die notifier in the page fault handler.  The crash signature
      looks like this:
      
      kgdbts:RUN bad memory access test
      KGDB: re-enter exception: ALL breakpoints killed
      Call Trace:
      [<807b7548>] dump_stack+0x20/0x54
      [<807b7548>] dump_stack+0x20/0x54
      
      The fix for now is to have kgdb return immediately if the fault type
      is DIE_PAGE_FAULT and allow the kprobe code to decide what is supposed
      to happen.
      
      Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Cc: David S. Miller <davem@davemloft.net>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NJason Wessel <jason.wessel@windriver.com>
      f0a996ee
    • A
      ppc: eeh_event should just use kthread_run() · ecf89e58
      Al Viro 提交于
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      ecf89e58
    • A
      alpha: get rid of switch_stack argument of do_work_pending() · cb450766
      Al Viro 提交于
      ... and now the asm glue side of that.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      cb450766
    • A
      alpha: don't bother passing switch_stack separately from regs · d9d0738a
      Al Viro 提交于
      It's needed only in setup_sigcontext() and it's always reg - <constant>;
      no point passing it all way down through the call chain.  This is just
      the signal.c side of that stuff; next will come the asm glue one...
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      d9d0738a
    • A
      alpha: take SIGPENDING/NOTIFY_RESUME loop into signal.c · 6972d6f2
      Al Viro 提交于
      Turn the slow side of work_pending into C function, including all
      the looping.  What we get out of that:
      	* we do _not_ call get_signal_to_deliver() with IRQs disabled
      anymore
      	* no need to save/restore volatiles on each pass if there
      turns to be more than one (unlikely, but still)
      	* all double-restart prevention is in C now.
      	* glue gets simpler.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      6972d6f2
    • A
      alpha: simplify TIF_NEED_RESCHED handling · 7721d3c2
      Al Viro 提交于
      In case we have both NEED_RESCHED and SIGPENDING/NOTIFY_RESUME,
      handle the latter first.  We'll get to original priorities in
      the next commit, but now that allows to simplify the treatment
      of NEED_RESCHED-only case nicely.  Namely, now there no need to
      preserve the data for restarts across the call of schedule() in
      $work_resched; we can get there only if we had either returned
      from syscall without SIGPENDING (in which case we should've
      had no restart-worthy return value and want no restarts) or
      already got through do_notify_resume() call (in which case we
      want no restarts anymore).  So we can just slap 0 into $19
      instead of preserving it (and $20).
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      7721d3c2
  3. 11 10月, 2012 4 次提交
  4. 10 10月, 2012 6 次提交
  5. 09 10月, 2012 15 次提交