1

Linuxカーネル用のLKMを開発していますが、ファイルシステムに関連する特定の情報を取得したいと考えています。実際、この情報は、ext4ファイルシステムのiノード構造のフィールドi_crtime(作成時間)です。

私の質問は、lkmからこのフィールドにアクセスするにはどうすればよいですか?今、私は特定のファイルのiノードを取得する方法を知っています:

kern_path(<path to file>, LOOKUP_FOLLOW, &path)

したがって、この後、次の経由でiノードがあります。

path.dentry->d_inode

ただし、このiノード(d_inode)は一般的なVFS iノード構造であり、前に示したext4_inodeではありません(ext4_inode_infoでもありません)。

誰かがそれを行う方法を知っていますか?私はVFSコード、stat(coreutil)コードを調べて、それをストラッシングしようとしていますが、まだ行き詰まっています:-S

TIA。

4

1 に答える 1

2

EXT4_I()関数は、VFS i ノードからext4_inode_infoを取得します。しかし、VFS i ノードの ctime は、EXT4 iノードの ctime とまったく同じです。したがって、inode->i_ctimeにアクセスすることもできます。

于 2013-01-05T11:02:13.157 に答える