The BAQ/Memo/Linux C/ioctl

Japanese English
Nuclear Physics Data Acquisition Orchestra Gallery Memo Diary Link Home
Linux C Fortran Postscript Home

もどる

自作デバイスドライバでioctlを使ってアクセスする時に、2番目の引数で場合分け、例えばiocto(fd, com, ...)でswitch(com)...caseなんてことをすることが多いと思われます。
で、最近のLinuxではこの2番目の引数に落とし穴があって、下記の番号を使うとデバイスドライバまで届かない可能性があります。特に2なんて数字はよく使うと思われるので要注意。

0x5450
0x5451
0x5421
0x5452
0x5460
119
120
2    

これはカーネルソースの fs/ioctl.c を見ると解ります。

Last Update: 2011/8/4
Hidetada Baba
baba ribf.riken.jp