hurd: Avoid exposing all <sched.h> symbols from sys/types.h
authorSamuel Thibault <samuel.thibault@ens-lyon.org>
Thu, 19 Apr 2018 18:21:33 +0000 (20:21 +0200)
committerSamuel Thibault <samuel.thibault@ens-lyon.org>
Thu, 19 Apr 2018 18:24:36 +0000 (20:24 +0200)
* bits/sched.h: Include <bits/types/struct_sched_param.h> and move struct
sched_param definition to it.
* sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
* bits/types/struct_sched_param.h: New file.
* sysdeps/htl/bits/types/struct___pthread_attr.h: Include
<bits/types/struct_sched_param.h> instead of <sched.h>.
* posix/Makefile (headers): Add bits/types/struct_sched_param.h.

ChangeLog
bits/sched.h
bits/types/struct_sched_param.h [new file with mode: 0644]
posix/Makefile
sysdeps/htl/bits/types/struct___pthread_attr.h
sysdeps/unix/sysv/linux/bits/sched.h

index 274941b..d010e7c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
        instead of wait_queue.
        * sysdeps/gnu/bits/shm.h (struct shmid_ds): Use __vm_area_struct
        instead of vm_area_struct.
+       * bits/sched.h: Include <bits/types/struct_sched_param.h> and move struct
+       sched_param definition to it.
+       * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
+       * bits/types/struct_sched_param.h: New file.
+       * sysdeps/htl/bits/types/struct___pthread_attr.h: Include
+       <bits/types/struct_sched_param.h> instead of <sched.h>.
+       * posix/Makefile (headers): Add bits/types/struct_sched_param.h.
 
 2018-04-18  Joseph Myers  <joseph@codesourcery.com>
 
index 8d9f077..bdd94c9 100644 (file)
 #define SCHED_FIFO     1
 #define SCHED_RR       2
 
-/* Data structure to describe a process' schedulability.  */
-struct sched_param
-{
-  int sched_priority;
-};
+#include <bits/types/struct_sched_param.h>
 
 #endif /* bits/sched.h */
diff --git a/bits/types/struct_sched_param.h b/bits/types/struct_sched_param.h
new file mode 100644 (file)
index 0000000..2f24d42
--- /dev/null
@@ -0,0 +1,28 @@
+/* Sched parameter structure.  Generic version.
+   Copyright (C) 1996-2018 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library;  if not, see
+   <http://www.gnu.org/licenses/>.  */
+
+#ifndef _BITS_TYPES_STRUCT_SCHED_PARAM
+#define _BITS_TYPES_STRUCT_SCHED_PARAM 1
+
+/* Data structure to describe a process' schedulability.  */
+struct sched_param
+{
+  int sched_priority;
+};
+
+#endif /* bits/types/struct_sched_param.h */
index 51dcf12..e9730ee 100644 (file)
@@ -31,7 +31,7 @@ headers       := sys/utsname.h sys/times.h sys/wait.h sys/types.h unistd.h          \
           bits/local_lim.h tar.h bits/utsname.h bits/confname.h              \
           bits/waitflags.h bits/waitstatus.h sys/unistd.h sched.h            \
           bits/sched.h bits/cpu-set.h re_comp.h wait.h bits/environments.h   \
-          cpio.h spawn.h bits/unistd.h
+          cpio.h spawn.h bits/unistd.h bits/types/struct_sched_param.h
 
 routines :=                                                                  \
        uname                                                                 \
index 2299c01..3c78291 100644 (file)
@@ -19,7 +19,7 @@
 #ifndef _BITS_TYPES_STRUCT___PTHREAD_ATTR
 #define _BITS_TYPES_STRUCT___PTHREAD_ATTR      1
 
-#include <sched.h>
+#include <bits/types/struct_sched_param.h>
 
 #define __need_size_t
 #include <stddef.h>
index 24159c5..34f27a7 100644 (file)
 # define CLONE_IO      0x80000000      /* Clone I/O context.  */
 #endif
 
-/* Data structure to describe a process' schedulability.  */
-struct sched_param
-{
-  int sched_priority;
-};
+#include <bits/types/struct_sched_param.h>
 
 __BEGIN_DECLS