私は既存のFreeBSDデバイスドライバーにいくつかのコードを追加していてchar*、ユーザースペースからドライバーにを渡そうとしています。次のようなマクロを使用してカスタムioctl()コマンドを実装しました。_IOW#define TIBLOOMFILTER _IOW(0,253,char*)
私の電話は次のようになります。
int file_desc = open("/dev/ti0", O_RDWR);
ioctl(file_desc, TIBLOOMFILTER, (*filter).getBitArray());
close(file_desc);
電話をかけると、エラーメッセージとしてioctl():が表示されます。Inappropriate ioctl for device何が間違っているのかについての推測はありますか?デバイスドライバーで同じマクロを定義し、それをcaseステートメントに追加しました。