diff options
-rw-r--r-- | ChangeLog | 12 | ||||
-rw-r--r-- | inet/ether_ntoh.c | 5 | ||||
-rw-r--r-- | linuxthreads/ChangeLog | 7 | ||||
-rw-r--r-- | linuxthreads/Examples/ex16.c | 26 | ||||
-rw-r--r-- | linuxthreads/Makefile | 2 | ||||
-rw-r--r-- | linuxthreads/pthread.c | 1 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/powerpc/bits/mman.h | 4 |
7 files changed, 53 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog index 687d045143..9cf987cdc9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2001-01-13 Jakub Jelinek <jakub@redhat.com> + + * inet/ether_ntoh.c (lookup_function): Change arguments to match + _nss_*_getntohost_r prototype. + (ether_ntohost): Pass errno pointer to NSS function. + +2001-01-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> + + * sysdeps/unix/sysv/linux/powerpc/bits/mman.h (MS_SYNC): Fix value. + (MAP_LOCKED): New definition. + (MAP_NORESERVE): New definition. + 2001-01-12 Ulrich Drepper <drepper@redhat.com> * assert/assert.h: Use static_cast instead of C-style cast for C++. diff --git a/inet/ether_ntoh.c b/inet/ether_ntoh.c index d26ec3b317..43299b9135 100644 --- a/inet/ether_ntoh.c +++ b/inet/ether_ntoh.c @@ -17,6 +17,7 @@ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +#include <errno.h> #include <netinet/ether.h> #include <netinet/if_ether.h> #include <string.h> @@ -26,7 +27,7 @@ /* Type of the lookup function we need here. */ typedef int (*lookup_function) (const struct ether_addr *, struct etherent *, - char *, int); + char *, size_t, int *); /* The lookup function for the first entry of this service. */ extern int __nss_ethers_lookup (service_user **nip, const char *name, @@ -65,7 +66,7 @@ ether_ntohost (char *hostname, const struct ether_addr *addr) { char buffer[1024]; - status = (*fct) (addr, ðerent, buffer, sizeof buffer); + status = (*fct) (addr, ðerent, buffer, sizeof buffer, &errno); no_more = __nss_next (&nip, "getntohost_r", (void **) &fct, status, 0); } diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog index a56b99ce85..8936eac03a 100644 --- a/linuxthreads/ChangeLog +++ b/linuxthreads/ChangeLog @@ -1,3 +1,10 @@ +2001-01-13 Jakub Jelinek <jakub@redhat.com> + + * pthread.c (pthread_onexit_process): Clear + __pthread_manager_thread_bos after freeing it. + * Makefile (tests): Add ex16. + * Examples/ex16.c: New file. + 2001-01-11 Jakub Jelinek <jakub@redhat.com> * Makefile (CFLAGS-pthread.c): Pass -DHAVE_Z_NODELETE if ld supports diff --git a/linuxthreads/Examples/ex16.c b/linuxthreads/Examples/ex16.c new file mode 100644 index 0000000000..6509ae4515 --- /dev/null +++ b/linuxthreads/Examples/ex16.c @@ -0,0 +1,26 @@ +/* Tst case by Jakub Jelinek <jakub@redhat.com>. */ +#include <stdlib.h> +#include <unistd.h> +#include <pthread.h> + +static void * +task (void *p) +{ + sleep (30); + return NULL; +} + +int +main (void) +{ + pthread_t t; + int status; + + status = pthread_create (&t, NULL, task, NULL); + if (status) + exit (status); + + status = pthread_detach (t); + pthread_kill_other_threads_np (); + return status; +} diff --git a/linuxthreads/Makefile b/linuxthreads/Makefile index da3c3d22f7..d3364eaf5b 100644 --- a/linuxthreads/Makefile +++ b/linuxthreads/Makefile @@ -46,7 +46,7 @@ include ../Makeconfig librt-tests = ex10 ex11 tests = ex1 ex2 ex3 ex4 ex5 ex6 ex7 ex8 ex9 $(librt-tests) ex12 ex13 joinrace \ - tststack $(tests-nodelete-$(have-z-nodelete)) ecmutex ex14 ex15 + tststack $(tests-nodelete-$(have-z-nodelete)) ecmutex ex14 ex15 ex16 ifeq (yes,$(build-shared)) tests-nodelete-yes = unload diff --git a/linuxthreads/pthread.c b/linuxthreads/pthread.c index df1d00b05a..b62393fde9 100644 --- a/linuxthreads/pthread.c +++ b/linuxthreads/pthread.c @@ -753,6 +753,7 @@ static void pthread_onexit_process(int retcode, void *arg) { waitpid(__pthread_manager_thread.p_pid, NULL, __WCLONE); free (__pthread_manager_thread_bos); + __pthread_manager_thread_bos = __pthread_manager_thread_tos = NULL; } } } diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/mman.h b/sysdeps/unix/sysv/linux/powerpc/bits/mman.h index 0808b7da37..bae1ad67c2 100644 --- a/sysdeps/unix/sysv/linux/powerpc/bits/mman.h +++ b/sysdeps/unix/sysv/linux/powerpc/bits/mman.h @@ -55,11 +55,13 @@ # define MAP_GROWSDOWN 0x0100 /* Stack-like segment. */ # define MAP_DENYWRITE 0x0800 /* ETXTBSY */ # define MAP_EXECUTABLE 0x1000 /* Mark it as an executable. */ +# define MAP_LOCKED 0x0080 /* Lock the mapping. */ +# define MAP_NORESERVE 0x0040 /* Don't check for reservations. */ #endif /* Flags to `msync'. */ #define MS_ASYNC 1 /* Sync memory asynchronously. */ -#define MS_SYNC 0 /* Synchronous memory sync. */ +#define MS_SYNC 4 /* Synchronous memory sync. */ #define MS_INVALIDATE 2 /* Invalidate the caches. */ /* Flags for `mlockall'. */ |