Я пишу составную файловую систему, которая по умолчанию переименовывает несвязанные файлы в определенную папку, например, abc. Так как любой файл / xyz не связан, он переименовывается в / abc / xyz. Я хочу сделать это, переопределив функцию unlink стековой файловой системы. Я использую wrapfs, поэтому я изменяю wrapfs_unlink для этого. У меня есть dentry несвязанного файла, также у меня есть inode родительского каталога, теперь мне нужно иметь inode из / abc и dentry из / abc / xyz для вызова vfs_rename вместо vfs_unlink. Я мог найти dentry и vfsmount для /, поэтому у меня есть dentry для /, но я не знаю, как получить dentry / inode для / abc. Я знаю, что я могу получить inode из dentry, но я также не могу получить dentry. Я пытался использовать lookup_one_len / abc, но он по-прежнему возвращает отрицательный индекс, также я пытался использовать vfs_path_lookup, чтобы найти каталог / abc, который также возвращает ошибку. Я использую неправильные функции? Или эти методы видят только кеш, а не фактическую структуру каталогов? Пожалуйста, помогите.