999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

服務(wù)器啟動(dòng)過程檢測(cè)PCIe設(shè)備丟失及恢復(fù)的功能實(shí)現(xiàn)

2024-01-24 08:52:09鄭媛康艷麗孫建英
電腦知識(shí)與技術(shù) 2023年34期
關(guān)鍵詞:恢復(fù)

鄭媛 康艷麗 孫建英

摘要:在服務(wù)器系統(tǒng)中,PCIe設(shè)備已成為不可或缺的組成部分,由于各種原因,會(huì)遇到非常低概率的PCIe設(shè)備在啟動(dòng)過程丟失問題,對(duì)服務(wù)器的正常運(yùn)行造成嚴(yán)重的影響。服務(wù)器啟動(dòng)過程的檢測(cè)PCIe設(shè)備丟失及恢復(fù)的功能,通過檢測(cè)PCIe設(shè)備在啟動(dòng)過程中的鏈路訓(xùn)練結(jié)果,實(shí)現(xiàn)對(duì)設(shè)備丟失情況的監(jiān)測(cè),并在發(fā)現(xiàn)設(shè)備丟失時(shí)采取相應(yīng)的恢復(fù)措施,經(jīng)實(shí)驗(yàn)驗(yàn)證,該方法可以有效提高服務(wù)器的運(yùn)行穩(wěn)定性和可靠性,避免因PCIe設(shè)備丟失而造成的損失。

關(guān)鍵詞:服務(wù)器;啟動(dòng)過程;PCIe;丟失檢測(cè);恢復(fù)

中圖分類號(hào):TP306? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A

文章編號(hào):1009-3044(2023)34-0091-03

開放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID)

0 引言

隨著云計(jì)算和大數(shù)據(jù)的快速發(fā)展,數(shù)據(jù)中心服務(wù)器數(shù)量呈爆發(fā)式增長(zhǎng)。PCIe設(shè)備是服務(wù)器中的重要組成部分,PCIe千兆萬兆網(wǎng)卡設(shè)備支撐大型局域網(wǎng);PCIe磁盤陣列卡提高了存儲(chǔ)容量及存儲(chǔ)性能;圖形處理器GPU提供了更強(qiáng)大的圖片處理能力;還有HBA[1]卡,HCA[2]卡,固態(tài)硬盤(NVMe) ,新興的智能網(wǎng)卡[3](SmartNIC) 等。它們的穩(wěn)定性對(duì)服務(wù)器的正常運(yùn)行有著至關(guān)重要的影響。然而,由于各種原因,如硬件故障、驅(qū)動(dòng)程序錯(cuò)誤或兼容性問題等,PCIe設(shè)備可能會(huì)出現(xiàn)丟失情況,一旦發(fā)生將嚴(yán)重影響系統(tǒng)的穩(wěn)定性和可靠性。

在服務(wù)器的硬件系統(tǒng)中,UEFI平臺(tái)是一種新的固件接口標(biāo)準(zhǔn),取代了傳統(tǒng)的BIOS,實(shí)現(xiàn)開機(jī)啟動(dòng)過程對(duì)服務(wù)器主板上硬件以及各種輸入輸出設(shè)備的初始化、設(shè)備驅(qū)動(dòng)程序和配置管理程序等,為計(jì)算機(jī)提供最底層的硬件設(shè)置和控制,可以為PCIe設(shè)備的故障檢測(cè)提供最直接信息,為故障恢復(fù)提供最快速的修復(fù)方法。

1 啟動(dòng)過程中PCIe設(shè)備檢測(cè)現(xiàn)狀

目前,在服務(wù)器啟動(dòng)過程中,UEFI固件代碼會(huì)檢測(cè)PCIe設(shè)備降速降帶寬故障和AER錯(cuò)誤,使用封裝的IPMI命令,通過服務(wù)器主板上帶外管理固件BMC (Baseboard Management Controller,基板管理控制器)連接的KCS[4]接口,將PCIe故障上報(bào)給BMC,記錄故障信息到BMC SEL[5]日志中。但是,啟動(dòng)過程沒有及時(shí)預(yù)警或上報(bào)PCIe設(shè)備丟失情況,多數(shù)情況都是啟動(dòng)到系統(tǒng)下才能發(fā)現(xiàn)有PCIe設(shè)備丟失故障。啟動(dòng)過程中的低概率PCIe設(shè)備丟失問題由于發(fā)生概率比較低,分析驗(yàn)證耗時(shí)長(zhǎng),收效甚微,對(duì)服務(wù)器生產(chǎn)和用戶運(yùn)維都會(huì)有很大影響。因此,如何快速準(zhǔn)確地檢測(cè)低概率PCIe設(shè)備的丟失情況并采取相應(yīng)的恢復(fù)措施成為一個(gè)重要的問題。

2 啟動(dòng)過程中PCIe設(shè)備丟失原因分析

在服務(wù)器啟動(dòng)過程,PCIe設(shè)備丟失問題多數(shù)跟PCIe鏈路訓(xùn)練[6](Link Training) 出現(xiàn)問題有關(guān)。PCIe設(shè)備的鏈路訓(xùn)練是由PCIe鏈路物理層[7]的鏈路訓(xùn)練狀態(tài)機(jī)(LTSSM[8]) 自動(dòng)完成,PCIe鏈路雙方通過自動(dòng)協(xié)商鏈路速率和帶寬,調(diào)節(jié)發(fā)送和接收參數(shù),從而使得PCIe鏈路達(dá)到最佳信號(hào)質(zhì)量。

以英特爾X86服務(wù)器為例,最新X86服務(wù)器處理器集成IO(Integrated IO,以下簡(jiǎn)稱IIO) 提供PCIe根端口,可以配置X2,X4,X8,X16等帶寬,提供GEN1、GEN2、GEN3、GEN4、GEN5速率支持。UEFI固件中的英特爾參考代碼IIO的初始化部分,分為IIO早期鏈路訓(xùn)練和IIO后期鏈路訓(xùn)練兩個(gè)階段。IIO早期鏈路訓(xùn)練階段之前,UEFI固件先要根據(jù)主板硬件設(shè)計(jì),主要配置IIO PCIe根端口的帶寬,IIO早期鏈路訓(xùn)練階段,為PCIe根端口在鏈接訓(xùn)練之前進(jìn)行鏈路時(shí)鐘,鏈路均衡值等相關(guān)寄存器設(shè)置,啟動(dòng)PCIe根端口的鏈接訓(xùn)練。IIO后期鏈路訓(xùn)練階段開始時(shí),所有PCIe的根端口鏈路訓(xùn)練已經(jīng)完成,該階段主要任務(wù)是為PCIe設(shè)備枚舉、資源分配及加載驅(qū)動(dòng)程序之前配置所有PCIe接口,初始化IIO DMI和PCIe根端口相關(guān)PCI配置空間寄存器。

在IIO后期鏈路訓(xùn)練階段開始時(shí),輪詢所有IIO PCIe根端口,檢查鏈路狀態(tài)。讀取PCIe根端口配置空間鏈路狀態(tài)寄存器(Link Status Register) ,如果檢查到bit[3:0]當(dāng)前鏈路速值(Current Link Speed) 和 bit[9:4] 協(xié)商鏈路帶寬值(Negotiated Link Width) 為非零值,而bit[13] 數(shù)據(jù)鏈路層鏈路激活值(Data Link Layer Link Active) 值(該位表示數(shù)據(jù)鏈路控制和管理狀態(tài)機(jī)的狀態(tài),返回值為1表示設(shè)備正常工作的狀態(tài),否則返回0) 為零,表示該P(yáng)CIe根端口鏈路訓(xùn)練沒有完成,IIO參考代碼當(dāng)前操作是將該P(yáng)CIe根端口隱藏,后續(xù)不再對(duì)該P(yáng)CIe端口進(jìn)行枚舉及分配PCIe相關(guān)資源,從而出現(xiàn)服務(wù)器啟動(dòng)階段PCIe設(shè)備丟失的情況。

3 PCIe設(shè)備丟失檢測(cè)及恢復(fù)功能設(shè)計(jì)

為了解決啟動(dòng)過程中因鏈路訓(xùn)練導(dǎo)致PCIe設(shè)備低概率丟失問題,對(duì)英特爾IIO參考代碼部分進(jìn)行了改進(jìn)。在IIO后期鏈路訓(xùn)練階段開始時(shí),讀取PCIe鏈路訓(xùn)練相關(guān)寄存器信息,如果發(fā)現(xiàn)PCIE鏈路失敗,在服務(wù)器啟動(dòng)階段屏幕顯示,并向BMC發(fā)送告警信息,記錄到BMC SEL日志中。然后對(duì)PCIe設(shè)備發(fā)送熱重置命令,重新進(jìn)行PCIe鏈路訓(xùn)練,如果嘗試多次熱重置命令不能使PCIe鏈路恢復(fù),再通過執(zhí)行重啟系統(tǒng)命令的方式來恢復(fù)。

3.1 PCIe設(shè)備丟失檢測(cè)及恢復(fù)功能原理

在IIO后期鏈路訓(xùn)練階段開始,輪詢讀取PCIe根端口鏈路狀態(tài)寄存器值時(shí):

1) 判斷當(dāng)前IIO PCIe根端口鏈路PCI配置空間鏈路狀態(tài)寄存器的當(dāng)前鏈路速率值和協(xié)商鏈路帶寬值是否為0。如果為0,說明該根端口沒有接入PCIe設(shè)備,繼續(xù)輪詢下一個(gè);如果不為0,判斷數(shù)據(jù)鏈路層鏈路激活值是否為0,如果不為0,說明IIO PCIe根端口和PCIe設(shè)備鏈路訓(xùn)練完成,繼續(xù)輪詢下一個(gè);如果為0,PCIE鏈路訓(xùn)練沒有完成,該P(yáng)CIe根端口沒有激活。

2) 在這種數(shù)據(jù)鏈路層鏈路激活值為0情況下:

①首先通過編寫代碼將鏈路失敗PCIe根端口的BDF(Bus,Device,F(xiàn)unction,總線號(hào),設(shè)備號(hào),功能號(hào))信息,紅色字體顯示到屏幕進(jìn)行預(yù)警。用戶通過查看屏幕顯示及時(shí)了解到具體的PCIe設(shè)備有出現(xiàn)鏈路訓(xùn)練失敗情況。

②其次將對(duì)應(yīng)當(dāng)前PCIe根端口的BDF信息通過跟BMC約定自定義命令格式,通過IPMI命令發(fā)送給BMC,記錄具體PCIe根端口鏈路訓(xùn)練失敗情況到BMC SEL日志,便于后面用戶檢查SEL告警日志。

③然后增加功能代碼對(duì)鏈路訓(xùn)練失敗PCIe根端口進(jìn)行恢復(fù)操作,嘗試對(duì)當(dāng)前PCIe根端口的橋控制寄存器(Bridge Control Register) 的bit[6]二次總線復(fù)位值(Secondary Bus Reset) 去寫1,通過軟件方式讓該P(yáng)CIe根端口觸發(fā)熱重置,重新進(jìn)行鏈路訓(xùn)練。

④PCIe鏈路訓(xùn)練是PCIe根端口和PCIe設(shè)備之間物理層的硬件行為,UEFI固件設(shè)置等待時(shí)間,待PCIe鏈路訓(xùn)練完成,再去判斷當(dāng)前PCIe根端口的鏈路狀態(tài)寄存器中數(shù)據(jù)鏈路層鏈路激活值是否為1,同時(shí)讀取當(dāng)前鏈路速率值和協(xié)商鏈路帶寬值是否達(dá)到該設(shè)備的預(yù)期值,即該P(yáng)CIe設(shè)備是否達(dá)到支持的標(biāo)稱速率和帶寬。如果條件不滿足,則嘗試再次對(duì)該P(yáng)CIe根端口熱重置,再次進(jìn)行鏈路訓(xùn)練。

⑤對(duì)該P(yáng)CIe根端口熱重置3次后,如果其數(shù)據(jù)鏈路層鏈路激活值仍為0, 或讀取當(dāng)前鏈路速率值和協(xié)商鏈路帶寬值一直沒有達(dá)到預(yù)期設(shè)置,再次記錄PCIe設(shè)備鏈路訓(xùn)練失敗情況到BMC SEL日志,UEFI固件通過執(zhí)行ResetSystem命令讓系統(tǒng)重啟,重新跑IIO初始化階段,恢復(fù)PCIe設(shè)備重新識(shí)別。

⑥如果熱重置后,PCIe根端口的數(shù)據(jù)鏈路層鏈路激活值為1,當(dāng)讀取當(dāng)前鏈路速率值和協(xié)商鏈路帶寬值也達(dá)到預(yù)期設(shè)置,繼續(xù)輪詢其他 PCIe根端口。

3) 所有IIO PCIe根端口輪詢結(jié)束,服務(wù)器啟動(dòng)過程繼續(xù)執(zhí)行。服務(wù)器啟動(dòng)過程中,對(duì)PCIe設(shè)備丟失檢測(cè)和恢復(fù),具體流程圖如圖1所示。

3.2 PCIe設(shè)備丟失檢測(cè)及恢復(fù)功能驗(yàn)證

針對(duì)PCIe設(shè)備丟失問題驗(yàn)證,設(shè)計(jì)兩個(gè)實(shí)驗(yàn)來驗(yàn)證功能的有效性。

首先在研發(fā)實(shí)驗(yàn)室搭建服務(wù)器驗(yàn)證機(jī)臺(tái),將導(dǎo)入PCIe設(shè)備丟失檢測(cè)及恢復(fù)功能的UEFI固件版本更新到待驗(yàn)證服務(wù)器上。通過對(duì)服務(wù)器啟動(dòng)過程中PCIe設(shè)備注錯(cuò)測(cè)試,驗(yàn)證該功能是否可以有效解決PCIe設(shè)備丟失后再恢復(fù)的問題。

然后對(duì)實(shí)際故障服務(wù)器機(jī)器進(jìn)行驗(yàn)證,將復(fù)現(xiàn)過啟動(dòng)過程中PCIe設(shè)備丟失問題的PCIe設(shè)備和主板等設(shè)備搭建服務(wù)器測(cè)試機(jī)器一共3臺(tái),進(jìn)行穩(wěn)定性測(cè)試驗(yàn)證。先用測(cè)試機(jī)器跑穩(wěn)定性驗(yàn)證跑出PCIe設(shè)備丟失問題,再將導(dǎo)入PCIe設(shè)備丟失檢測(cè)及恢復(fù)功能的UEFI固件版本更新到待測(cè)服務(wù)器機(jī)器上,然后再進(jìn)行穩(wěn)定性驗(yàn)證。BMC SEL解析日志記錄到的PCIe根端口鏈路失敗的日志如圖2所示。

4 結(jié)論

歷時(shí)數(shù)月,通過模擬注錯(cuò)和實(shí)際搭建PCIe丟卡服務(wù)器測(cè)試機(jī)器長(zhǎng)達(dá)數(shù)十萬次穩(wěn)定性驗(yàn)證,實(shí)驗(yàn)結(jié)果表明,該P(yáng)CIe設(shè)備丟失檢測(cè)及恢復(fù)功能設(shè)計(jì)能夠有效檢測(cè)上報(bào)PCIe設(shè)備的丟失情況,并對(duì)PCIe設(shè)備進(jìn)行恢復(fù)鏈路訓(xùn)練,讓PCIe設(shè)備重新被識(shí)別,保證了服務(wù)器系統(tǒng)的穩(wěn)定性和可靠性,對(duì)工廠服務(wù)器生產(chǎn)測(cè)試和用戶運(yùn)維管理具有一定的應(yīng)用價(jià)值。

參考文獻(xiàn):

[1] 俞則人,柴小麗,陸偉.基于FPGA的光纖通道HBA卡設(shè)計(jì)與實(shí)現(xiàn)[J].信息技術(shù),2015,39(10):206-209.

[2] 謝林甫.面向InfiniBand控制器的PCI Express接口設(shè)計(jì)實(shí)現(xiàn)[D].成都:電子科技大學(xué),2016.

[3] 王祎晨.一種ARM架構(gòu)SOC智能網(wǎng)卡設(shè)計(jì)及路由優(yōu)化方法[J].中國科技信息,2023(5):85-87.

[4] 汪濤.服務(wù)器基本輸入輸出系統(tǒng)和基板管理控制器之間紅魚接口的設(shè)計(jì)實(shí)現(xiàn)[J].信息記錄材料,2022,23(3):154-156.

[5] 楊金穎,高文煒,羅雪,等.基于VPX平臺(tái)的國產(chǎn)BMC設(shè)計(jì)與實(shí)現(xiàn)[J].微電子學(xué)與計(jì)算機(jī),2021,38(8):80-86.

[6] 王齊.PCI Express 體系結(jié)構(gòu)導(dǎo)讀[M].北京:機(jī)械工業(yè)出版社,2010.

[7] 張亮.PCIe總線物理層的設(shè)計(jì)與驗(yàn)證[D].西安:西安電子科技大學(xué),2013.

[8] 布達(dá)科.PCI Express系統(tǒng)體系結(jié)構(gòu)標(biāo)準(zhǔn)教材[M].田玉敏,譯.北京:電子工業(yè)出版社,2005.

【通聯(lián)編輯:代影】

猜你喜歡
恢復(fù)
探討智能配電網(wǎng)故障快速定位與故障恢復(fù)
CommVault軟件在企業(yè)中的應(yīng)用
淺析游泳訓(xùn)練的疲勞特點(diǎn)及恢復(fù)方法
淺談市政工程中給排水施工的質(zhì)量控制
面部燒傷女性患者的臨床護(hù)理干預(yù)
論配網(wǎng)故障的診斷及恢復(fù)方法
NUB恢復(fù)ORACLE數(shù)據(jù)庫
利用存儲(chǔ)系統(tǒng)恢復(fù)服務(wù)器系統(tǒng)
主站蜘蛛池模板: 熟女日韩精品2区| 91黄色在线观看| 久久精品中文字幕少妇| 精品自窥自偷在线看| av色爱 天堂网| 亚洲a免费| 九九九九热精品视频| 手机在线看片不卡中文字幕| 精品一区二区三区四区五区| 波多野结衣AV无码久久一区| 国产91视频免费| 玖玖精品在线| 国产丝袜啪啪| 免费A级毛片无码免费视频| 国产精品免费电影| 中文字幕亚洲综久久2021| 日韩精品亚洲精品第一页| 日韩av在线直播| 国产免费福利网站| 久久国产精品影院| 激情乱人伦| 欧美 亚洲 日韩 国产| 久久公开视频| 欧美一级一级做性视频| 强乱中文字幕在线播放不卡| 操操操综合网| 国产免费人成视频网| 婷婷午夜影院| 午夜精品区| 青青青伊人色综合久久| 国产在线视频自拍| 无码国内精品人妻少妇蜜桃视频| 五月婷婷导航| 国产精品无码AV中文| 狠狠亚洲五月天| 免费一级毛片不卡在线播放 | 91视频青青草| 九九热免费在线视频| 久久精品国产亚洲麻豆| 亚洲福利视频一区二区| 欧美综合一区二区三区| 午夜视频www| 青草午夜精品视频在线观看| 国产精品亚洲αv天堂无码| 亚洲婷婷丁香| 国产精品第一区| 99国产在线视频| 久久国产黑丝袜视频| 午夜免费小视频| 亚洲欧美综合精品久久成人网| 91丨九色丨首页在线播放| 久久久国产精品免费视频| 午夜影院a级片| 久久国产精品夜色| 国产欧美另类| 91尤物国产尤物福利在线| AV不卡在线永久免费观看| 欧美日韩综合网| 一级爱做片免费观看久久| 高清免费毛片| 日韩在线永久免费播放| 亚洲婷婷在线视频| 手机永久AV在线播放| 色网站免费在线观看| 国产三级国产精品国产普男人| 精品天海翼一区二区| 久久综合九九亚洲一区| 婷婷99视频精品全部在线观看| 亚洲欧美综合另类图片小说区| 成人夜夜嗨| 日本不卡在线视频| 亚洲资源在线视频| 国产亚洲一区二区三区在线| 亚洲无码熟妇人妻AV在线| 国产区在线观看视频| 91麻豆国产精品91久久久| 免费三A级毛片视频| 国产精品白浆无码流出在线看| 国产97公开成人免费视频| 欧美成人免费一区在线播放| 国产精品爽爽va在线无码观看| 欧美亚洲国产一区|