OpenAFS
OpenAFS distributed network file system
/cygdrive/c/src/openafs/openafs.git/repo/src/afs/afs_cbqueue.h
00001 /*
00002  * Copyright 2000, International Business Machines Corporation and others.
00003  * All Rights Reserved.
00004  *
00005  * This software has been released under the terms of the IBM Public
00006  * License.  For details, see the LICENSE file in the top-level source
00007  * directory or online at http://www.openafs.org/dl/license10.html
00008  */
00009 
00010 /*
00011  * This package is used to actively manage the expiration of callbacks,
00012  * so that the rest of the cache manager doesn't need to compute
00013  * whether a callback has expired or not, but can tell with one simple
00014  * check, that is, whether the CStatd bit is on or off.
00015  */
00016 
00017 /* how many seconds in a slot */
00018 #define CBHTSLOTLEN 128
00019 /* how many slots in the table */
00020 #define CBHTSIZE    128
00021 /* 7 is LOG2(slotlen) */
00022 #define CBHash(t) ((t)>>7)
00023 
00024 #define CBQTOV(e)           ((struct vcache *)(((char *) (e)) - (((char *)(&(((struct vcache *)(e))->callsort))) - ((char *)(e)))))
 All Data Structures Files Functions Variables