nfs-ganesha 1.4
Functions

cache_content_flush.c File Reference

#include "LRU_List.h"
#include "log.h"
#include "HashData.h"
#include "HashTable.h"
#include "fsal.h"
#include "cache_inode.h"
#include "cache_content.h"
#include <unistd.h>
#include <sys/types.h>
#include <sys/param.h>
#include <time.h>
#include <pthread.h>
#include <errno.h>
#include <string.h>

Go to the source code of this file.

Functions

cache_content_status_t cache_content_flush (cache_content_entry_t *pentry, cache_content_flush_behaviour_t flushhow, cache_content_client_t *pclient, fsal_op_context_t *pcontext, cache_content_status_t *pstatus)
cache_content_status_t cache_content_refresh (cache_content_entry_t *pentry, cache_content_client_t *pclient, fsal_op_context_t *pcontext, cache_content_refresh_how_t how, cache_content_status_t *pstatus)
cache_content_status_t cache_content_sync_all (cache_content_client_t *pclient, fsal_op_context_t *pcontext, cache_content_status_t *pstatus)

Function Documentation

cache_content_status_t cache_content_flush ( cache_content_entry_t pentry,
cache_content_flush_behaviour_t  flushhow,
cache_content_client_t pclient,
fsal_op_context_t pcontext,
cache_content_status_t pstatus 
)

cache_content_flush: Flushes the content of a file in the local cache to the FSAL data.

Flushes the content of a file in the local cache to the FSAL data. This routine should be called only from the cache_inode layer.

No lock management is done in this layer: the related pentry in the cache inode layer is locked and will prevent from concurent accesses.

Parameters:
pentry[IN] entry in file content layer whose content is to be flushed.
flushhow[IN] should we delete the cached entry in local or not ?
pclient[IN] ressource allocated by the client for the nfs management. [OUT] returned status.
Returns:
CACHE_CONTENT_SUCCESS is successful .

Definition at line 78 of file cache_content_flush.c.

cache_content_status_t cache_content_refresh ( cache_content_entry_t pentry,
cache_content_client_t pclient,
fsal_op_context_t pcontext,
cache_content_refresh_how_t  how,
cache_content_status_t pstatus 
)

cache_content_refresh: Refreshes the whole content of a file in the local cache to the FSAL data.

Refreshes the whole content of a file in the local cache to the FSAL data. This routine should be called only from the cache_inode layer.

No lock management is done in this layer: the related pentry in the cache inode layer is locked and will prevent from concurent accesses.

Parameters:
pentry[IN] entry in file content layer whose content is to be flushed.
pclient[IN] ressource allocated by the client for the nfs management. [OUT] returned status.
Returns:
CACHE_CONTENT_SUCCESS is successful .
Todo:
: BUGAZOMEU: gestion de coherence de date a mettre en place

Definition at line 193 of file cache_content_flush.c.

cache_content_status_t cache_content_sync_all ( cache_content_client_t pclient,
fsal_op_context_t pcontext,
cache_content_status_t pstatus 
)

Definition at line 296 of file cache_content_flush.c.