Fw: [情報] Ryzen被發現在Linux編譯會出現 segfault

作者: suzuke (suzuke)   2017-12-27 08:46:52
※ [本文轉錄自 PC_Shopping 看板 #1QGFLN-G ]
作者: suzuke (suzuke) 看板: PC_Shopping
標題: Re: [情報] Ryzen被發現在Linux編譯會出現 segfault
時間: Mon Dec 25 20:55:47 2017
先說一下我的狀況,我是buildroot隨機會出錯,
但是完全沒有改任何設定繼續編譯卻可以編譯成功。
總之就是大量平行編譯會隨機出錯...
使用 https://github.com/suaefar/ryzen-test/blob/master/kill-ryzen.sh
測試(No Ramdisk),果然會出現這樣的錯誤(segmentation fault):
[KERN] Dec 21 22:19:39 Ryzen kernel: bash[7678]: segfault at 45 ip
0000000000701d40 sp 00007ffdcdb4c4e8 error 6
主機板也是Asus b350 plus, BIOS: 3401, 1700 / Ram: 16G DDR4
OS則是Linux Mint 18.2
嘗試過換kenerl版本(4.9-4.11),加過cpu電壓,關掉C-state,BIOS全預設
都一樣會出現上面的錯誤。雖然關掉SMT之後就正常,可是我總不能一直關著SMT阿QQ
後來先嘗試在linux裡關掉ASLR (Address space layout randomization)
echo 0 | sudo tee /proc/sys/kernel/randomize_va_space
好像也沒什麼用...
本來已經打算要RMA了,剛好看到板友RMA回來的步進一樣還是B1,
也有提到RCU設定(CONFIG_RCU_NOCB_CPU),就再嘗試看看重新編譯kernel(4.13.16)
主要就是 make menuconfig 裡面
-> General setup
-> RCU subsystem
這一項要打開,然後在grub cmdline裡面加入 rcu_nocbs=0-15
(因為我是8核1700,如果是6核心就是0-11 依此類推...)
看起來像是這樣:
GRUB_CMDLINE_LINUX_DEFAULT="rcu_nocbs=0-15"
再跑一次kill-ryzen.sh測試:
https://gist.github.com/anonymous/216826c5141f99a8307ec0d1da76cea6
就沒問題了。
總結:
BIOS: 3041
關掉C-State, ASLR
開啟RCU
希望跟我有一樣問題的人也可以不用RMA順利解決。
作者: twosheep0603 (兩羊)   2016-12-25 21:45:00
U:工作用的機器就是要穩
作者: pennymarkfox (潘尼老狐狸)   2016-12-26 12:39:00
推個
作者: CP64 (( ̄▽ ̄#)﹏﹏)   2017-12-27 08:56:00
是上次的還沒換完 或是又出了有問題的貨 讓我們看下去
作者: kira925 (1 2 3 4 疾風炭)   2017-12-27 09:07:00
沒換完然後有workaround吧?
作者: OrzOGC (洞八達人.拖哨天王)   2017-12-27 10:36:00
AMD的日常...XD
作者: qoopichu (非洲邊緣魯蛇)   2017-12-27 10:53:00
Intel:爭氣點,好嗎?不要害我被反托拉斯法找碴
作者: guezt   2017-12-27 11:31:00
Intel自己的bug也一直都沒少過
作者: Bencrie   2017-12-27 12:31:00
不然那一大串 microcode patch 是放好看的喔 XD
作者: Hevak (Arthow Eshes)   2017-12-27 20:10:00
作者: soem (流水)   2017-12-28 21:15:00
作者: kpier2 (條漢子)   2017-12-29 17:32:00
這背後反覆驗證重編的耗時... 辛苦了!
作者: waynechen251 (waynechen251)   2017-12-29 22:53:00
不管到哪一版都能看到腦粉互戰
作者: fishlinghu (令狐瑜)   2016-01-01 20:23:00
Intel是會有bug 但至少會找到一堆人跟你有一樣的問題
作者: galic (嘎利)   2016-01-03 13:07:00
回來看這篇 因為這次Intel真的超級大包
作者: suzuke (suzuke)   2016-01-03 15:30:00
幫Intel QQ
作者: fishlinghu (令狐瑜)   2016-01-03 17:26:00
對啊 怎麼辦 到底要買A還是I的啦XD
作者: qoopichu (非洲邊緣魯蛇)   2016-01-03 17:49:00
買ARM架構的(?
作者: CP64 (( ̄▽ ̄#)﹏﹏)   2016-01-03 20:16:00
Intel 這次真的超大包到覺得工程師大概都褲底一包 (?
作者: qoopichu (非洲邊緣魯蛇)   2016-01-03 21:05:00
Linux遊戲效能不受影響... 可4姆咪Linux有遊戲嗎?
作者: Bencrie   2016-01-03 21:16:00
姆咪Linux有沒有遊戲去它版問啦
作者: OrzOGC (洞八達人.拖哨天王)   2016-01-03 21:44:00
steam上很多啊
作者: qoopichu (非洲邊緣魯蛇)   2016-01-03 22:52:00
Steam是用來買遊戲不是用來玩遊戲的(?
作者: suzuke (suzuke)   2016-01-04 09:32:00
樓上正解XDDD
作者: qoopichu (非洲邊緣魯蛇)   2016-01-04 11:23:00
好啦,我曾經看戰爭雷霆有出Linux版想給他一次機會結果一打開滑鼠就出現問題,不是原生版的嗎幹...繼續用wine打WoT...

Links booklink

Contact Us: admin [ a t ] ucptt.com