Как я могу получить содержимое страницы со структурой страницы? - PullRequest
0 голосов
/ 08 января 2020

В настоящее время я ищу исходный код ядра для кэша страниц.

Я получил struct page (include/linux/mm_type.h), и я хочу прочитать и сохранить реальное содержимое этого дескриптора страницы, на которое указывает.

Я нашел address_space_operations и, кажется, может помочь мне, но я не знаю, как они работают и как их использовать. Кроме того, aops->readpage получить structure file в качестве аргумента, которого у меня нет.

Что я хочу сделать, это просто напечатать содержимое кэша страницы (с помощью printk).

1 Ответ

0 голосов
/ 09 января 2020

Не уверен, но, возможно, более безопасный подход использует kmap() из linux/highmem.h, который вернет связанный виртуальный адрес, если страница уже сопоставлена, или создаст сопоставление для данной страницы и вернет адрес для того же, который вы может разыменовываться от вашего модуля.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...