郵件列表顯示,由于某些平臺上的缺點,linux 內(nèi)核將不再默認(rèn)在支持的硬件上使用 AMD 安全內(nèi)存加密 (SME)。
自從將 AMD SME 支持引入 Linux 內(nèi)核以來,當(dāng)內(nèi)核中內(nèi)置 SME 支持 (AMD_MEM_ENCRYPT) 時,安全內(nèi)存加密都會默認(rèn)激活。"AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT" 的默認(rèn)設(shè)置允許開箱即用地使用安全內(nèi)存加密,而無需指定任何額外的內(nèi)核參數(shù)等。然而,這導(dǎo)致了某些平臺上的啟動失敗,尤其是 IOMMU 以及一些圖形驅(qū)動程序,不希望對內(nèi)存進(jìn)行加密。
默認(rèn)情況下不使用 AMD SME 的更改源于相關(guān)平臺問題 Raven Ridge,以及默認(rèn)情況下嘗試 SME 可能導(dǎo)致的啟動失敗。不過,由于 SME 需要在內(nèi)核啟動過程的早期階段啟用,至少目前不可能有增強的邏輯來以更健壯的方式確定何時可以在沒有用戶交互的情況下啟用/禁用 SME。
因此,隨著 x86/urgent pr 進(jìn)入 Linux 5.15,然后向后移植到以前的內(nèi)核,AMD 內(nèi)存加密將不會默認(rèn)啟用。如果當(dāng)前內(nèi)核已經(jīng)包含了 AMD 內(nèi)存加密代碼,則仍然可以通過設(shè)置 "mem_encrypt=on "選項來啟用安全內(nèi)存加密。
綜上所述:大家如果對自己系統(tǒng)有什么特殊要求的,一定記得要修改系統(tǒng)的默認(rèn)值,否則會有一些意外安全問題!