On Fri, Jun 13, 2025 at 11:27:00AM +0200, David Hildenbrand wrote:
We setup the cache mode but ... don't forward the updated pgprot to insert_pfn_pud().
Only a problem on x86-64 PAT when mapping PFNs using PUDs that require a special cachemode.
Fix it by using the proper pgprot where the cachemode was setup.
It is unclear in which configurations we would get the cachemode wrong: through vfio seems possible. Getting cachemodes wrong is usually ... bad. As the fix is easy, let's backport it to stable.
Identified by code inspection.
Fixes: 7b806d229ef1 ("mm: remove vmf_insert_pfn_xxx_prot() for huge page-table entries") Reviewed-by: Dan Williams dan.j.williams@intel.com Reviewed-by: Lorenzo Stoakes lorenzo.stoakes@oracle.com Reviewed-by: Jason Gunthorpe jgg@nvidia.com Tested-by: Dan Williams dan.j.williams@intel.com Cc: stable@vger.kernel.org Signed-off-by: David Hildenbrand david@redhat.com
Reviewed-by: Oscar Salvador osalvador@suse.de