BSD界隈四方山話

第137回FreeBSDのMeltdown/Spectre対策、11系にマージ

FreeBSDのMeltdown/Spectre対策、11系にマージ

第136回のFreeBSDのMeltdown/Spectre対策で、FreeBSDにおけるMeltdownとSpectre対策の概要を紹介しましたが、週末にコードが11-STABLEにマージされました(Revision 329462⁠⁠。これで次のリリースとなるFreeBSD 11.2-RELEASEにはこの修正が取り込まれることになります。CURRENTからバックポートされた変更は次のとおりです。

詳しい内容は上記から確認できます。バックポートされたパッチの内容を大雑把にまとめると次のようになります。

  • amd64アーキテクチャにおけるKPTI(Kernel Page Table Isolation)の実装。Meltdownに対処するもので、今回のコミットでは機能はデフォルトでは無効化されている。有効化するにはsysctl値vm.pmap.ptiを1に設定する
  • KPTIの最適化のためにPCIDを使うように実装
  • Spectreの影響軽減のためのIBRSサポートを追加。この機能を利用するにはマイクロコードをSpectre対策の取り込まれた最新版にアップデートするとともに、sysctl値hw.ibrs_disableの値を0に設定する。IBRSの機能が有効かどうかはhw.ibrs_active値で確認できる(参考:CPUマイクロコードのアップデート方法Intelマイクロコードアップデート適用の一時中止を
  • IBRSにスイッチしたときはSTIBPも同時に有効化するように実装

FreeBSD 11.2-RELEASEが公開されるまでにもう少々の変更は実施されると見られます(vm.pmap.ptiのデフォルト値の変更など⁠⁠。とりあえず最初のコードが安定版にマージされたことでひとつのマイルストーンに達したと言えそうです。

AsiaBSDCon 2018オンライン登録開始

2018年3月8日から11日にかけて開催されるAsiaBSDCon 2018オンライン登録が開始されました。3月8日と3月9日はチュートリアルとミーティング、3月10日と3月11日は論文セッションです。詳しい日程は会議日程に掲載されています。2018年2月28日までは早期登録で割引がかかります。AsiaBSDCon 2018に参加ご予定の場合はこのチャンスをご活用ください。

*BSD関係のカンファレンスはカナダ、米国、欧州で開催されていますけども、日本で開催されるAsiaBSDConは日本からもっとも参加しやすい*BSDカンファレンスです。開発者から直接発表を聞くこともできます。ぜひ参加を検討してみてください。

FreeBSD勉強会

4月26日(木)19:00~ 第70回 - ヴァル研 セミナールーム

【sysctl(8)からカーネルの中身を追う】

*BSDに限らず、UNIX系OSではユーザランド側からsysctlコマンドを実行することで、カーネルが提供する機能のON/OFFやカーネルパラメータを設定することができます。今回のFreeBSD勉強会では、sysctlによるカーネルパラメータの設定を題材にしてカーネルソースコードの読み方を解説しようと思います。

また、ソースコードを読み解く際の当たりの付け方といった、カーネルに限らないコードリーディングのノウハウについても紹介できればと思いますので、カーネルソースコードをこれから読み始めてみようと思っている方はぜひご参加ください。

【AsiaBSDCon 2018復習】

AsiaBSDCon 2018で発表された内容を振り返ります。どんな発表内容だったかちょっと理解が追いつかなかった、といった場合の手助けとして利用できるように概要をお伝えできればと思います。

本勉強会への参加者には抽選か勝ち抜きかでデーモンTシャツなどのグッズをお渡しします :)

参加登録はこちらから。

FreeBSD勉強会 発表者募集

FreeBSD勉強会では発表者を募集しています。FreeBSDに関して発表を行いたい場合、@daichigotoまでメッセージをお願いします。30分~1時間ほどの発表資料を作成していただき発表をお願いできればと思います。

おすすめ記事

記事・ニュース一覧