patch-2.1.76 linux/include/linux/coda_cache.h
Next file: linux/include/linux/coda_opstats.h
Previous file: linux/include/asm-i386/bugs.h
Back to the patch index
Back to the overall index
- Lines: 81
- Date:
Mon Dec 22 08:40:59 1997
- Orig file:
v2.1.75/linux/include/linux/coda_cache.h
- Orig date:
Wed Dec 31 16:00:00 1969
diff -u --recursive --new-file v2.1.75/linux/include/linux/coda_cache.h linux/include/linux/coda_cache.h
@@ -0,0 +1,80 @@
+/* Coda filesystem -- Linux Minicache
+ *
+ * Copyright (C) 1989 - 1997 Carnegie Mellon University
+ *
+ * Carnegie Mellon University encourages users of this software to
+ * contribute improvements to the Coda project. Contact Peter Braam
+ * <coda@cs.cmu.edu>
+ */
+
+#ifndef _CFSNC_HEADER_
+#define _CFSNC_HEADER_
+
+/*
+ * Structure for an element in the Coda Credential Cache.
+ */
+
+struct coda_cache {
+ struct list_head cc_cclist; /* list of all cache entries */
+ struct list_head cc_cnlist; /* list of cache entries/cnode */
+ int cc_mask;
+ struct coda_cred cc_cred;
+};
+
+void coda_ccinsert(struct coda_cache *el, struct super_block *sb);
+void coda_cninsert(struct coda_cache *el, struct cnode *cnp);
+void coda_ccremove(struct coda_cache *el);
+void coda_cnremove(struct coda_cache *el);
+void coda_cache_create(struct inode *inode, int mask);
+struct coda_cache *coda_cache_find(struct inode *inode);
+void coda_cache_enter(struct inode *inode, int mask);
+void coda_cache_clear_cnp(struct cnode *cnp);
+void coda_cache_clear_all(struct super_block *sb);
+void coda_cache_clear_cred(struct super_block *sb, struct coda_cred *cred);
+int coda_cache_check(struct inode *inode, int mask);
+void coda_dentry_delete(struct dentry *dentry);
+void coda_zapfid(struct ViceFid *fid, struct super_block *sb, int flag);
+
+
+/*
+ * Structure to contain statistics on the cache usage
+ */
+
+struct cfsnc_statistics {
+ unsigned hits;
+ unsigned misses;
+ unsigned enters;
+ unsigned dbl_enters;
+ unsigned long_name_enters;
+ unsigned long_name_lookups;
+ unsigned long_remove;
+ unsigned lru_rm;
+ unsigned zapPfids;
+ unsigned zapFids;
+ unsigned zapFile;
+ unsigned zapUsers;
+ unsigned Flushes;
+ unsigned Sum_bucket_len;
+ unsigned Sum2_bucket_len;
+ unsigned Max_bucket_len;
+ unsigned Num_zero_len;
+ unsigned Search_len;
+};
+
+
+#define CFSNC_FIND ((u_long) 1)
+#define CFSNC_REMOVE ((u_long) 2)
+#define CFSNC_INIT ((u_long) 3)
+#define CFSNC_ENTER ((u_long) 4)
+#define CFSNC_LOOKUP ((u_long) 5)
+#define CFSNC_ZAPPFID ((u_long) 6)
+#define CFSNC_ZAPFID ((u_long) 7)
+#define CFSNC_ZAPVNODE ((u_long) 8)
+#define CFSNC_ZAPFILE ((u_long) 9)
+#define CFSNC_PURGEUSER ((u_long) 10)
+#define CFSNC_FLUSH ((u_long) 11)
+#define CFSNC_PRINTCFSNC ((u_long) 12)
+#define CFSNC_PRINTSTATS ((u_long) 13)
+#define CFSNC_REPLACE ((u_long) 14)
+
+#endif _CFSNC_HEADER_
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov