ReactOS 0.4.16-dev-752-g47bae01
|
#include <windows.h>
#include <strsafe.h>
#include <time.h>
#include <assert.h>
#include "nfs41_ops.h"
#include "nfs41_compound.h"
#include "name_cache.h"
#include "util.h"
#include "tree.h"
#include "daemon_debug.h"
Go to the source code of this file.
Classes | |
struct | attr_cache_entry |
struct | attr_cache |
struct | name_cache_entry |
struct | nfs41_name_cache |
Macros | |
#define | NAME_CACHE_EXPIRATION 20 /* TODO: get from configuration */ |
#define | NAME_CACHE_MAX_SIZE 262144 |
#define | ATTR_ENTRY_SIZE sizeof(struct attr_cache_entry) |
#define | attr_entry(pos) list_container(pos, struct attr_cache_entry, free_entry) |
#define | NAME_ENTRY_SIZE sizeof(struct name_cache_entry) |
#define | name_entry(pos) list_container(pos, struct name_cache_entry, exp_entry) |
#define | SIZE_PER_ENTRY (ATTR_ENTRY_SIZE + NAME_ENTRY_SIZE) |
#define | NAME_CACHE_MAX_ENTRIES (NAME_CACHE_MAX_SIZE / SIZE_PER_ENTRY) |
#define | MAX_PUTFH_PER_COMPOUND 16 |
Enumerations | |
enum | { NCLVL1 = 2 , NCLVL2 } |
#define attr_entry | ( | pos | ) | list_container(pos, struct attr_cache_entry, free_entry) |
Definition at line 121 of file name_cache.c.
#define ATTR_ENTRY_SIZE sizeof(struct attr_cache_entry) |
Definition at line 103 of file name_cache.c.
#define MAX_PUTFH_PER_COMPOUND 16 |
Definition at line 1231 of file name_cache.c.
Definition at line 42 of file name_cache.c.
#define NAME_CACHE_MAX_ENTRIES (NAME_CACHE_MAX_SIZE / SIZE_PER_ENTRY) |
Definition at line 750 of file name_cache.c.
#define NAME_CACHE_MAX_SIZE 262144 |
Definition at line 45 of file name_cache.c.
#define name_entry | ( | pos | ) | list_container(pos, struct name_cache_entry, exp_entry) |
Definition at line 399 of file name_cache.c.
#define NAME_ENTRY_SIZE sizeof(struct name_cache_entry) |
Definition at line 373 of file name_cache.c.
#define SIZE_PER_ENTRY (ATTR_ENTRY_SIZE + NAME_ENTRY_SIZE) |
Definition at line 749 of file name_cache.c.
anonymous enum |
Enumerator | |
---|---|
NCLVL1 | |
NCLVL2 |
Definition at line 36 of file name_cache.c.
|
static |
Definition at line 123 of file name_cache.c.
Referenced by attr_cache_find_or_create().
|
static |
Definition at line 166 of file name_cache.c.
Referenced by name_cache_entry_update(), name_cache_unlink(), and nfs41_name_cache_delegreturn().
Definition at line 178 of file name_cache.c.
Referenced by entry_invis(), and nfs41_attr_cache_lookup().
|
static |
Definition at line 147 of file name_cache.c.
Referenced by attr_cache_entry_deref(), and attr_cache_find_or_create().
|
static |
Definition at line 157 of file name_cache.c.
Referenced by attr_cache_find_or_create(), and name_cache_entry_update().
|
static |
Definition at line 244 of file name_cache.c.
Referenced by name_cache_entry_update(), and nfs41_name_cache_insert().
|
static |
Definition at line 210 of file name_cache.c.
Referenced by nfs41_name_cache_free().
Definition at line 186 of file name_cache.c.
Referenced by nfs41_name_cache_create().
|
static |
Definition at line 229 of file name_cache.c.
Referenced by attr_cache_find_or_create().
|
static |
Definition at line 219 of file name_cache.c.
Referenced by attr_cache_find_or_create(), nfs41_attr_cache_lookup(), nfs41_attr_cache_update(), nfs41_name_cache_delegreturn(), and nfs41_name_cache_remove().
|
static |
Definition at line 282 of file name_cache.c.
Referenced by name_cache_entry_update(), nfs41_attr_cache_update(), and nfs41_name_cache_insert().
int attr_cmp | ( | struct attr_cache_entry * | lhs, |
struct attr_cache_entry * | rhs | ||
) |
Definition at line 113 of file name_cache.c.
Referenced by VfdMakeFileDesc().
|
static |
Definition at line 329 of file name_cache.c.
Referenced by nfs41_attr_cache_lookup(), and nfs41_name_cache_lookup().
|
static |
Definition at line 814 of file name_cache.c.
Referenced by nfs41_name_cache_lookup().
|
static |
Definition at line 1327 of file name_cache.c.
Referenced by nfs41_name_cache_remove_stale().
|
static |
Definition at line 624 of file name_cache.c.
Referenced by get_path_fhs(), and name_cache_lookup().
|
static |
Definition at line 1233 of file name_cache.c.
Referenced by nfs41_name_cache_remove_stale().
|
static |
Definition at line 72 of file name_cache.c.
Referenced by attr_cache_update(), name_cache_entry_update(), and nfs41_name_cache_insert().
|
static |
Definition at line 1352 of file name_cache.c.
Referenced by nfs41_name_cache_remove_stale().
|
static |
Definition at line 401 of file name_cache.c.
Referenced by nfs41_attr_cache_lookup(), nfs41_attr_cache_update(), nfs41_name_cache_delegreturn(), nfs41_name_cache_insert(), nfs41_name_cache_lookup(), nfs41_name_cache_remove(), nfs41_name_cache_remove_stale(), and nfs41_name_cache_rename().
|
static |
Definition at line 492 of file name_cache.c.
Referenced by name_cache_entry_updated().
|
static |
Definition at line 563 of file name_cache.c.
Referenced by nfs41_name_cache_insert(), nfs41_name_cache_remove(), and nfs41_name_cache_rename().
|
static |
Definition at line 459 of file name_cache.c.
Referenced by name_cache_find_or_create(), and nfs41_name_cache_insert().
|
static |
Definition at line 587 of file name_cache.c.
Referenced by nfs41_name_cache_insert(), nfs41_name_cache_remove(), and nfs41_name_cache_rename().
|
static |
Definition at line 407 of file name_cache.c.
Referenced by name_cache_entry_create(), and nfs41_name_cache_rename().
|
static |
Definition at line 519 of file name_cache.c.
Referenced by nfs41_name_cache_insert(), nfs41_name_cache_remove(), and nfs41_name_cache_rename().
|
static |
Definition at line 510 of file name_cache.c.
Referenced by name_cache_entry_changed(), name_cache_entry_update(), and nfs41_name_cache_delegreturn().
|
static |
Definition at line 712 of file name_cache.c.
Referenced by nfs41_name_cache_insert(), and nfs41_name_cache_rename().
|
static |
Definition at line 696 of file name_cache.c.
Referenced by name_cache_find_or_create(), and nfs41_name_cache_rename().
|
static |
Definition at line 648 of file name_cache.c.
Referenced by delete_stale_component(), get_path_fhs(), nfs41_name_cache_delegreturn(), nfs41_name_cache_insert(), nfs41_name_cache_lookup(), nfs41_name_cache_remove(), and nfs41_name_cache_rename().
|
static |
Definition at line 416 of file name_cache.c.
Referenced by name_cache_unlink(), and nfs41_name_cache_rename().
|
static |
Definition at line 601 of file name_cache.c.
Referenced by get_path_fhs(), name_cache_find_or_create(), name_cache_lookup(), and nfs41_name_cache_rename().
|
static |
Definition at line 428 of file name_cache.c.
Referenced by delete_stale_component(), name_cache_entry_create(), name_cache_entry_invalidate(), name_cache_unlink_children_recursive(), and nfs41_name_cache_rename().
|
static |
Definition at line 450 of file name_cache.c.
Referenced by name_cache_unlink(), nfs41_name_cache_remove(), and nfs41_name_cache_rename().
int name_cmp | ( | struct name_cache_entry * | lhs, |
struct name_cache_entry * | rhs | ||
) |
Definition at line 375 of file name_cache.c.
int nfs41_attr_cache_lookup | ( | IN struct nfs41_name_cache * | cache, |
IN uint64_t | fileid, | ||
OUT nfs41_file_info * | info_out | ||
) |
Definition at line 859 of file name_cache.c.
Referenced by nfs41_cached_getattr(), and nfs41_delegation_getattr().
int nfs41_attr_cache_update | ( | IN struct nfs41_name_cache * | cache, |
IN uint64_t | fileid, | ||
IN const nfs41_file_info * | info | ||
) |
Definition at line 891 of file name_cache.c.
Referenced by nfs41_close(), nfs41_commit(), nfs41_create(), nfs41_getattr(), nfs41_link(), nfs41_remove(), nfs41_rename(), nfs41_setattr(), nfs41_write(), open_update_cache(), and pnfs_rpc_layoutcommit().
int nfs41_name_cache_create | ( | OUT struct nfs41_name_cache ** | cache_out | ) |
Definition at line 752 of file name_cache.c.
Referenced by server_create().
int nfs41_name_cache_delegreturn | ( | IN struct nfs41_name_cache * | cache, |
IN uint64_t | fileid, | ||
IN const char * | path, | ||
IN const nfs41_component * | name | ||
) |
Definition at line 1012 of file name_cache.c.
Referenced by nfs41_delegreturn().
int nfs41_name_cache_free | ( | IN struct nfs41_name_cache ** | cache_out | ) |
Definition at line 796 of file name_cache.c.
Referenced by server_free().
int nfs41_name_cache_insert | ( | IN struct nfs41_name_cache * | cache, |
IN const char * | path, | ||
IN const nfs41_component * | name, | ||
IN OPTIONAL const nfs41_fh * | fh, | ||
IN OPTIONAL const nfs41_file_info * | info, | ||
IN OPTIONAL const change_info4 * | cinfo, | ||
IN enum open_delegation_type4 | delegation | ||
) |
Definition at line 923 of file name_cache.c.
Referenced by nfs41_create(), nfs41_link(), open_update_cache(), and server_lookup().
int nfs41_name_cache_lookup | ( | IN struct nfs41_name_cache * | cache, |
IN const char * | path, | ||
IN const char * | path_end, | ||
OUT OPTIONAL const char ** | remaining_path_out, | ||
OUT OPTIONAL nfs41_fh * | parent_out, | ||
OUT OPTIONAL nfs41_fh * | target_out, | ||
OUT OPTIONAL nfs41_file_info * | info_out, | ||
OUT OPTIONAL bool_t * | is_negative | ||
) |
Definition at line 824 of file name_cache.c.
Referenced by nfs41_lookup().
int nfs41_name_cache_remove | ( | IN struct nfs41_name_cache * | cache, |
IN const char * | path, | ||
IN const nfs41_component * | name, | ||
IN uint64_t | fileid, | ||
IN const change_info4 * | cinfo | ||
) |
Definition at line 1066 of file name_cache.c.
Referenced by nfs41_remove().
int nfs41_name_cache_remove_stale | ( | IN struct nfs41_name_cache * | cache, |
IN nfs41_session * | session, | ||
IN nfs41_abs_path * | path | ||
) |
Definition at line 1359 of file name_cache.c.
Referenced by compound_encode_send_decode().
int nfs41_name_cache_rename | ( | IN struct nfs41_name_cache * | cache, |
IN const char * | src_path, | ||
IN const nfs41_component * | src_name, | ||
IN const change_info4 * | src_cinfo, | ||
IN const char * | dst_path, | ||
IN const nfs41_component * | dst_name, | ||
IN const change_info4 * | dst_cinfo | ||
) |
Definition at line 1122 of file name_cache.c.
Referenced by nfs41_rename().
RB_HEAD | ( | attr_tree | , |
attr_cache_entry | |||
) |
RB_HEAD | ( | name_tree | , |
name_cache_entry | |||
) |
|
static |
Definition at line 1283 of file name_cache.c.
Referenced by nfs41_name_cache_remove_stale().