about summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2006-08-15 05:27:55 +0000
committerUlrich Drepper <drepper@redhat.com>2006-08-15 05:27:55 +0000
commitad2a3c0750f79662d03a870bdd06e71f4a0aeca9 (patch)
tree11ab277f70365641343b2874b5d3163c25a63c04
parentf17efcb43e500d4af62b71bd6f286af831069b5a (diff)
downloadglibc-ad2a3c0750f79662d03a870bdd06e71f4a0aeca9.tar.gz
glibc-ad2a3c0750f79662d03a870bdd06e71f4a0aeca9.tar.xz
glibc-ad2a3c0750f79662d03a870bdd06e71f4a0aeca9.zip
* sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Use cvs/fedora-glibc-20060815T0533
	sysdeps/posix/pause.c implementation instead.

2006-08-09  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/nice.c (nice): Transform EACCES errno from setpriority
	to EPERM.
-rw-r--r--ChangeLog10
-rw-r--r--NEWS4
-rw-r--r--sysdeps/unix/nice.c15
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/pause.c48
4 files changed, 23 insertions, 54 deletions
diff --git a/ChangeLog b/ChangeLog
index 716dbe3d71..e54bd15b93 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2006-08-15  Jakub Jelinek  <jakub@redhat.com>
+
+	* sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Use
+	sysdeps/posix/pause.c implementation instead.
+
+2006-08-09  Jakub Jelinek  <jakub@redhat.com>
+
+	* sysdeps/unix/nice.c (nice): Transform EACCES errno from setpriority
+	to EPERM.
+
 2006-08-13  Andreas Schwab  <schwab@suse.de>
 
 	* sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_runtime_resolve):
diff --git a/NEWS b/NEWS
index 55855ad81a..14abed4782 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
-GNU C Library NEWS -- history of user-visible changes.  2006-07-28
+GNU C Library NEWS -- history of user-visible changes.  2006-08-14
 Copyright (C) 1992-2002,2003,2004,2005,2006 Free Software Foundation, Inc.
 See the end for copying conditions.
 
@@ -36,6 +36,8 @@ Version 2.5
 * Support for priority inheritance mutexes added by Jakub Jelinek and
   Ulrich Drepper.
 
+* Support for priority protected mutexes added by Jakub Jelinek.
+
 
 Version 2.4
 
diff --git a/sysdeps/unix/nice.c b/sysdeps/unix/nice.c
index 700305c0e9..eb26c43a60 100644
--- a/sysdeps/unix/nice.c
+++ b/sysdeps/unix/nice.c
@@ -1,4 +1,5 @@
-/* Copyright (C) 1992, 1996, 1997, 2001, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1992, 1996, 1997, 2001, 2002, 2006
+   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
@@ -42,9 +43,11 @@ nice (int incr)
     }
 
   result = setpriority (PRIO_PROCESS, 0, prio + incr);
-  if (result != -1)
-    return getpriority (PRIO_PROCESS, 0);
-  else
-    return -1;
-
+  if (result == -1)
+    {
+      if (errno == EACCES)
+	errno = EPERM;
+      return -1;
+    }
+  return getpriority (PRIO_PROCESS, 0);
 }
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/pause.c b/sysdeps/unix/sysv/linux/sparc/sparc64/pause.c
index 40fab28d47..2ec5bd39ad 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/pause.c
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/pause.c
@@ -1,47 +1 @@
-/* pause -- suspend the process until a signal arrives.  POSIX.1 version.
-   Copyright (C) 2003 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, write to the Free
-   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-   02111-1307 USA.  */
-
-#include <errno.h>
-#include <signal.h>
-#include <unistd.h>
-#include <sysdep-cancel.h>
-
-#include <sysdep.h>
-#include <sys/syscall.h>
-#include <bp-checks.h>
-
-/* Suspend the process until a signal arrives.
-   This always returns -1 and sets errno to EINTR.  */
-int
-__libc_pause (void)
-{
-  sigset_t set;
-
-  __sigemptyset (&set);
-  INLINE_SYSCALL (rt_sigprocmask, 4, SIG_BLOCK, CHECK_SIGSET (NULL),
-		  CHECK_SIGSET_NULL_OK (&set), _NSIG / 8);
-
-  /* pause is a cancellation point, but so is sigsuspend.
-     So no need for anything special here.  */
-
-  return __sigsuspend (&set);
-}
-weak_alias (__libc_pause, pause)
-
-LIBC_CANCEL_HANDLED ();		/* sigsuspend handles our cancellation.  */
+#include <sysdeps/posix/pause.c>