fs/open.c のシステム コール「sys_open」をハックして、ファイルの内容を char* バッファに取得しようとしています。コール スタックは次のとおりです: sys_open -> filp_open -> dentry_open。ファイルの内容をバッファに読み込むために、dentry_open の最後に次のコードを追加しましたが、機能しませんでした。アイデアはありますか?
char *buf = kmalloc(sizeof(*f), GFP_KERNEL);
mm_segment_t fs;
fs = get_fs();
set_fs(get_ds());
f->f_op->read(f, buf, sizeof(*f), 0);
set_fs(fs);