From 0e563cd683754fb65d07d54096d3cec0db7bfcd4 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sat, 10 May 2003 17:50:46 +0000 Subject: Update. 2003-05-10 Ulrich Drepper * sysdeps/generic/bits/sched.h: Define cpu_set_t only if not already defined and when really needed. * sysdeps/unix/sysv/linux/bits/sched.h: Likewise. --- bits/sched.h | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'bits/sched.h') diff --git a/bits/sched.h b/bits/sched.h index fc754bff51..91b6dca0ca 100644 --- a/bits/sched.h +++ b/bits/sched.h @@ -35,16 +35,18 @@ struct sched_param }; +#if defined _SCHED_H && !defined __cpu_set_t_defined +# define __cpu_set_t_defined /* Size definition for CPU sets. */ -#define __CPU_SETSIZE 1024 -#define __NCPUBITS (8 * sizeof (__cpu_mask)) +# define __CPU_SETSIZE 1024 +# define __NCPUBITS (8 * sizeof (__cpu_mask)) /* Type for array elements in 'cpu_set'. */ typedef unsigned long int __cpu_mask; /* Basic access functions. */ -#define __CPUELT(cpu) ((cpu) / __NCPUBITS) -#define __CPUMASK(cpu) ((__cpu_mask) 1 << ((cpu) % __NCPUBITS)) +# define __CPUELT(cpu) ((cpu) / __NCPUBITS) +# define __CPUMASK(cpu) ((__cpu_mask) 1 << ((cpu) % __NCPUBITS)) /* Data structure to describe CPU mask. */ typedef struct @@ -53,16 +55,17 @@ typedef struct } cpu_set_t; /* Access functions for CPU masks. */ -#define __CPU_ZERO(cpusetp) \ +# define __CPU_ZERO(cpusetp) \ do { \ unsigned int __i; \ cpu_set *__arr = (cpusetp); \ for (__i = 0; __i < sizeof (cpu_set) / sizeof (__cpu_mask); ++__i) \ __arr->__bits[__i] = 0; \ } while (0) -#define __CPU_SET(cpu, cpusetp) \ +# define __CPU_SET(cpu, cpusetp) \ ((cpusetp)->__bits[__CPUELT (cpu)] |= __CPUMASK (cpu)) -#define __CPU_CLR(cpu, cpusetp) \ +# define __CPU_CLR(cpu, cpusetp) \ ((cpusetp)->__bits[__CPUELT (cpu)] &= ~__CPUMASK (cpu)) -#define __CPU_ISSET(cpu, cpusetp) \ +# define __CPU_ISSET(cpu, cpusetp) \ (((cpusetp)->__bits[__CPUELT (cpu)] & __CPUMASK (cpu)) != 0) +#endif -- cgit 1.4.1