hurd: Avoid exposing all <sched.h> symbols from sys/types.h

* 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.
This commit is contained in:
Samuel Thibault 2018-04-19 20:21:33 +02:00
parent 50511ca466
commit e60c3f2bb7
6 changed files with 39 additions and 12 deletions

View File

@ -63,6 +63,13 @@
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>

View File

@ -29,10 +29,6 @@
#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 */

View File

@ -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 */

View 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 \

View 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>

View File

@ -71,11 +71,7 @@
# 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