OpenAFS
OpenAFS distributed network file system
|
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)))))