]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit
x86/entry/traps: Don't force in_interrupt() to return true in IST handlers
authorAndy Lutomirski <luto@kernel.org>
Tue, 24 May 2016 22:54:04 +0000 (15:54 -0700)
committerKamal Mostafa <kamal@canonical.com>
Wed, 13 Jul 2016 15:59:07 +0000 (08:59 -0700)
commit3c9e1c28e67d4dab4db5ad5b2facec7736255b86
treed4f6158d8c285da656d0eeede9d784bc33bc3fd1
parent56740f3459300de4d11a2caf05223ec1ff2052b0
x86/entry/traps: Don't force in_interrupt() to return true in IST handlers

BugLink: http://bugs.launchpad.net/bugs/1596575
commit aaee8c3c5cce2d9107310dd9f3026b4f901d441c upstream.

Forcing in_interrupt() to return true if we're not in a bona fide
interrupt confuses the softirq code.  This fixes warnings like:

  NOHZ: local_softirq_pending 282

... which can happen when running things like selftests/x86.

This will change perf's static percpu buffer usage in IST context.
I think this is okay, and it's changing the behavior to match
historical (pre-4.0) behavior.

Signed-off-by: Andy Lutomirski <luto@kernel.org>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Fixes: 959274753857 ("x86, traps: Track entry into and exit from IST context")
Link: http://lkml.kernel.org/r/cdc215f94d118d691d73df35275022331156fb45.1464130360.git.luto@kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
arch/x86/kernel/traps.c