每周一龍:第 13 期
2023年8月28日· 閱讀需 6 分鐘
作者:WANG Xuerui
每周一都為大家報道 LoongArch? 社區(qū)最前線的第一手新鮮資訊!
如無特別說明,文中提及的日期、時間都為北京時間(UTC+8)。
先「馬」再看
本欄目的內(nèi)容具有一定延續(xù)性,將持續(xù)追蹤報道 LoongArch? 領(lǐng)域的重要或長期項目(坑)。
Linux
美西時間周日下午 3 點一刻(中國時間周一早晨 6 點),Linus 發(fā)布了 Linux 6.5 正式版。 相比于 Linux 6.4,對龍架構(gòu)而言,該版本主要包含了以下一些功能變更:
龍芯中斷控制器的 bug 修復(fù)(Jianmin Lv、Liu Peibao、Yinbo Zhu)與DT設(shè)備樹引導(dǎo)支持(Binbin Zhou)。
LS7A 集成聲卡支持(Yanteng Si)。
AMD RDNA2 顯卡支持(WANG Xuerui、Huacai Chen)。
支持以 LLVM/Clang 構(gòu)建龍架構(gòu)內(nèi)核的一種基本配置(WANG Xuerui、WANG Rui)。
3A6000 適配工作(硬件頁表遍歷、SMT、向量擴展指令的上下文切換支持等)(Huacai Chen)。
發(fā)現(xiàn)并修復(fù)了編譯器安全強化手段(
CONFIG_FORTIFY_SOURCE
)未能完全生效的問題(Nathan Chancellor、Nick Desaulniers、WANG Xuerui)。
Linux 上游社區(qū)不僅維護內(nèi)核,也包括許多 Linux 的周邊軟件、支持庫等。
nolibc 的 stack protector 支持(Thomas Wei?schuh)。
perf
命令的龍架構(gòu)匯編處理修復(fù)(WANG Rui)以及一些日常性質(zhì)的代碼整理工作(Tiezhu Yang)。
雖然龍芯團隊對其 MIPS 時代產(chǎn)品的主線維護工作強度已大不如前 (在龍芯 MIPS 產(chǎn)品線被砍之前,這些產(chǎn)品未能等到完善的主線支持。 因此后續(xù)即便龍芯要為其 MIPS 產(chǎn)品提供技術(shù)支持,也不必非得將這些成果合并回主線了), 這些產(chǎn)品仍然在得到社區(qū)、龍芯開發(fā)者的部分支持。
龍芯 1 號的 PWM 定時器/時鐘源、看門狗支持(Keguang Zhang)。
為龍芯 2K1000 SoC、LS7A 橋片的 MIPS 系統(tǒng)啟用板載 RTC 支持(Binbin Zhou)。
MIPS KVM 空指針引用修復(fù)、MIPS 龍芯內(nèi)核的編譯錯誤修復(fù)等(Huacai Chen)。
除以上變更之外,還有許多同等重要的缺陷修復(fù)、代碼重構(gòu)等工作值得褒揚。 這個版本動過龍芯相關(guān)代碼的所有開發(fā)者們(按字母順序排序,以 Git 提交記錄中的作者字段為準(zhǔn)):
Andy Shevchenko
Arnaldo Carvalho de Melo
Arnd Bergmann
Binbin Zhou
Chao Yu
Chenguang Zhao
Dan Carpenter
Dave Airlie
Donglin Peng
Eric Lin
Haoran Jiang
Huacai Chen
Ian Rogers
Javier Martinez Canillas
Jianmin Lv
Jonathan Corbet
Keguang Zhang
Kuninori Morimoto
Linus Torvalds
Liu Peibao
Marc Zyngier
Masahiro Yamada
Maxime Ripard
Peter Zijlstra
Sui Jingfeng
Thomas Gleixner
Thomas Wei?schuh
Thomas Zimmermann
Tiezhu Yang
WANG Rui
WANG Xuerui
Xi Ruoyao
Yanteng Si
Yinbo Zhu
Yingkun Meng
YingKun Meng
Youling Tang
Zhihong Dong
當(dāng)你使用龍架構(gòu) Linux 6.5 時,別忘了向 tā 們表達一聲感謝!
信息
本節(jié)報道的信息可以通過簡單的
git
操作從 Linux 倉庫中獲?。?/p>
工具鏈
gcc
8 月 28 日,Lulu Cheng 為龍架構(gòu) -O2
及更高的優(yōu)化級別默認(rèn)開啟了移除非必要符號擴展、零擴展操作的優(yōu)化,
也合并了25 日 tā 自己寫的避免 SLT
指令引起多余符號擴展動作的補丁。
LLVM
8 月 25 日,SixWeining 優(yōu)化了龍架構(gòu)的位域清零操作,基本上每處可以省 1 條指令。
8 月 23 日,Ami-zhang 為 MSan 增加了龍架構(gòu)可變參數(shù)列表函數(shù)的支持。
雜聞播報
8 月 24 日,Song Gao 發(fā)出了QEMU 8.2 的龍架構(gòu) target 相關(guān)改動的 PR。 其中包含了:
LA32 支持(Jiajie Chen),
在翻譯擴展指令前進行更完善的前置條件檢查(Song Gao),
邊沿觸發(fā)中斷的修復(fù)(Bibo Mao),以及
為 CSR 寫操作添加日志,以及代碼重構(gòu)(Philippe Mathieu-Daudé)。
(感謝 Jiajie Chen 的線索投遞。)
同一天,KatyushaScarlet 7 月 22 日為 google/cpufeatures 庫做的龍架構(gòu)適配也進入了主線, 預(yù)計將在此庫的 v0.9.0 版本發(fā)布。(感謝 KatyushaScarlet 的線索投遞。)
張貼欄
本欄目可供張貼公益性質(zhì)的各種信息。
本周報持續(xù)接受網(wǎng)友投稿。歡迎來上游坐坐!
本文章的內(nèi)容以 CC-BY-NC-SA 4.0 許可證授權(quán)。