Soft_Job 板


LINE

我不知道本魯該不該算是個 Linux Kernel 開發者 我只有 submit 過 2 個很小的 patches 到 mainline,而且都不是核心 總之我主要做的事情都是 out of tree 的 我一開始接觸這塊 是因為工作上要求而自幹了一個 remote filesystem 那個時候就靠從 fs 相關 syscall 開始 trace code 進 VFS layer 然後看他跟各個 filesystem operations 如何搭上 我大概花了一個禮拜的時間做出一個可以 mount 的 prototype 然後再慢慢的把剩下的 syscall 相關的 operation 補上 那段時間我過的真的蠻充實的 我從完全沒有 Kernel 開發經驗 到 VFS 由裡到外弄懂 (很舊的版本 現在又變好多QQ) 還弄懂各種 Synchronizaion: ticket spinlock, mutex, wait_queue, RCU 還有各種 Debugging 技巧: 看懂 oops/decodecode, Magic sysrq, kexec/kdump 這些基本上都是我自學的 總之我目前主要參與的是 ZFS on Linux (還是filesystem相關...) 我目前主要都是一些bugfix 和支援新版 kernel 相容性為主 我最大的貢獻是改進ZFS 的 memory management 那個pull request 已經一年多了還沒merge 進去QQ 另外我有幾個race condition 的bugfix 也是令我滿自豪的 比如有一個存在已久跟 mutex 相關的 race/memory corrution 大家都摸不著頭緒是 被我解掉的 另外發一下牢騷,ZFS 因為是從 Solaris/Illumos porting 過來的 很多 API 都要包裝過,用在Linux 上往往都會有一些小問題要work around 然後他們的Lock ordering 非常的 sloppy,而且沒有註解清楚這些 Lock 到底是要保護 什麼,導致常常會有lock inversion deadlock 出現。 我常常腦海裏面都有砍掉重練的聲音,可是 ZFS 實在是太龐大的QQ --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 50.135.204.227
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1449049236.A.C5B.html
1F:推 beemos: 你絕對是啊! 12/02 17:58
2F:→ dreamnook: 囧" 12/02 18:10
3F:推 james732: 推強者 12/02 18:29
4F:→ king19880326: 比較想知道這樣的程度薪水在台灣/美國可以開到多少 12/02 18:34
5F:推 shortoneal: 我怎麼感覺我認識你.....XD 12/02 18:35
6F:推 amatt: 這跟薪水只有間接關係 12/02 18:48
7F:推 ggBird: 強者,可以分享deadlock 的除錯經驗嗎? 12/02 19:08
解 deadlock 也沒有什麼特殊技巧,就是運用現有的工具像 softlockup, hardlockup detector, hung task detector,有了這些 deadlock 時多半會出現 問題 thread 的 call trace,再利用這些分析問題點在哪。如果沒有打開那些功能 也可以用 sysrq-l sysrq-w 之類的。 另外 Kernel 有內建強大的 Lock ordering 分析器 Lockdep。他可以動態建立各種 Lock class 之間的相依性,然後印出所有可能 deadlock 的地方。 可是因為 ZFS 沒有嚴謹的 Lock class ordering,所以一開 Lockdep 馬上就吐一對東西 出來,所以目前還沒辦法用在 ZFS 上。QQ
8F:推 seebass: 實務上ZFS in Linux 還是不夠穩定,尤其在Ubuntu short t 12/02 20:49
9F:→ seebass: erm 版本上 12/02 20:49
10F:推 raix852: 推強者 小魯只有研究兩個月就沒再碰了 12/02 20:57
11F:推 ahwater01: 快來看強者!! 12/02 21:07
12F:推 onlywig: 跪求教我OOPS debug技巧 12/02 21:48
oops 也沒什麼特殊技巧,先把 "Code: 48 89 45 c8 0f ..." 這行 餵進 scripts/decodecode 就可以得到問題點的 assembly 對照到 source code,然後利用 register 的值就可以大概推出當時的 state。 剩下的就是根據問題的種類想辦法分析了
13F:→ wens: 好強大... 12/02 22:50
14F:→ wens: 不過pull request沒下文是怎樣 orz 12/02 22:51
也不算沒下文啦,這段時間我偶爾會更新一下,也有一些人有持續使用 只是說他動到的範圍太大,怕會影響跟 illumos 之間的流動性所以暫時還沒進去 這段 code illumos 也正在 porting 回去,所以應該可見的未來會進去吧... 話說你不是 maintainer 嗎? Maintainer 的等級不是比較高嗎?
15F:推 RouterHsieh: 這種才是真正的kernel developer啊..XD 12/03 00:47
16F:推 jily: 推強者! 12/03 09:46
17F:→ dinos: 朝聖! 12/03 10:32
18F:推 vn509942: 跪 12/03 12:50
※ 編輯: tuxoko (50.135.204.227), 12/03/2015 13:49:40
19F:→ zaqimon: Linux kernel神人才懂 尤其那組語絕對不會是一行一行跑 12/03 16:18
20F:→ zaqimon: 各種不同CPU平台 各種硬體 各種memory barrier最佳化... 12/03 16:20







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:WOW站內搜尋

TOP