Как получить точку монтирования для заданного пути в пользовательском модуле ядра linux - PullRequest
2 голосов
/ 12 апреля 2020

Как видно из названия, у меня проблема с моим пользовательским модулем ядра. Моя цель - получить точку монтирования root указанного пути. Как и при использовании df:

df "/tmp/some_dir/some_file"
vvvvvvvv out vvvvvvvv
Filesystem     1K-blocks  Used Available Use% Mounted on <---
tmpfs            8125932   120   8125812   1% /tmp <----

Я пытался добиться этого с помощью структуры пути, используя поля mnt и dentry, но когда я печатал mnt_ root или суперблок root, он всегда возвращал '/', поэтому не связанная точка крепления.

Может я просто копаю не в том месте. Я не знаю, являются ли path / dentry / et c ... подходящими структурами для этих операций (я начинаю свое приключение с модулями ядра и, вероятно, перебиваю его: D)

Версия ядра : 5.6.2

Спасибо за совет!

1 Ответ

0 голосов
/ 25 апреля 2020

Мне удалось достичь своей цели!

Оказывается, в namei есть функция follow_up . c, которая делает именно то, что мне нужно.

...