2 * Copyright 2000, International Business Machines Corporation and others.
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
11 * Implementation of miscellaneous Irix routines.
13 #include "../afs/param.h" /* Should be always first */
15 #include "../afs/sysincludes.h" /* Standard vendor system headers */
16 #include "../afs/afsincludes.h" /* Afs-based standard headers */
17 #include "../afs/afs_stats.h" /* statistics */
23 * various special purpose routines
25 void afs_mpservice(void *a) {}
27 #ifdef AFS_SGI_VNODE_GLUE
28 #include <sys/invent.h>
29 extern mutex_t afs_init_kern_lock;
31 /* afs_init_kernel_config
33 * initialize vnode glue layer by testing for NUMA.
35 * 0 = no numa, 1 = has numa, -1 = test for numa.
37 int afs_init_kernel_config(int flag)
39 static int afs_kern_inited = 0;
42 mutex_enter(&afs_init_kern_lock);
43 if (!afs_kern_inited) {
48 /* test for numa arch. */
49 /* Determine if thisis a NUMA platform. Currently, this is true
50 * only if it's an IP27.
52 pinv = find_inventory((inventory_t*)NULL, INV_PROCESSOR,
53 INV_CPUBOARD, -1, -1, -1);
57 afs_is_numa_arch = (pinv->inv_state == INV_IP27BOARD) ? 1 : 0;
60 afs_is_numa_arch = flag;
62 mutex_exit(&afs_init_kern_lock);
65 #endif /* AFS_SGI_VNODE_GLUE */
67 /* And just so we know what someone is _really_ running */
89 #endif /* AFS_SGI62_ENV */