lookup_dcookie(2)

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

LIBRARY
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.

ОШИБКИ

EFAULT
    Неверный буфер.

EINVAL
    При поиске в ядре не было зарегистрированных отображённых элементов маркёра/каталога или маркёр ссылается на некорректный элемент каталога.

ENAMETOOLONG
    Имя не помещается в буфере.

ENOMEM
    Ядро не может выделить память для временного буфера для пути.

EPERM
    Процесс не имеет мандата CAP_SYS_ADMIN для поиска значений маркёра.

ERANGE
    Буфер не был достаточно велик для хранения пути элемента каталога.

ВЕРСИИ
Available since Linux 2.5.43. The ENAMETOOLONG error return was added in Linux 2.5.70.

СТАНДАРТЫ
Вызов lookup_dcookie() есть только в Linux.

ЗАМЕЧАНИЯ
Вызов 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 (https://www.gnu.org/licenses/gpl-3.0.html) или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

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