aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2010-09-01 18:11:31 -0700
committerRoland McGrath <roland@redhat.com>2010-09-01 18:11:31 -0700
commitece298407076558531796450af39199aa0b34bef (patch)
treeeed813f1d1f705d20b390d9d14ba35aa151b3545
parentfdc0c10d9b5c39ec20c35d2f3808d3c70cb7f60b (diff)
downloadglibc-ece298407076558531796450af39199aa0b34bef.tar
glibc-ece298407076558531796450af39199aa0b34bef.tar.gz
glibc-ece298407076558531796450af39199aa0b34bef.tar.bz2
glibc-ece298407076558531796450af39199aa0b34bef.zip
Fix generic bits/sched.h for #define __need_schedparam uses.
-rw-r--r--ChangeLog12
-rw-r--r--bits/sched.h15
2 files changed, 27 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index df90c9198f..fd4b7751ca 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2010-09-01 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ This aligns bits/sched.h onto sysdeps/unix/sysv/linux/bits/sched.h:
+ Define __sched_param instead of SCHED_* and sched_param when
+ <bits/sched.h> is included with __need_schedparam defined.
+ * bits/sched.h [__need_schedparam]
+ (SCHED_OTHER, SCHED_FIFO, SCHED_RR, sched_param): Do not define.
+ [!__defined_schedparam && (__need_schedparam || _SCHED_H)]
+ (__defined_schedparam): Define to 1.
+ (__sched_param): New structure, identical to sched_param.
+ (__need_schedparam): Undefine.
+
2010-08-31 Mike Frysinger <vapier@gentoo.org>
* sysdeps/unix/sysv/linux/sparc/sys/epoll.h (epoll_create2): Delete.
diff --git a/bits/sched.h b/bits/sched.h
index af92dbca35..a068e50161 100644
--- a/bits/sched.h
+++ b/bits/sched.h
@@ -18,6 +18,8 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
+#ifndef __need_schedparam
+
#ifndef _SCHED_H
# error "Never include <bits/sched.h> directly; use <sched.h> instead."
#endif
@@ -34,6 +36,19 @@ struct sched_param
int __sched_priority;
};
+#endif /* need schedparam */
+
+#if !defined __defined_schedparam \
+ && (defined __need_schedparam || defined _SCHED_H)
+# define __defined_schedparam 1
+/* Data structure to describe a process' schedulability. */
+struct __sched_param
+ {
+ int __sched_priority;
+ };
+# undef __need_schedparam
+#endif
+
#if defined _SCHED_H && !defined __cpu_set_t_defined
# define __cpu_set_t_defined