lookup_dcookie(2) System Calls Manual lookup_dcookie(2)

ИМЯ

lookup_dcookie - возвращает путь элемента каталога

Standard C library (libc, -lc)

СИНТАКСИС

#include <sys/syscall.h>      /* определения констант SYS_* */
#include <unistd.h>
int syscall(SYS_lookup_dcookie, uint64_t cookie, char *buffer,
            size_t len);

Note: glibc provides no wrapper for lookup_dcookie(), necessitating the use of syscall(2).

ОПИСАНИЕ

Ищет полный путь элемента каталога, указанного в параметре cookie. Маркёр (cookie) представляет собой простейший идентификатор, уникально определяющий отдельный элемент каталога. Указанный буфер заполняется полным путём элемента каталога.

Для успешного выполнения lookup_dcookie() ядро должно удерживать ссылку маркёра на элемент каталога.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

On success, lookup_dcookie() returns the length of the path string copied into the buffer. On error, -1 is returned, and errno is set to indicate the error.

ОШИБКИ

Неверный буфер.
При поиске в ядре не было зарегистрированных отображённых элементов маркёра/каталога или маркёр ссылается на некорректный элемент каталога.
Имя не помещается в буфере.
Ядро не может выделить память для временного буфера для пути.
Процесс не имеет мандата CAP_SYS_ADMIN для поиска значений маркёра.
Буфер не был достаточно велик для хранения пути элемента каталога.

СТАНДАРТЫ

Linux.

ИСТОРИЯ

Linux 2.5.43.

The ENAMETOOLONG error was added in Linux 2.5.70.

ЗАМЕЧАНИЯ

Вызов lookup_dcookie() является специальным системным вызовом, в данный момент используется только программой профилирования oprofile(1). Она полагается на регистрацию драйвером ядра маркёра для элементов каталога.

Возвращаемый путь может заканчиваться строкой « (deleted)», если элемент каталога был удалён.

СМ. ТАКЖЕ

oprofile(1)

ПЕРЕВОД

Русский перевод этой страницы руководства был сделан Artyom Kunyov <artkun@guitarplayer.ru>, Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Katrin Kutepova <blackkatelv@gmail.com>, Konstantin Shvaykovskiy <kot.shv@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.

31 октября 2023 г. Linux man-pages 6.06