1 // SPDX-License-Identifier: GPL-2.0 1 2 /* 3 * linux/arch/alpha/kernel/gct.c 4 */ 5 6 #include <linux/kernel.h> 7 #include <linux/types.h> 8 #include <linux/errno.h> 9 10 #include <asm/hwrpb.h> 11 #include <asm/gct.h> 12 13 int 14 gct6_find_nodes(gct6_node *node, gct6_search_s 15 { 16 gct6_search_struct *wanted; 17 int status = 0; 18 19 /* First check the magic number. */ 20 if (node->magic != GCT_NODE_MAGIC) { 21 printk(KERN_ERR "GCT Node MAGI 22 return -EINVAL; 23 } 24 25 /* Check against the search struct. * 26 for (wanted = search; 27 wanted && (wanted->type | wanted- 28 wanted++) { 29 if (node->type != wanted->type 30 continue; 31 if (node->subtype != wanted->s 32 continue; 33 34 /* Found it -- call out. */ 35 if (wanted->callout) 36 wanted->callout(node); 37 } 38 39 /* Now walk the tree, siblings first. 40 if (node->next) 41 status |= gct6_find_nodes(GCT_ 42 43 /* Then the children. */ 44 if (node->child) 45 status |= gct6_find_nodes(GCT_ 46 47 return status; 48 } 49
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.