Нахождение цели в файловой системе ext4
Файл extents.c (fs/ext4/extents.c) в ядре Linux 4.7.2 посвящен методам размещения файлов.
ar.goal вычисляется функцией ext4_ext_find_goal
ar.goal = ext4_ext_find_goal(inode, path, map->m_lblk);
Кто-нибудь может объяснить, как работает эта функция?
1 ответ
ext4_ext_find_goal()
вызывается, когда нам нужно выделить новый блок.
Здесь эта функция вызывается, как вы сказали.
ar.goal = ext4_ext_find_goal(inode, path, map->m_lblk);
В данном контексте, path
не NULL. Так, ext4_ext_find_goal()
найдет номер блока этого path
и вернуть этот номер блока.