netatalk  4.6.0
Free and Open Source Apple Filing Protocol (AFP) Server
Loading...
Searching...
No Matches
pfd_cache.h
Go to the documentation of this file.
1/* Parent-directory fd cache — module and threading contract documented in
2 * pfd_cache.c */
3
4#ifndef AFPD_PFD_CACHE_H
5#define AFPD_PFD_CACHE_H 1
6
7#include <sys/stat.h>
8
9#include <atalk/directory.h>
10
11#include "volume.h"
12
13/* One absolute re-ground probe per this many uses of a slot — the
14 * ground-truth bound on rename-away staleness (unit tests assert on it) */
15#define PFD_REGROUND_INTERVAL 256
16
17struct pfd_stats {
18 unsigned long long hits;
19 unsigned long long opens;
20 unsigned long long
22 unsigned long long probe_refreshes;
23 unsigned long long regrounds;
24 unsigned long long fallbacks;
25 unsigned long long purges;
26 unsigned long long path_repairs;
27};
28
29extern int pfd_ostat(const struct vol *vol, struct dir *entry,
30 struct stat *st, int options);
31extern void pfd_purge(uint16_t vid, cnid_t did);
32extern void pfd_purge_vol(uint16_t vid);
33extern void pfd_shutdown(void);
34extern void pfd_log_stats(void);
35extern void pfd_stats_get(struct pfd_stats *out);
36
37#endif /* AFPD_PFD_CACHE_H */
uint32_t cnid_t
Definition adouble.h:157
cnid_t did
Definition nad_cp.c:92
void pfd_shutdown(void)
Definition pfd_cache.c:360
void pfd_purge_vol(uint16_t vid)
Definition pfd_cache.c:346
void pfd_log_stats(void)
Definition pfd_cache.c:376
void pfd_purge(uint16_t vid, cnid_t did)
Definition pfd_cache.c:330
void pfd_stats_get(struct pfd_stats *out)
Definition pfd_cache.c:371
int pfd_ostat(const struct vol *vol, struct dir *entry, struct stat *st, int options)
ostat(cfrombstr(entry->d_fullpath), st, options), accelerated.
Definition pfd_cache.c:288
Definition include/atalk/directory.h:72
Definition ad_open.c:96
Definition pfd_cache.h:17
unsigned long long sync_refreshes
Definition pfd_cache.h:21
unsigned long long path_repairs
Definition pfd_cache.h:26
unsigned long long fallbacks
Definition pfd_cache.h:24
unsigned long long purges
Definition pfd_cache.h:25
unsigned long long hits
Definition pfd_cache.h:18
unsigned long long opens
Definition pfd_cache.h:19
unsigned long long regrounds
Definition pfd_cache.h:23
unsigned long long probe_refreshes
Definition pfd_cache.h:22
Definition include/atalk/volume.h:33