afs: clarify cold and warm shutdown logic
[openafs.git] / src / afs / afs_prototypes.h
index c0b00c6..77eb1f8 100644 (file)
@@ -31,10 +31,16 @@ extern void shutdown_bufferpackage(void);
 /* afs_call.c */
 extern int afs_cold_shutdown;
 extern char afs_rootVolumeName[MAXROOTVOLNAMELEN];
-extern void afs_shutdown(void);
 extern void afs_FlushCBs(void);
 extern int afs_CheckInit(void);
-extern void afs_shutdown(void);
+/* for afs_shutdown */
+enum afs_shutdown_type {
+       AFS_WARM = 0,
+       AFS_COLD = 1,
+};
+extern void afs_shutdown(enum afs_shutdown_type);
+
+
 extern void shutdown_afstest(void);
 extern int afs_syscall_call(long parm, long parm2, long parm3,
                            long parm4, long parm5, long parm6);
@@ -265,6 +271,7 @@ extern struct dcache *afs_FindDCache(struct vcache *avc,
 extern void afs_StoreWarn(afs_int32 acode, afs_int32 avolume,
                          afs_int32 aflags);
 extern void afs_MaybeWakeupTruncateDaemon(void);
+extern void afs_MaybeWaitForCacheDrain(void);
 extern void afs_CacheTruncateDaemon(void);
 extern void afs_AdjustSize(struct dcache *adc,
                           afs_int32 newSize);
@@ -358,10 +365,7 @@ extern int afs_icl_CreateLogWithFlags(char *name, afs_int32 logSize,
 extern int afs_icl_CopyOut(struct afs_icl_log *logp,
                           afs_int32 * bufferp, afs_int32 * bufSizep,
                           afs_uint32 * cookiep, afs_int32 * flagsp);
-extern int afs_icl_GetLogParms(struct afs_icl_log *logp, afs_int32 * maxSizep,
-                              afs_int32 * curSizep);
 extern int afs_icl_LogHold(struct afs_icl_log *logp);
-extern int afs_icl_LogHoldNL(struct afs_icl_log *logp);
 extern int afs_icl_LogUse(struct afs_icl_log *logp);
 extern int afs_icl_LogFreeUse(struct afs_icl_log *logp);
 extern int afs_icl_LogSetSize(struct afs_icl_log *logp,
@@ -372,11 +376,6 @@ extern int afs_icl_LogReleNL(struct afs_icl_log *logp);
 extern int afs_icl_ZeroLog(struct afs_icl_log *logp);
 extern int afs_icl_LogFree(struct afs_icl_log *logp);
 extern struct afs_icl_log *afs_icl_FindLog(char *name);
-extern int
-  afs_icl_EnumerateLogs(int (*aproc)
-
-                         (char *name, char *arock, struct afs_icl_log * tp),
-                       char *arock);
 extern int afs_icl_CreateSet(char *name, struct afs_icl_log *baseLogp,
                             struct afs_icl_log *fatalLogp,
                             struct afs_icl_set **outSetpp);
@@ -385,18 +384,7 @@ extern int afs_icl_CreateSetWithFlags(char *name,
                                      struct afs_icl_log *fatalLogp,
                                      afs_uint32 flags,
                                      struct afs_icl_set **outSetpp);
-extern int afs_icl_SetEnable(struct afs_icl_set *setp, afs_int32 eventID,
-                            int setValue);
-extern int afs_icl_GetEnable(struct afs_icl_set *setp, afs_int32 eventID,
-                            int *getValuep);
 extern int afs_icl_ZeroSet(struct afs_icl_set *setp);
-extern int
-  afs_icl_EnumerateSets(int (*aproc)
-
-                         (char *name, char *arock, struct afs_icl_log * tp),
-                       char *arock);
-extern int afs_icl_AddLogToSet(struct afs_icl_set *setp,
-                              struct afs_icl_log *newlogp);
 extern int afs_icl_SetSetStat(struct afs_icl_set *setp, int op);
 extern int afs_icl_SetHold(struct afs_icl_set *setp);
 extern int afs_icl_ZapSet(struct afs_icl_set *setp);
@@ -911,6 +899,10 @@ extern struct afs_stats_CMFullPerf afs_stats_cmfullperf;
 extern afs_int32 afs_stats_XferSumBytes[AFS_STATS_NUM_FS_XFER_OPS];
 extern void afs_InitStats(void);
 
+/* ARCH/osi_kstat.c */
+extern void afs_kstat_init(void);
+extern void afs_kstat_shutdown(void);
+
 /* afs_syscall.c */
 #ifdef AFS_DARWIN100_ENV
 extern int copyin_afs_ioctl(user_addr_t cmarg, struct afs_ioctl *dst);