1#ifndef _LINUX_CPUSET_H 2#define _LINUX_CPUSET_H 3/* 4 * cpuset interface 5 * 6 * Copyright (C) 2003 BULL SA 7 * Copyright (C) 2004 Silicon Graphics, Inc. 8 * 9 */ 10 11#include <linux/sched.h> 12#include <linux/cpumask.h> 13#include <linux/nodemask.h> 14 15#ifdef CONFIG_CPUSETS 16 17extern int cpuset_init(void); 18extern void cpuset_init_smp(void); 19extern void cpuset_fork(struct task_struct *p); 20extern void cpuset_exit(struct task_struct *p); 21extern cpumask_t cpuset_cpus_allowed(const struct task_struct *p); 22void cpuset_init_current_mems_allowed(void); 23void cpuset_update_current_mems_allowed(void); 24void cpuset_restrict_to_mems_allowed(unsigned long *nodes); 25int cpuset_zonelist_valid_mems_allowed(struct zonelist *zl); 26extern int cpuset_zone_allowed(struct zone *z, gfp_t gfp_mask); 27extern int cpuset_excl_nodes_overlap(const struct task_struct *p); 28extern struct file_operations proc_cpuset_operations; 29extern char *cpuset_task_status_allowed(struct task_struct *task, char *buffer); 30 31#else /* !CONFIG_CPUSETS */ 32 33static inline int cpuset_init(void) { return 0; } 34static inline void cpuset_init_smp(void) {} 35static inline void cpuset_fork(struct task_struct *p) {} 36static inline void cpuset_exit(struct task_struct *p) {} 37 38static inline cpumask_t cpuset_cpus_allowed(struct task_struct *p) 39{ 40 return cpu_possible_map; 41} 42 43static inline void cpuset_init_current_mems_allowed(void) {} 44static inline void cpuset_update_current_mems_allowed(void) {} 45static inline void cpuset_restrict_to_mems_allowed(unsigned long *nodes) {} 46 47static inline int cpuset_zonelist_valid_mems_allowed(struct zonelist *zl) 48{ 49 return 1; 50} 51 52static inline int cpuset_zone_allowed(struct zone *z, gfp_t gfp_mask) 53{ 54 return 1; 55} 56 57static inline int cpuset_excl_nodes_overlap(const struct task_struct *p) 58{ 59 return 1; 60} 61 62static inline char *cpuset_task_status_allowed(struct task_struct *task, 63 char *buffer) 64{ 65 return buffer; 66} 67 68#endif /* !CONFIG_CPUSETS */ 69 70#endif /* _LINUX_CPUSET_H */