+2003-01-31 Steven Munroe <sjmunroe@us.ibm.com>
+
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
+ Include kernel-features.h
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
+
2003-02-02 Jakub Jelinek <jakub@redhat.com>
* elf/tls-macros.h [sparc] (TLS_LD, TLS_GD): Add "cc" clobbers.
-NPTL 0.18 by Ulrich Drepper
+NPTL 0.19 by Ulrich Drepper
2003-02-03 Ulrich Drepper <drepper@redhat.com>
+ * pthread_create.c: Include <atomic.h>.
* allocatestack.c (allocate_stack): Implement coloring of the
allocated stack memory. Rename pagesize to pagesize_m1. It's the
size minus one. Adjust users.
+ * sysdeps/i386/i686/Makefile: New file.
2003-02-02 Ulrich Drepper <drepper@redhat.com>
+++ /dev/null
-Semaphores pseudocode
-==============================
-
- int sem_wait(sem_t * sem);
- int sem_trywait(sem_t * sem);
- int sem_post(sem_t * sem);
- int sem_getvalue(sem_t * sem, int * sval);
-
-struct sem_t {
-
- unsigned int lock:
- - internal mutex
-
- unsigned int count;
- - current semaphore count, also used as a futex
-
- unsigned int waiters;
- - number of threads queued in sem_wait().
-}
-
-sem_wait(sem_t *sem)
-{
- lll_lock(sem->lock);
- for (;;) {
-
- if (sem->count)
- break;
-
- sem->waiters++;
- lll_unlock(sem->lock);
-
- futex_wait(&sem->count, 0)
-
- lll_lock(sem->lock);
- sem->waiters--;
- }
- sem->count--;
- lll_unlock(sem->lock);
-}
-
-sem_post(sem_t *sem)
-{
- lll_lock(sem->lock);
- sem->count++;
- if (sem->waiters)
- futex_wake(&sem->count, sem->count);
- lll_unlock(sem->lock);
-}
-
-sem_trywait(sem_t *sem)
-{
- lll_lock(sem->lock);
- if (sem->count) {
- sem->count--;
- lll_unlock(sem->lock);
- return 0;
- } else {
- lll_unlock(sem->lock);
- return -EAGAIN;
- }
-}
-
-sem_getvalue(sem_t *sem, int *sval)
-{
- *sval = sem->count;
- read_barrier();
-}
-/* Copyright (C) 2002 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
#include "pthreadP.h"
#include <hp-timing.h>
#include <ldsodefs.h>
+#include <atomic.h>
#include <shlib-compat.h>
--- /dev/null
+# Copyright (C) 2003 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, write to the Free
+# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+# 02111-1307 USA.
+
+ifeq ($(subdir),nptl)
+# For P4 processors we color the stack in 128 bit steps.
+CFLAGS-pthread_create.c += -DCOLORING_INCREMENT=128
+endif
#include <sysdep.h>
#include <sys/syscall.h>
#include <sys/prctl.h>
+#include "kernel-features.h"
const fenv_t *
__fe_nomask_env (void)
02111-1307 USA. */
#include <sysdep.h>
+#include "kernel-features.h"
#define __ASSEMBLY__
#include <asm/ptrace.h>
02111-1307 USA. */
#include <sysdep.h>
+#include "kernel-features.h"
#define __ASSEMBLY__
#include <asm/ptrace.h>
02111-1307 USA. */
#include <sysdep.h>
+#include "kernel-features.h"
#define __ASSEMBLY__
#include <asm/ptrace.h>
02111-1307 USA. */
#include <sysdep.h>
+#include "kernel-features.h"
#define __ASSEMBLY__
#include <asm/ptrace.h>