今週のLKML
今週は
- Make kernel build deterministic
- KGTP (Linux Kernel debugger and tracer) 20110405 release
- [PATCH] Allow O_SYNC to be set by fcntl(F_SETFL)
Make kernel build deterministic
http://permalink.gmane.org/gmane.linux.ports.arm.kernel/112608
カーネルをコンパイルする時に __TIME__ や gzip などによって、カーネルのオブジェクトのあちらこちらにタイムスタンプがうめこまれます。このために同じコードからビルドしてもその結果できるバイナリが変わってしまいます。(とすると、カーネルが改変されてないかどうかのチェックがしにくい、とかそんなことなんじゃないでしょーか)
そこで __TIME__ なんかのタイムスタンプをうめこむ要素を排除しよう、というのがこのパッチです。
KGTP (Linux Kernel debugger and tracer) 20110405 release
http://permalink.gmane.org/gmane.linux.kernel/1122685
その名の通りに、 Linuxカーネルをデバッグしたりトレースするツール。 kgbd との違いは
http://permalink.gmane.org/gmane.linux.kernel/1123072
- gdb 風のインタフェースではない
- トレース用のインタフェースのみがある
- トレースに特化している
との様子。
http://permalink.gmane.org/gmane.linux.kernel/1124084
KGTP は gdb の 「gdb Remote Serial Protocol」の 「Tracepoint-Packets」の機能を使っているから、 gdb とマージした方がいいのでは、と提案。(まぁそのほうがわかりやすいよねぇ…)
http://permalink.gmane.org/gmane.linux.kernel/1124108
しかし、シンプルなインタフェースのために提案拒否。まぁどっちもどっちか…。kgdb にトレースポイントの機能をつけることにがんばりそう?
http://permalink.gmane.org/gmane.linux.kernel/1122736
とりあえず Harry Wei からの Acked-By はついていますね。
[PATCH] Allow O_SYNC to be set by fcntl(F_SETFL)
http://permalink.gmane.org/gmane.linux.kernel/1123952
いまの実装では fcntl(fd, F_SETFL, flags|O_SYNC) としてもなにも変わらず無視されていますが、これを無視せずに処理しようというパッチに返信がありました。
いま無視されているこのフラグですが、処理するとなるとユーザランドのアプリケーションが遅くなってしまうこともありえます。(SYNCされますからね) 意味としてパッチを当てるのは正しいのですが……難しいところですね…。