A PCI alrendszer-frissítések benyújtásra kerültek a folyamatban lévő Linux 6.5-ös fejlesztéshez.

A Linux 6.5 PCI/PCIe változásai nem tartalmaznak különösebb izgalmas funkciókat, de számos alacsony szintű fejlesztés történt a kernelben ezen a területen. Konkrétan, ebben a ciklusban történt néhány javítás a PCI(e) eszközökön való várakozással töltött idő csökkentésére.

Az Intel Mika Westerbergjének köszönhetően a pci_bridge_wait_for_secondary_bus() kernelfüggvény kevesebb időt tölt a lassú PCIe kapcsolatok létrehozására várva. Mika a javításban kifejtette:

“Lassú linkeknél (=5GT/s) az aktív linkjelentés nem kötelező, így ha egy eszközt lekapcsolnak a rendszer alvó állapotában, előfordulhat, hogy megvárjuk, amíg A PCIe spec r6.0 sec 6.6.1 előírja, hogy a rendszerszoftvernek legalább 1 másodpercet várnia kell, mielőtt megszakadt eszközként tudja megállapítani az eszközt, ezért használja a minimális követelményt a lassú kapcsolatokhoz, és mentse ki, ha nem kapunk választ 1 másodpercen belül. Ha azonban a port támogatja az aktív linkjelentést, folytathatjuk a várakozást a gyors linkekkel végzett műveletek után.

Ez a lassú hivatkozások esetén is gyorsabbá teszi a rendszer újraindítási idejét, miközben továbbra is követi a PCIe specifikáció.”

Van egy másik változás, amelyet a PCIe link betanítási hibák okoztak, amelyek különösen az ASMedia ASM2824 vezérlőknél fordulnak elő. Maciej Rozycki a következőket magyarázta:

“Egy PCIe link képzési jelenség, amikor egy pár eszköz, amely képes 2,5 GT/s feletti kapcsolati sebességgel működni, úgy tűnik, nem képes megegyezni a kapcsolati sebességgel, és határozatlan ideig folytatja az edzést a Link Training bit ismételten be-és kikapcsol, és az adatkapcsolati réteg soha nem éri el az aktív állapotot.”

Tehát a link betanítás először 2,5 GT/s sebességgel történik, majd nagyobb sebességgel próbálja elkerülni ezek összekapcsolják a képzési hibákat, amelyek egyes vezérlőket sújtanak.
A Linux 6.5 külön, de továbbra is ennek a PCI-lehívási kérésnek a részeként új késleltetést vezetett be, ha a Solidigm P44 Pro NVMe SSD-vel PCI funkciószintű visszaállítást (FLR) hajt végre. A KVM lefagyása jelenleg akkor fordulhat elő, ha egy Soldigim P44 Pro NVMe SSD-t használ, amelyet az IOMMU-n keresztül továbbítottak egy vendég virtuális géphez, majd újraindítják a KVM vendéget. De 250 ms-os késleltetés hozzáadása a PCI FLR után ehhez a bizonyos NVMe szilárdtestalapú meghajtóhoz megoldja a problémát. Érdekes módon ez a probléma bizonyos Intel DC SSD-knél is előfordult. Az Intel leválasztotta NAND-és SSD-üzletágát, amely végül Solidigmmé vált, és úgy tűnik, hogy ez a probléma továbbra is érint néhány új eszközt.

A Linux 6.5 egyéb PCI-módosításaival kapcsolatos további részletek a lehívási kérelemben találhatók.

Categories: IT Info