LOOKUP_DCOOKIE(2)

名前
lookup_dcookie - ディレクトリエントリーのパス名を返す

書式
int lookup_dcookie(u64 cookie, char *buffer, size_t len);

説明
cookie 値で指定されたディレクトリエントリーのフルパス名を検索する。 cookie は、個々のディレクトリエントリーを区別する内部識別子 (opaque identifier) である。引数で指定されたバッファーに、ディレクトリエントリーの フルパス名が格納される。

lookup_dcookie() が正常に値を返すためには、カーネルがディレクトリエントリーへの cookie 参照を 保持していなければならない。

返り値
成功した場合、 lookup_dcookie() はバッファーにコピーしたパス文字列の長さを返す。 エラーの場合は -1 を返し、 errno に適切な値を設定する。

エラー

EFAULT
    バッファーが有効でなかった。

EINVAL
    検索が行われた時、cookie とディレクトリエントリーのマッピングがカーネルに 登録されていなかったか、または cookie が有効なディレクトリエントリーを 参照していない。

ENAMETOOLONG
    名前がバッファーに入り切らなかった。

ENOMEM
    カーネルが、パス名を保持する一時バッファー用のメモリーを割り当てることが できなかった。

EPERM
    プロセスが cookie 値を検索するのに必要なケーパビリティ CAP_SYS_ADMIN を持っていない。

ERANGE
    バッファーが、ディレクトリエントリーのパス名を収容するのに 十分な大きさではなかった。

バージョン
Linux 2.5.43 以降で利用できる。 エラー ENAMETOOLONG を返す仕様は 2.5.70 で追加された。

準拠
lookup_dcookie() は Linux 独自の関数である。

注意
lookup_dcookie() は特殊な用途に使われるシステムコールで、現在のところ oprofile(1) profiler で 使われているだけである。

指定されたディレクトリエントリーが削除されていた場合、返されるパス名の最後に " (deleted)" という文字列が付加されることがある。

関連項目
oprofile(1)

この文書について
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。