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 <afsconfig.h>
14 #include "afs/param.h"
20 #include "afs/sysincludes.h" /* Standard vendor system headers */
21 #include "afsincludes.h" /* Afs-based standard headers */
22 #include "afs/afs_stats.h" /* statistics */
28 * various special purpose routines
31 afs_mpservice(void *a)
35 #ifdef AFS_SGI_VNODE_GLUE
36 #include <sys/invent.h>
37 extern mutex_t afs_init_kern_lock;
39 /* afs_init_kernel_config
41 * initialize vnode glue layer by testing for NUMA.
43 * 0 = no numa, 1 = has numa, -1 = test for numa.
46 afs_init_kernel_config(int flag)
48 static int afs_kern_inited = 0;
51 mutex_enter(&afs_init_kern_lock);
52 if (!afs_kern_inited) {
57 /* test for numa arch. */
58 /* Determine if thisis a NUMA platform. Currently, this is true
59 * only if it's an IP27 or IP35.
62 find_inventory((inventory_t *) NULL, INV_PROCESSOR,
63 INV_CPUBOARD, -1, -1, -1);
67 afs_is_numa_arch = ((pinv->inv_state == INV_IP27BOARD)
68 || (pinv->inv_state == INV_IP35BOARD))
71 afs_is_numa_arch = flag;
73 mutex_exit(&afs_init_kern_lock);
76 #endif /* AFS_SGI_VNODE_GLUE */
78 /* And just so we know what someone is _really_ running */
102 #endif /* AFS_SGI62_ENV */