volinfo: accept -sizeonly for -sizeOnly
[openafs.git] / src / vol / vg_cache_impl.h
1 /*
2  * Copyright 2009-2010, Sine Nomine Associates and others.
3  * All Rights Reserved.
4  *
5  * This software has been released under the terms of the IBM Public
6  * License.  For details, see the LICENSE file in the top-level source
7  * directory or online at http://www.openafs.org/dl/license10.html
8  */
9
10 /*
11  * demand attach fs
12  * volume group membership cache
13  */
14
15 #ifndef _AFS_VOL_VG_CACHE_IMPL_H
16 #define _AFS_VOL_VG_CACHE_IMPL_H 1
17
18 #define VVGC_SCAN_TBL_LEN 4096  /**< thread-local partition scan table size */
19
20 #include "vg_cache_impl_types.h"
21
22 extern VVGCache_hash_table_t VVGCache_hash_table;
23 extern VVGCache_t VVGCache;
24
25 extern int _VVGC_flush_part(struct DiskPartition64 * part);
26 extern int _VVGC_flush_part_r(struct DiskPartition64 * part);
27 extern int _VVGC_scan_start(struct DiskPartition64 * dp);
28 extern int _VVGC_state_change(struct DiskPartition64 * part,
29                               VVGCache_part_state_t state);
30 extern int _VVGC_entry_purge_r(struct DiskPartition64 * dp,
31                                VolumeId parent, VolumeId child);
32 extern int _VVGC_dlist_add_r(struct DiskPartition64 *dp,
33                              VolumeId parent, VolumeId child);
34 extern int _VVGC_dlist_del_r(struct DiskPartition64 *dp,
35                              VolumeId parent, VolumeId child);
36
37 #define VVGC_HASH(volumeId) (volumeId&(VolumeHashTable.Mask))
38
39 #endif /* _AFS_VOL_VG_CACHE_H */