カーネルいじり

ある特殊仕様のパケットがWindowsだとTCPスタックまで上がる一方で、LinuxだとTCPスタックまで到達しない件の調査をこの数日やっていたが、昨夜も酒で酔いつつもコードを解析し、ようやくカーネル内部で該当パケットを落としているポイントを発見した。落としているポイントは一つではなく、複数あったために発見するのにてこずった…。昨夜一通りカーネルを修正して再構築して今朝特殊仕様のパケットでLinuxでも通信出来ることを確認できた。この連休の作業が無駄にならなくて良かった。後は某所から某デバイスのビルドに使ったカーネルソースをもらってこの修正を加えれば完璧だな。ただ彼らがこちらの要求に応じてくれるかどうかだけが心配だ…

I finally succeeded to find the reason of the issue in Linux kernel. Now I fixed it in the kernel and succeeded in passing special packets through Linux kernel..