comment faire pour désactiver la mise en cache dans CIFS (samba) sur le côté client sous linux

avons développé une application de s'exécuter sur une cible avec le noyau 2.6.10. Un dossier partagé sur un ordinateur windows est monté via la commande:

mount -t cifs -o username=xxx,password=xxx,forcedirectio //192.168.170.67/57 /fsRecord

Comme vous pouvez le comprendre à partir de l'option de commande forcedirectio, je veux désactiver la mise en cache côté client. Mais je ne peux pas.

La quantité de mémoire RAM disponible sur la cible est de 40 MO. Quand je copie un fichier de la taille d'environ 10 mo, mémoire vive disponible de la taille diminue à 30 MO.

Le noyau 2.6.10 utilise cifs.1.28. J'ai également réglé oplockEnabled à 0 (dans le code source et /proc/fs/cifs/OplockEnabled). Mais il n'a pas arrêté de mise en cache. Comment puis-je désactiver la mise en cache sur le client cifs pour de vrai?

OriginalL'auteur shaneess | 2013-02-17