aboutsummaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/export-to-sqlite.py
diff options
context:
space:
mode:
authorJike Song <[email protected]>2018-01-09 00:03:41 +0800
committerThomas Gleixner <[email protected]>2018-01-08 17:42:13 +0100
commit8d56eff266f3e41a6c39926269c4c3f58f881a8e (patch)
tree22e5e2bfac647c8068632c931fcbe24e189b429b /tools/perf/scripts/python/export-to-sqlite.py
parent262b6b30087246abf09d6275eb0c0dc421bcbe38 (diff)
x86/mm/pti: Remove dead logic in pti_user_pagetable_walk*()
The following code contains dead logic: 162 if (pgd_none(*pgd)) { 163 unsigned long new_p4d_page = __get_free_page(gfp); 164 if (!new_p4d_page) 165 return NULL; 166 167 if (pgd_none(*pgd)) { 168 set_pgd(pgd, __pgd(_KERNPG_TABLE | __pa(new_p4d_page))); 169 new_p4d_page = 0; 170 } 171 if (new_p4d_page) 172 free_page(new_p4d_page); 173 } There can't be any difference between two pgd_none(*pgd) at L162 and L167, so it's always false at L171. Dave Hansen explained: Yes, the double-test was part of an optimization where we attempted to avoid using a global spinlock in the fork() path. We would check for unallocated mid-level page tables without the lock. The lock was only taken when we needed to *make* an entry to avoid collisions. Now that it is all single-threaded, there is no chance of a collision, no need for a lock, and no need for the re-check. As all these functions are only called during init, mark them __init as well. Fixes: 03f4424f348e ("x86/mm/pti: Add functions to clone kernel PMDs") Signed-off-by: Jike Song <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]> Cc: Alan Cox <[email protected]> Cc: Andi Kleen <[email protected]> Cc: Tom Lendacky <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Tim Chen <[email protected]> Cc: Jiri Koshina <[email protected]> Cc: Dave Hansen <[email protected]> Cc: Borislav Petkov <[email protected]> Cc: Kees Cook <[email protected]> Cc: Andi Lutomirski <[email protected]> Cc: Linus Torvalds <[email protected]> Cc: Greg KH <[email protected]> Cc: David Woodhouse <[email protected]> Cc: Paul Turner <[email protected]> Cc: [email protected] Link: https://lkml.kernel.org/r/[email protected]
Diffstat (limited to 'tools/perf/scripts/python/export-to-sqlite.py')
0 files changed, 0 insertions, 0 deletions