diff options
author | Zhenzhong Duan <[email protected]> | 2018-07-02 23:49:54 -0700 |
---|---|---|
committer | Ingo Molnar <[email protected]> | 2018-07-03 09:26:10 +0200 |
commit | 4fb5f58e8d191f7c81637ad81284e4848afb4244 (patch) | |
tree | f2b0d0f92b021ee79e4ec4cf44c4c2697958096b /tools/perf/util/scripting-engines/trace-event-python.c | |
parent | 021c91791a5e7e85c567452f1be3e4c2c6cb6063 (diff) |
x86/mm/32: Initialize the CR4 shadow before __flush_tlb_all()
On 32-bit kernels, __flush_tlb_all() may have read the CR4 shadow before the
initialization of CR4 shadow in cpu_init().
Fix it by adding an explicit cr4_init_shadow() call into start_secondary()
which is the first function called on non-boot SMP CPUs - ahead of the
__flush_tlb_all() call.
( This is somewhat of a layering violation, but start_secondary() does
CR4 bootstrap in the PCID case anyway. )
Signed-off-by: Zhenzhong Duan <[email protected]>
Cc: Andy Lutomirski <[email protected]>
Cc: Borislav Petkov <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: "H. Peter Anvin" <[email protected]>
Link: http://lkml.kernel.org/r/b07b6ae9-4b57-4b40-b9bc-50c2c67f1d91@default
Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'tools/perf/util/scripting-engines/trace-event-python.c')
0 files changed, 0 insertions, 0 deletions