On Mon, Apr 29, 2024 at 03:27:00PM +0300, Kirill A. Shutemov wrote: > The TDX guest platform takes one bit from the physical address to > indicate if the page is shared (accessible by VMM). This bit is not part > of the physical_mask and is not preserved during mprotect(). As a > result, the 'shared' bit is lost during mprotect() on shared mappings. > > _COMMON_PAGE_CHG_MASK specifies which PTE bits need to be preserved > during modification. AMD includes 'sme_me_mask' in the define to > preserve the 'encrypt' bit. > > To cover both Intel and AMD cases, include 'cc_mask' in > _COMMON_PAGE_CHG_MASK instead of 'sme_me_mask'. > > Reported-and-tested-by: Chris Oo <cho@xxxxxxxxxxxxx> > > Fixes: 41394e33f3a0 ("x86/tdx: Extend the confidential computing API to support TDX guests") > Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> > Signed-off-by: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx> > Reviewed-by: Rick Edgecombe <rick.p.edgecombe@xxxxxxxxx> > Reviewed-by: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@xxxxxxxxxxxxxxx> > Reviewed-by: Tom Lendacky <thomas.lendacky@xxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx > Link: https://lore.kernel.org/all/20240424082035.4092071-1-kirill.shutemov%40linux.intel.com > (cherry picked from commit a0a8d15a798be4b8f20aca2ba91bf6b688c6a640) > Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> Both backports now queued up, thanks. greg k-h