Не удается отслеживать REQ_OP_DISCARD в запросе структуры - PullRequest
0 голосов
/ 11 марта 2020

Я пытаюсь отслеживать I/O с помощью eBPF. Ниже упоминается моя спецификация сервера

(Ubuntu 18.04, kernel 5.2, virtual machine)

Я присоединяю kprobe к функции blk_mq_start_request , и я отслеживаю тип запроса, проверяя поле cmd_flags в запросе структуры , В результате я вижу REQ_OP_READ и REQ_OP_WRITE. Несмотря на попытку удалить файл, REQ_OP_DISCARD ...

не вызывается системный вызов unlink при удалении файла, и, похоже, это приводит к функции blk_mq_start_request, но я не могу найти, почему REQ_OP_DISCARD не отображается.

(Как ни странно, запросы на сброс отображаются в blktrace. Похоже, что на био-уровне существует сброс ввода / вывода).

...