A Linux 7.2 kernel javítja a PCIe-eszközöket 2,5 GT/s sebességre korlátozó hibát

Fontos hibajavítás érkezik a Linux 7.2 kernel PCI alrendszeréhez, amely bizonyos hot-plug helyzetekben indokolatlanul 2,5 GT/s (Gigatransfer/second) sebességre korlátozhatta a PCIe-kapcsolatot. A módosítás a kernel PCIe link-training kódját érinti, és egy 2023-ban bevezetett ideiglenes megoldást tesz biztonságosabbá, amely eredetileg a sikertelen PCIe link training problémák kezelése miatt került be.

A Linux 7.2 kernel javítja a PCIe-eszközöket 2,5 GT/s sebességre korlátozó hibát

A problémát a PCIe failed-link retraining mechanizmusa okozhatta, ami hibás vagy zajos linktanítási esemény után sebességkorlátot alkalmazott, amely bizonyos hot-plug versenyhelyzetekben az ezt követően csatlakoztatott eszközre is átöröklődhetett. Ennek következtében a PCIe-kapcsolat a szükségesnél alacsonyabb, 2,5 GT/s sebességen ragadhatott, ami nagy sávszélességet igénylő eszközöknél teljesítménycsökkenést okozhatott.

A javítás kiveszi a Vendor:Device ID alapú illesztést a kerülőmechanizmusból, és a 2,5 GT/s sebességkorlát feloldásakor nem támaszkodik a link aktuális állapotára, függetlenül attól, hogy a korlátot a kernelkód vagy korábban a firmware állította-e be. Ha az utolsó link-újratanítás sikertelen volt, a kernel visszaáll az eredetileg célzott linksebességre ahelyett, hogy a kapcsolat tartósan a legalacsonyabb PCIe-sebességen maradna.

A Linux 7.2 PCI-fejlesztési csomagja emellett bővíti a peer-to-peer DMA engedélyezési listáját: az Intel QAT, DSA és IAA gyorsítók bekerültek a P2PDMA whitelistbe, lehetővé téve, hogy bizonyos eszközök közvetlenül, a processzor és a rendszermemória megkerülésével mozgassanak adatot egymás között. Új hardvertámogatásként megjelenik az UltraRISC DP1000 PCIe vezérlő meghajtója is. A fennmaradó PCI-módosítások főként karbantartási javításokat, meghajtófrissítéseket és kisebb belső kódtisztításokat tartalmaznak.

További részletek a kapcsolódó pull requestben olvashatók.