Что делает cluster_read?
Проходил через код расширения ядра osxfuse (версия 2.9.7) и читал
int fuse_vnop_read(struct vnop_read_args *ap)
https://github.com/osxfuse/kext/blob/master/osxfuse/fuse_vnops.c#L2667
я полагаю, что это функции чтения, вызываемые уровнем vnode в драйвер osxfuse. И я нашел cluster_read
функционировать внутри него загадка.
Что оно делает? Он проверяет UBC, чтобы увидеть, есть ли данные и использовать его? Это также делает связь с процессом fuse userspace, чтобы получить прочитанные данные и заполнить в UBC, если данных там нет? Я, конечно, скучаю по многим вещам здесь.