初めてKernel2.6でドライバ書いたら、"disagrees about version of symbol struct_module"って出てなんで!?って思う人が多いみたい。 自分もその一人だったので、掻い摘んだ形でちょっとだけ。。。 たしか、Kernel2.6ではKernelの安定性をあげるために、モジュールやドライバのバージョンチェックが、より厳密になったのが理由だったと思います。 なので、insmodするときに、そのドライバやモジュールが動作中のKernelにマッチしているかどうか、安定しているかどうかを厳密にバージョンチェックします。 その結果、Kernelと同じ環境でbuildされてない場合、"disagrees about version of symbol struct_module"って言われるんだったと思います。 なので、kernelがコンパイルされた環境と同じ