AMD fTPM RNG的BUG使得Linus Torvalds不滿

導讀因為在 Ryzen 系統上對內核造成了困擾,Linus Torvalds 最近在郵件列表中表達了對 AMD fTPM 硬件隨機數生成器的不滿,并提出了禁用該功能的建議。

AMD fTPM RNG的BUG使得Linus Torvalds不滿AMD fTPM RNG的BUG使得Linus Torvalds不滿

因為在 Ryzen 系統上對內核造成了困擾,Linus Torvalds 最近在郵件列表中表達了對 AMD fTPM 硬件隨機數生成器的不滿,并提出了禁用該功能的建議。

據悉,AMD fTPM 的隨機數生成器近期引起了一些卡頓問題,最初影響的是 Windows 用戶,后續又波及到了?Linux?用戶。雖然針對此問題的修復已經推出并回溯至早期內核,但一些與 AMD fTPM RNG 相關的棘手問題仍未解決,部分用戶依然報告存在卡頓現象。

上周又有一份新的錯誤報告稱,在某些 AMD 平臺上使用 fTPM 可能會導致卡頓。此報告中其使用的 fTPM 固件版本是 0x3005700020005,這也是 Rembrand 平臺首次出現此類情況;現有的內核補丁并未起到幫助作用。

這不免引起了 Linus Torvalds 的憤怒,他在郵件列表中表示:

讓我們禁用愚蠢的 fTPM hwrnd。

也許在啟動時使用它來 “從不同的源收集熵”,但顯然它不應該在運行時使用。

為什么有人要使用這個破玩意兒,因為任何一臺據說修復了這個問題的機器(事實顯然并非如此),其 CPU rdrand 指令也不會出現問題?

如果你不信任 CPU rdrand 實現(它也有漏洞 - 參見 clear_rdrand_cpuid_bit () 和 x86_init_rdrand ()),為什么要信任引起更多問題的 fTPM 版本?所以我看不到說 “那個 fTPM 東西不起作用” 的任何缺點。即使它最終能夠工作,也有一些不比它差的替代品。

因此,我不認為直接說 "that fTPM thing is not working" 有什么不好。即使它將來能用,也有其他替代方案,不會比現在更糟。

并補充道:

因此,[使用 RDRAND 時出現問題] 聽起來不太可能,但誰知道呢...... Microcode 顯然可以做任何事情,至少最初的 fTPM 問題似乎是因為 BIOS 做了一些真正瘋狂的事情,如 SPI 閃存訪問。

我可以很容易地想象到 BIOS fTPM 代碼會使用一些絕對可怕的全局 “EFI synchronization” 鎖或其他東西,從而導致一些完全無關的隨機問題。

舉例來說,如果不是 fTPM hwrnd 代碼本身決定從 SPI 讀取某個隨機數,但它只是與 BIOS 涉及的其他內容進行序列化,我也不會感到驚訝。并非所有 BIOS 人員都以他們完全并行的可擴展代碼而聞名......

如果 CPU microcode 能做任何類似的事情,我會非常驚訝。而這也并非不可能 - 惠普公司就曾用 SMI 將時間戳計數器搞得一團糟,我可以想象他們 - 或其他人 - 也會對 rdrand 做同樣的事情。

但與 “EFI BIOS uses a one big lock approach” 相比,這聽起來確實不太可能。

因此 rdrand (尤其是 rdseed)可能相當慢,但我認為我們討論的是數百個 CPU 周期(也許是幾千個)。與我們從 fTPM 看到的卡頓報告完全不同。

希望在 Torvalds 的額外壓力下,將會有一些額外的明確性和修復方案來解決 Linux 下的 AMD fTPM 問題。

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/43060.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/43060.shtml
英文地址,請注明出處:http://en.pswp.cn/news/43060.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【【Verilog典型電路設計之FIFO設計】】

典型電路設計之FIFO設計 FIFO (First In First Out)是一種先進先出的數據緩存器,通常用于接口電路的數據緩存。與普通存儲器的區別是沒有外部讀寫地址線,可以使用兩個時鐘分別進行寫和讀操作。FIFO只能順序寫入數據和順序讀出數據&#xff0…

ThinkPHP中實現IP地址定位

在網站開發中,我們經常需要獲取用戶的地理位置信息以提供個性化的服務。一種常見的方法是通過IP地址定位。在本文中,我們將介紹如何在ThinkPHP框架中實現IP地址定位。 一、IP地址定位的基本原理 IP地址是Internet上的設備在網絡中的標識符。每個設備都有…

【從0開始學架構筆記】01 基礎架構

文章目錄 一、架構的定義1. 系統與子系統2. 模塊與組件3. 框架與架構4. 重新定義架構 二、架構設計的目的三、復雜度來源:高性能1. 單機復雜度2. 集群復雜度2.1 任務分配2.2 任務分解(微服務) 四、復雜度來源:高可用1. 計算高可用…

GitKraken保姆級圖文使用指南

前言 寫這篇文章的原因是組內的產品和美術同學,開始參與到git工作流中,但是網上又沒有找到一個比較詳細的使用教程,所以干脆就自己寫了一個[doge]。文章的內容比較基礎,介紹了Git內的一些基礎概念和基本操作,適合零基…

合并多個文本文件

使用 wxPython 模塊合并多個文本文件的博客。以下是一篇示例博客: C:\pythoncode\blog\txtmerge.py 在 Python 編程中,我們經常需要處理文本文件。有時候,我們可能需要將多個文本文件合并成一個文件,以便進行進一步的處理或分析。…

QT報表Limereport v1.5.35編譯及使用

1、編譯說明 下載后QT CREATER中打開limereport.pro然后直接編譯就可以了。編譯后結果如下圖: 一次編譯可以得到庫文件和DEMO執行程序。 2、使用說明 拷貝如下圖編譯后的lib目錄到自己的工程目錄中。 release版本的重新命名為librelease. PRO文件中配置 QT …

openpose姿態估計【學習筆記】

文章目錄 1、人體需要檢測的關鍵點2、Top-down方法3、Openpose3.1 姿態估計的步驟3.2 PAF(Part Affinity Fields)部分親和場3.3 制作PAF標簽3.4 PAF權值計算3.5 匹配方法 4、CPM(Convolutional Pose Machines)模型5、Openpose5.1 …

怎么修改圖片的分辨率?

怎么修改圖片的分辨率?很多人還不知道分辨率是什么意思,以為代表了圖片的清晰度,然而并不是這樣的,其實圖片的分辨率就是圖片尺寸大小的意思。修改圖片的分辨率即改變圖片的尺寸,通常以像素為單位表示。分辨率決定了圖…

【linux基礎(四)】對Linux權限的理解

💓博主CSDN主頁:杭電碼農-NEO💓 ? ?專欄分類:Linux從入門到開通? ? 🚚代碼倉庫:NEO的學習日記🚚 ? 🌹關注我🫵帶你學更多操作系統知識 ? 🔝🔝 Linux權限 1. 前言2. shell命…

八、Linux下,grep/wc/管道符/echo/重定向符/tail如何使用?

1、grep命令 (1)主要用于文件 (2)主要作用是“通過關鍵字,過濾文件行” (3)示例: 2、wc命令 (1)統計文件的行數、單詞數等 (2)示例…

react之路由的安裝與使用

一、路由安裝 路由官網2021.11月初,react-router 更新到 v6 版本。使用最廣泛的 v5 版本的使用 npm i react-router-dom5.3.0二、路由使用 2.1 路由的簡單使用 第一步 在根目錄下 創建 views 文件夾 ,用于放置路由頁面 films.js示例代碼 export default functio…

一文預覽 | 8 月 16 日 NVIDIA 在 WAVE SUMMIT深度學習開發者大會 2023精彩亮點搶先看!

由深度學習技術及應用國家工程研究中心主辦,百度飛槳和文心大模型承辦的 WAVE SUMMIT深度學習開發者大會2023,將于 8 月 16 日在北京與大家見面。NVIDIA 作為技術合作伙伴,將攜手百度飛槳參與這場技術盛會。 在這次大會中,NVIDIA…

Java 項目日志實例基礎:Log4j

點擊下方關注我,然后右上角點擊...“設為星標”,就能第一時間收到更新推送啦~~~ 介紹幾個日志使用方面的基礎知識。 1 Log4j 1、Log4j 介紹 Log4j(log for java)是 Apache 的一個開源項目,通過使用 Log4j,我…

RabbitMq交換機類型介紹

RabbitMq交換機類型介紹 在RabbitMq中,生產者的消息都是通過交換器來接收,然后再從交換器分發到不同的隊列,再由消費者從隊列獲取消息。這種模式也被成為“發布/訂閱”。 分發的過程中交換器類型會影響分發的邏輯。 直連交換機&#xff1a…

【計算機視覺|生成對抗】逐步增長的生成對抗網絡(GAN)以提升質量、穩定性和變化

本系列博文為深度學習/計算機視覺論文筆記,轉載請注明出處 標題:Progressive Growing of GANs for Improved Quality, Stability, and Variation 鏈接:[1710.10196] Progressive Growing of GANs for Improved Quality, Stability, and Vari…

神經網絡基礎-神經網絡補充概念-51-局部最優問題

概念 局部最優問題是在優化問題中常見的一個挑戰,特別是在高維、非凸、非線性問題中。局部最優問題指的是算法在優化過程中陷入了一個局部最小值點,而不是全局最小值點。這會導致優化算法在某個局部區域停止,而無法找到更好的解。 解決方案…

安防監控視頻云存儲平臺EasyNVR出現內核報錯的情況該如何解決?

安防視頻監控匯聚EasyNVR視頻集中存儲平臺,是基于RTSP/Onvif協議的安防視頻平臺,可支持將接入的視頻流進行全平臺、全終端分發,分發的視頻流包括RTSP、RTMP、HTTP-FLV、WS-FLV、HLS、WebRTC等格式。 近期有用戶聯系到我們,EasyNVR…

kafka集成篇

kafka的Java客戶端 生產者 1.引入依賴 <dependency><groupId>org.apache.kafka</groupId><artifactId>kafka-clients</artifactId><version>2.6.3</version></dependency>2.生產者發送消息的基本實現 /*** 消息的發送?*/ …

SAP 預留(Reservation)詳解

相信使用SAP的話&#xff0c;對SAP的SAP預留(Reservation)已經有所了解&#xff0c;而且經常使用作業的&#xff0c;并且在很多方案中都使用得到&#xff0c;下面我就簡單總結下我所了解的SAP預留(Reservation)&#xff0c;希望對一些需要幫助的人&#xff0c;有所指點。 首先…

分類預測 | MATLAB實現DRN深度殘差網絡多輸入分類預測

分類預測 | MATLAB實現DRN深度殘差網絡多輸入分類預測 目錄 分類預測 | MATLAB實現DRN深度殘差網絡多輸入分類預測預測效果基本介紹程序設計參考資料 預測效果 基本介紹 1.分類預測 | MATLAB實現DRN深度殘差網絡多輸入分類預測 2.代碼說明&#xff1a;MATLAB實現DRN深度殘差網絡…