mirror of https://gitee.com/Nocallback/glibc.git
6 changed files with 88 additions and 145 deletions
@ -1,27 +0,0 @@ |
|||
/* Test whether RT signals are really available.
|
|||
Copyright (C) 1997-2015 Free Software Foundation, Inc. |
|||
This file is part of the GNU C Library. |
|||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. |
|||
|
|||
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/>. */
|
|||
|
|||
#include <string.h> |
|||
#include <sys/utsname.h> |
|||
|
|||
static int |
|||
kernel_has_rtsig (void) |
|||
{ |
|||
return 0; |
|||
} |
|||
@ -0,0 +1,49 @@ |
|||
/* Handle real-time signal allocation. NPTL version.
|
|||
Copyright (C) 2015 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/>. */
|
|||
|
|||
#include <nptl/pthreadP.h> |
|||
|
|||
/* Up to three special signals might be used privately by libpthread.
|
|||
Figure out how many unique ones are actually used. */ |
|||
|
|||
#ifdef SIGCANCEL |
|||
# define SIGCANCEL_CONSUMES 1 |
|||
#else |
|||
# define SIGCANCEL_CONSUMES 0 |
|||
#endif |
|||
|
|||
#if defined SIGTIMER && (!defined SIGCANCEL || SIGTIMER != SIGCANCEL) |
|||
# define SIGTIMER_CONSUMES 1 |
|||
#else |
|||
# define SIGTIMER_CONSUMES 0 |
|||
#endif |
|||
|
|||
#if (defined SIGSETXID \ |
|||
&& (!defined SIGCANCEL || SIGSETXID != SIGCANCEL) \ |
|||
&& (!defined SIGTIMER || SIGSETXID != SIGTIMER)) |
|||
# define SIGSETXID_CONSUMES 1 |
|||
#else |
|||
# define SIGSETXID_CONSUMES 0 |
|||
#endif |
|||
|
|||
/* This tells the generic code (included below) how many signal
|
|||
numbers need to be reserved for libpthread's private uses. */ |
|||
#define RESERVED_SIGRT \ |
|||
(SIGCANCEL_CONSUMES + SIGTIMER_CONSUMES + SIGSETXID_CONSUMES) |
|||
|
|||
#include <signal/allocrtsig.c> |
|||
@ -1,55 +0,0 @@ |
|||
/* Copyright (C) 2002-2015 Free Software Foundation, Inc.
|
|||
This file is part of the GNU C Library. |
|||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002. |
|||
|
|||
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/>. */
|
|||
|
|||
#include <signal.h> |
|||
|
|||
|
|||
static int current_rtmin = __SIGRTMIN + 2; |
|||
static int current_rtmax = __SIGRTMAX; |
|||
|
|||
|
|||
/* We reserve __SIGRTMIN for use as the cancelation signal. This
|
|||
signal is used internally. */ |
|||
int |
|||
__libc_current_sigrtmin (void) |
|||
{ |
|||
return current_rtmin; |
|||
} |
|||
libc_hidden_def (__libc_current_sigrtmin) |
|||
strong_alias (__libc_current_sigrtmin, __libc_current_sigrtmin_private) |
|||
|
|||
|
|||
int |
|||
__libc_current_sigrtmax (void) |
|||
{ |
|||
return current_rtmax; |
|||
} |
|||
libc_hidden_def (__libc_current_sigrtmax) |
|||
strong_alias (__libc_current_sigrtmax, __libc_current_sigrtmax_private) |
|||
|
|||
|
|||
int |
|||
__libc_allocate_rtsig (int high) |
|||
{ |
|||
if (current_rtmin == -1 || current_rtmin > current_rtmax) |
|||
/* We don't have anymore signal available. */ |
|||
return -1; |
|||
|
|||
return high ? current_rtmin++ : current_rtmax--; |
|||
} |
|||
strong_alias (__libc_allocate_rtsig, __libc_allocate_rtsig_private) |
|||
@ -1,27 +0,0 @@ |
|||
/* Test whether RT signals are really available.
|
|||
Copyright (C) 1997-2015 Free Software Foundation, Inc. |
|||
This file is part of the GNU C Library. |
|||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. |
|||
|
|||
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/>. */
|
|||
|
|||
#include <string.h> |
|||
#include <sys/utsname.h> |
|||
|
|||
static int |
|||
kernel_has_rtsig (void) |
|||
{ |
|||
return 1; |
|||
} |
|||
Loading…
Reference in new issue