モジュールをいじってたらkernel: Fatal double fault
でpanicするようになってしまったので調査。
とはいってもdouble faultの原因リストなんて知らないので、ここはメモリ破壊系バグによる誤動作に賭けて調査開始。
バグレポート初め
正月という儀式を無視して年末からずっとunionfsを改造してたら、kern側のバグっぽいものを見つけたのでレポートした。
215705 – VOP_REMOVE call with invalid cn_nameptr
個人的にはバグだと確信してるけど、実はVOP_REMOVEのときはcn_nameptrは壊れててもいいとかあるのかな……ないよね……。
panic: ufs_direnter: compact2
この前から続けてunionfsをいじってたらpanicにやられた。
panicの中身からは分かりづらかったけど、VOP_CREATE
に先んじてVOP_LOOKUP
を呼んでいなかったことが問題らしい。
1ヶ月以上はまっていたので記録を残しておくことにした。
きっと誰の役にも立たないけど。
unionfsのバグを直そう
FreeBSDのunionfsがバグっててひどいという話。
元々、jailをunionfsを使って管理したいと思ってはじめたもの。Dockerがaufsを使っているのと同じイメージ。
同じようにハマる人はたくさんいるようで。
zfs sync=disabledはどのくらい危ないのか
VMware ESXi用ストレージをZFS+NFSで運用していると必ず出てくる “sync=disabled” の件。
できればZIL(ZFS intent log)にSSDを使うなどして、安全にレイテンシを削るのが望ましいが、そうは言っていられないこともある。
仕方なく”zfs set sync=disabled”するとどれくらい危険かを少しだけ計ってみた。本当に少しだけ。
Shuttle DS57Uがディスプレイなしで起動できない
タイトルどおり。
ShuttleのスリムでシンプルなDS57Uを愛用していたけど、FreeBSD 10以降でディスプレイなしだと起動できない。
今のところ解決法は無さそう。起動時だけディスプレイをつなぐか、HDMIのダミーアダプタをつなぐかしないといけない。
QNAP TS-451にFreeBSDをインストールする
iSCSIが応答しなくなったりして困った挙句、FreeBSDをインストールしちゃった。
TS-451の中身はただのIntel CPUなPCなので、特に問題なくインストールできる。
怖いので内蔵Flashにはインストールせず、HDDにインストールした。
Windows+Pythonにmatplotlibをインストール
諸般の都合でWindows+Pythonにmatplotlibをインストールしようとしたらコケたのでメモ。
結論: pipをアップグレードすればよろしい。
QNAP NAS+iscsi+zfsが固まる(2)
前回の続き。
結局FreeBSD 9.3-RELEASEにしたら直った。
FreeBSD 10.0以降のiSCSI Initiatorがおかしいか、相性が悪いかのどちらか。
パケットキャプチャの結果があるから後者もあるとは思うが、余計なバグを踏まされたので前者も疑わしい。
ReadyNASのRAID-5障害復旧
遠隔地に配置していたNETGEARのReadyNASで障害が発生、RAID-5構成の4台中2台で障害が起きてお亡くなりに。
でも良く見ると片方はなんとか認識できそうだったのでがんばってみた。