diff options
| author | Maciej Wieczor-Retman <maciej.wieczor-retman@intel.com> | 2025-02-04 18:33:50 +0100 |
|---|---|---|
| committer | Dave Hansen <dave.hansen@linux.intel.com> | 2025-02-05 16:23:17 -0800 |
| commit | 63887c9f02030afd042c125052ad60680f7c21b2 (patch) | |
| tree | db54802ae1d194761849992d0fbf9d3b00aa5ec0 /kernel/module | |
| parent | x86/mm: Fix flush_tlb_range() when used for zapping normal PMDs (diff) | |
| download | linux-63887c9f02030afd042c125052ad60680f7c21b2.tar.gz linux-63887c9f02030afd042c125052ad60680f7c21b2.zip | |
x86: Compare physical instead of virtual PGD addresses
This is a preparatory patch for when pointers have tags in their
upper address bits. But it's a harmless change on its own.
The mm->pgd virtual address may be tagged because it came out of
the allocator at some point. The __va(read_cr3_pa()) address will
never be tagged (the tag bits are all 1's). A direct pointer value
comparison would fail if one is tagged and the other is not.
To fix this, just compare the physical addresses which are never
affected by tagging.
[ dhansen: subject and changelog munging ]
Signed-off-by: Maciej Wieczor-Retman <maciej.wieczor-retman@intel.com>
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Link: https://lore.kernel.org/all/fde443d0e67f76a51e7ab4e96647705840f53ddb.1738686764.git.maciej.wieczor-retman%40intel.com
Diffstat (limited to 'kernel/module')
0 files changed, 0 insertions, 0 deletions
