1 /* 2 * Copyright (c) 2000-2003,2005 Silicon Graphics, Inc. 3 * All Rights Reserved. 4 * 5 * This program is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU General Public License as 7 * published by the Free Software Foundation. 8 * 9 * This program is distributed in the hope that it would be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 * 14 * You should have received a copy of the GNU General Public License 15 * along with this program; if not, write the Free Software Foundation, 16 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 17 */ 18 #ifndef __XFS_REFCACHE_H__ 19 #define __XFS_REFCACHE_H__ 20 21 #ifdef HAVE_REFCACHE 22 /* 23 * Maximum size (in inodes) for the NFS reference cache 24 */ 25 #define XFS_REFCACHE_SIZE_MAX 512 26 27 struct xfs_inode; 28 struct xfs_mount; 29 30 extern void xfs_refcache_insert(struct xfs_inode *); 31 extern void xfs_refcache_purge_ip(struct xfs_inode *); 32 extern void xfs_refcache_purge_mp(struct xfs_mount *); 33 extern void xfs_refcache_purge_some(struct xfs_mount *); 34 extern void xfs_refcache_resize(int); 35 extern void xfs_refcache_destroy(void); 36 37 extern void xfs_refcache_iunlock(struct xfs_inode *, uint); 38 39 #else 40 41 #define xfs_refcache_insert(ip) do { } while (0) 42 #define xfs_refcache_purge_ip(ip) do { } while (0) 43 #define xfs_refcache_purge_mp(mp) do { } while (0) 44 #define xfs_refcache_purge_some(mp) do { } while (0) 45 #define xfs_refcache_resize(size) do { } while (0) 46 #define xfs_refcache_destroy() do { } while (0) 47 48 #define xfs_refcache_iunlock(ip, flags) xfs_iunlock(ip, flags) 49 50 #endif 51 52 #endif /* __XFS_REFCACHE_H__ */ 53