如果要找一個「人類頂尖工程師也需要 AI 輔助」的案例,沒有比這更有力的了。Linux 之父 Linus Torvalds,寫了 35 年核心程式碼、以極度嚴格的程式碼審查聞名的人,8 月 21 日在一個 Intel Xe 顯示卡驅動的 bug 上花了 24 個 debug patch 和 18 次重開機,最後靠 AI 協助才找到問題。而修復本身只改了一個函式呼叫。
Bug 的本質:記憶體位址算錯一頁
問題出在 Intel Xe 驅動的 get_flat_ccs_offset() 函式。這個函式負責從硬體讀取 flat CCS(Color Compression Storage)的基礎位址,乘以啟用的 L3 節點數量,然後四捨五入到 128K 邊界。四捨五入以下的位址空間會被交給 VRAM 分配器當作可用記憶體。問題在於:原程式碼用了 round_up()(無條件進位),但一個代表「可用記憶體到此為止」的邊界值不應該往上進位。進位後多出來的空間會被當成可用記憶體分配出去,但那塊記憶體屬於壓縮硬體。在 Battlemage G21(16GB)顯示卡上,實際的 CCS 基底位址是 0x3fafff800,進位後變成 0x3fb000000,中間差了 2KB,剛好一頁。
這 2KB 被分配給了 Mesa 虛擬機器的三級頁表。每次冷開機時,頁表都會落在這個位置,導致覆蓋了合成器的 batch-buffer heap,合成器第一次提交任務就出錯,gdm(顯示管理器)不斷重啟,使用者看到的就是黑畫面。重啟 gdm 反而能修復,因為下一次 VM 頁表會分配到別的地方。
修復只有一行:把 round_up() 改成 round_down()。在這台機器上,這個改動排除了恰好一頁的記憶體。Torvalds 事後讀取那頁被保留的記憶體,看到了壓縮元資料的寫入模式:每 16 位元組中有 2 位元組的壓縮標記,正是硬體在無聲無息地覆寫分配出去的記憶體。原本應該抓到這個問題的斷言檢查,因為比較值恰好是 128K 對齊的,在非對齊的基礎位址上反而不會觸發失敗,等於形同虛設,完全沒發揮作用。
24 個 patch、18 次重開機、一個不肯放棄的人
Torvalds 在 commit message 中寫道,這是一個「地獄級的 debug session」。整個過程產生了 24 個 debug patch(逐步加入更多偵錯資訊)和 18 次核心重開機,才把問題範圍縮小到那個錯誤的四捨五入函式。
關鍵轉折是 AI 的參與。Torvalds 讓 AI 負責大量繁瑣的工作,包括加入 debug 程式碼、分析輸出結果。但 AI 的表現並非一路可靠:它多次直接告訴 Torvalds「這個問題不可能解決,我們應該寫個報告就好」。不過在個他的不斷要求鞭打(?)下,AI還是定位出問題並解決了。
Torvalds 在 commit message 中寫下他的觀察:
「我懷疑這些東西是被一些不像我這麼固執的人訓練出來的。但當我堅持下去的時候,AI 確實持續加入 debug 程式碼並忠實地分析結果。功勞歸功勞,我讓 AI 寫了上面那段 commit message。」
同一個人,兩個月前才叫 AI 批評者「去 fork」
這次修補之所以引人注目,不只是因為修了一個兩年的老 bug,更因為它發生在 Torvalds 公開表態支持 AI 編程工具的兩個月後。今年 7 月,他在 Linux 核心郵件列表上寫道:「Linux 不是那些反 AI 的專案之一,如果有人對此有意見,他們可以做開源該做的事,fork 它。或者直接離開。」
當時的爭論源於 Sashiko,一個「agentic Linux 核心程式碼審查系統」,號稱能獨立找到 53.6% 最終被人類修復的 bug,但假陽性率也在 20% 左右。維護者們對於是否該被大量自動化 bug 報告轟炸產生分歧,Software Freedom Conservancy 發表聲明主張「應該支持那些完全拒絕 LLM/AI 系統的人」,Torvalds 則明確反對這種立場。
他說自己的立場是務實的,「基於技術優點,不是對新工具的恐懼」。他還反問:「任何指出 AI 問題的人,最好同時照照鏡子指著自己。因為人類智慧也沒有多了不起。」
用法不同,結論就不同
Torvalds 這次用 AI 的方式,和他批評的 AI 使用方式有本質差異。他收到的郵件列表上充斥著 AI 生成的低品質 patch 和垃圾訊息,那是「AI 自動產出、人類沒看就提交」的模式。但這次 debug 是「人類主導、AI 輔助」的模式,Torvalds 自己決定方向,AI 負責繁瑣的程式碼插入和結果分析,當 AI 說「放棄吧」的時候,人類選擇忽略它繼續做。
這個區別很關鍵。AI 在 debug 場景中的價值在於「加速排除法」,24 個 debug patch 和 18 次重開機的過程中,AI 承擔了大量機械性的工作,讓 Torvalds 能專注在分析和決策上。但最終找到問題的那個瞬間,靠的是人類的固執。
Torvalds 的 AI 態度轉變時間線
Torvalds 對 AI 編程工具的態度並非一開始就開放。2025 年初,一項由 METR 進行的研究發現,使用 AI 工具的開源開發者生產力反而下降了 19%,即使這些開發者自己感覺「快了 20%」。但到了 2026 年 2 月,同一組研究者更新了結論,認為「開發者在 2026 年初從 AI 工具獲得的加速效果,很可能比我們 2025 年初的估計更大」。
Torvalds 自己在今年 1 月透露,他正在用 Google Antigravity 進行所謂的「vibe coding」,幫自己的吉他效果器專案做一個 Python 音訊視覺化工具。他寫道:「一開始是我典型的 Google 搜尋然後照做的程式寫法,但後來我跳過了中間人,也就是我自己,直接用 Antigravity 來做。」
從個人實驗到正式在核心開發中使用 AI,再到公開叫批評者去 fork,Torvalds 的態度轉變只花了半年多。而這次 Intel Xe 驅動的 debug 經驗,等於是他用親身經歷為自己的立場提供了具體案例。
這個修補預計納入 Linux 7.3,並回移到穩定版核心。對於使用 Intel Battlemage G21 顯示卡、偶爾遇到黑畫面問題的使用者來說,兩年的等待終於結束了。






