linux/include/linux/node.h
<<
>>
Prefs
   1/*
   2 * include/linux/node.h - generic node definition
   3 *
   4 * This is mainly for topological representation. We define the 
   5 * basic 'struct node' here, which can be embedded in per-arch 
   6 * definitions of processors.
   7 *
   8 * Basic handling of the devices is done in drivers/base/node.c
   9 * and system devices are handled in drivers/base/sys.c. 
  10 *
  11 * Nodes are exported via driverfs in the class/node/devices/
  12 * directory. 
  13 *
  14 * Per-node interfaces can be implemented using a struct device_interface. 
  15 * See the following for how to do this: 
  16 * - drivers/base/intf.c 
  17 * - Documentation/driver-model/interface.txt
  18 */
  19#ifndef _LINUX_NODE_H_
  20#define _LINUX_NODE_H_
  21
  22#include <linux/sysdev.h>
  23#include <linux/cpumask.h>
  24
  25struct node {
  26        struct sys_device       sysdev;
  27};
  28
  29extern struct node node_devices[];
  30
  31extern int register_node(struct node *, int, struct node *);
  32extern void unregister_node(struct node *node);
  33#ifdef CONFIG_NUMA
  34extern int register_one_node(int nid);
  35extern void unregister_one_node(int nid);
  36extern int register_cpu_under_node(unsigned int cpu, unsigned int nid);
  37extern int unregister_cpu_under_node(unsigned int cpu, unsigned int nid);
  38#else
  39static inline int register_one_node(int nid)
  40{
  41        return 0;
  42}
  43static inline int unregister_one_node(int nid)
  44{
  45        return 0;
  46}
  47static inline int register_cpu_under_node(unsigned int cpu, unsigned int nid)
  48{
  49        return 0;
  50}
  51static inline int unregister_cpu_under_node(unsigned int cpu, unsigned int nid)
  52{
  53        return 0;
  54}
  55#endif
  56
  57#define to_node(sys_device) container_of(sys_device, struct node, sysdev)
  58
  59#endif /* _LINUX_NODE_H_ */
  60
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.