Linux 將不再預設啟用 AMD SME

2021-10-18 09:00:11

郵寄清單顯示,由於某些平臺上的缺點,Linux 核心將不再預設在支援的硬體上使用 AMD 安全記憶體加密 (SME)。

自從將 AMD SME 支援引入 Linux 核心以來,當核心中內建 SME 支援 (AMD_MEM_ENCRYPT) 時,安全記憶體加密都會預設啟用。"AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT" 的預設設定允許開箱即用地使用安全記憶體加密,而無需指定任何額外的核心引數等。然而,這導致了某些平臺上的啟動失敗,尤其是 IOMMU 以及一些圖形驅動程式,不希望對記憶體進行加密。

預設情況下不使用 AMD SME 的更改源於相關平臺問題 ,以及預設情況下嘗試 SME 可能導致的啟動失敗。不過,由於 SME 需要在核心啟動過程的早期階段啟用,至少目前不可能有增強的邏輯來以更健壯的方式確定何時可以在沒有使用者互動的情況下啟用/禁用 SME。

因此,隨著  進入 Linux 5.15,然後向後移植到以前的核心,AMD 記憶體加密將不會預設啟用。如果當前核心已經包含了 AMD 記憶體加密程式碼,則仍然可以通過設定 "mem_encrypt=on "選項來啟用安全記憶體加密。

展開閱讀全文