diff options
author | Andy Lutomirski <[email protected]> | 2016-04-26 09:39:09 -0700 |
---|---|---|
committer | Ingo Molnar <[email protected]> | 2016-04-28 11:44:20 +0200 |
commit | 078194f8e9fe3cf54c8fd8bded48a1db5bd8eb8a (patch) | |
tree | de2964b8d5cf0dd61582b08c93f3fe28beb0ab59 /tools/perf/scripts/python/export-to-postgresql.py | |
parent | 69c0319aabba45bcf33178916a2f06967b4adede (diff) |
x86/mm, sched/core: Turn off IRQs in switch_mm()
Potential races between switch_mm() and TLB-flush or LDT-flush IPIs
could be very messy. AFAICT the code is currently okay, whether by
accident or by careful design, but enabling PCID will make it
considerably more complicated and will no longer be obviously safe.
Fix it with a big hammer: run switch_mm() with IRQs off.
To avoid a performance hit in the scheduler, we take advantage of
our knowledge that the scheduler already has IRQs disabled when it
calls switch_mm().
Signed-off-by: Andy Lutomirski <[email protected]>
Reviewed-by: Borislav Petkov <[email protected]>
Cc: Borislav Petkov <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Link: http://lkml.kernel.org/r/f19baf759693c9dcae64bbff76189db77cb13398.1461688545.git.luto@kernel.org
Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions