Как предотвратить удаление dcache для экспортируемого каталога в NFSD?

#linux #nfs

#linux #nfs

Вопрос:

гуру!

Я изучаю код NFS в ядре Linux CentOS7.

И я хотел бы знать, как предотвратить удаление dcache для экспортируемого каталога в NFSD. Если dcache удален и воссоздан заново, хэш-ключ для кэша sunrpc для экспортируемого каталога изменяется и не может получить доступ к кешу sunrpc, поскольку хэш-ключ основан на адресе dcache.

снип из fs / export.c

 static int
svc_export_hash(struct svc_export *exp)
{
    int hash;

    hash = hash_ptr(exp->ex_client, EXPORT_HASHBITS);
    hash ^= hash_ptr(exp->ex_path.dentry, EXPORT_HASHBITS);
    hash ^= hash_ptr(exp->ex_path.mnt, EXPORT_HASHBITS);
    return hash;
}
 

Если вы укажете конкретный код с использованием ext2 и т.д., Это очень полезно для меня.
Я заранее благодарен вам.

С наилучшими пожеланиями.

Комментарии:

1. AFAIK, Linux имеет глобальный кэш страниц, общий для всех файловых систем, и нет способа закрепить или очистить некоторые выбранные области