mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-25 06:20:06 +00:00
Update.
2003-02-27 Ulrich Drepper <drepper@redhat.com> * sunrpc/svc_udp.c (svcudp_recv): Remove all control messages except the PKTINFO. Reset interface in PKTINFO. * elf/elf.h: Add new R_PPC64_* relocs for TLS. * elf/tls-macros.h [__powerpc64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define. * sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
This commit is contained in:
parent
695799feb3
commit
d148ed257a
@ -1,8 +1,13 @@
|
||||
2003-02-27 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* sunrpc/svc_udp.c (svcudp_recv): Remove all control messages
|
||||
except the PKTINFO. Reset interface in PKTINFO.
|
||||
|
||||
2003-02-25 Steven Munroe <sjmunroe@us.ibm.com>
|
||||
|
||||
* elf/elf.h: Add new R_PPC64_* relocs for TLS.
|
||||
* elf/tls-macros.h [__powerpc64__]
|
||||
(TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define.
|
||||
* elf/tls-macros.h [__powerpc64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD):
|
||||
Define.
|
||||
* sysdeps/powerpc/powerpc64/elf/configure.in: New file.
|
||||
* sysdeps/powerpc/powerpc64/elf/configure: New file (generated).
|
||||
* sysdeps/powerpc/powerpc64/dl-machine.h: Support new TLS relocs.
|
||||
|
@ -132,7 +132,8 @@ tests = tst-attr1 tst-attr2 \
|
||||
tst-cond1 tst-cond2 tst-cond3 tst-cond4 tst-cond5 tst-cond6 tst-cond7 \
|
||||
tst-cond8 tst-cond9 \
|
||||
tst-rwlock1 tst-rwlock2 tst-rwlock3 tst-rwlock4 tst-rwlock5 \
|
||||
tst-rwlock6 tst-rwlock7 tst-rwlock8 tst-rwlock9 \
|
||||
tst-rwlock6 tst-rwlock7 tst-rwlock8 tst-rwlock9 tst-rwlock10 \
|
||||
tst-rwlock11 \
|
||||
tst-once1 tst-once2 tst-once3 tst-once4 \
|
||||
tst-key1 tst-key2 tst-key3 tst-key4 \
|
||||
tst-sem1 tst-sem2 tst-sem3 tst-sem4 tst-sem5 \
|
||||
|
21
nptl/tst-rwlock10.c
Normal file
21
nptl/tst-rwlock10.c
Normal file
@ -0,0 +1,21 @@
|
||||
/* Test program for timedout read/write lock functions.
|
||||
Copyright (C) 2003 Free Software Foundation, Inc.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2003.
|
||||
|
||||
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; see the file COPYING.LIB. If not,
|
||||
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
#define INIT PTHREAD_RWLOCK_INITIALIZER
|
||||
#include "tst-rwlock8.c"
|
21
nptl/tst-rwlock11.c
Normal file
21
nptl/tst-rwlock11.c
Normal file
@ -0,0 +1,21 @@
|
||||
/* Test program for timedout read/write lock functions.
|
||||
Copyright (C) 2003 Free Software Foundation, Inc.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2003.
|
||||
|
||||
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; see the file COPYING.LIB. If not,
|
||||
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
#define INIT PTHREAD_RWLOCK_INITIALIZER
|
||||
#include "tst-rwlock9.c"
|
@ -33,7 +33,11 @@
|
||||
|
||||
#define DELAY 1000000
|
||||
|
||||
static pthread_rwlock_t lock = PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP;
|
||||
#ifndef INIT
|
||||
# define INIT PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP
|
||||
#endif
|
||||
|
||||
static pthread_rwlock_t lock = INIT;
|
||||
|
||||
|
||||
static void *
|
||||
|
@ -35,7 +35,11 @@
|
||||
#define TIMEOUT 1000000
|
||||
#define DELAY 1000000
|
||||
|
||||
static pthread_rwlock_t lock = PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP;
|
||||
#ifndef INIT
|
||||
# define INIT PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP
|
||||
#endif
|
||||
|
||||
static pthread_rwlock_t lock = INIT;
|
||||
|
||||
|
||||
static void *
|
||||
|
@ -258,7 +258,29 @@ again:
|
||||
- sizeof (struct iovec) - sizeof (struct msghdr);
|
||||
rlen = __recvmsg (xprt->xp_sock, mesgp, 0);
|
||||
if (rlen >= 0)
|
||||
{
|
||||
struct cmsghdr *cmsg;
|
||||
len = mesgp->msg_namelen;
|
||||
cmsg = CMSG_FIRSTHDR (mesgp);
|
||||
if (cmsg == NULL
|
||||
|| CMSG_NXTHDR (mesgp, cmsg) != NULL
|
||||
|| cmsg->cmsg_level != SOL_IP
|
||||
|| cmsg->cmsg_type != IP_PKTINFO
|
||||
|| cmsg->cmsg_len < (sizeof (struct cmsghdr)
|
||||
+ sizeof (struct in_pktinfo)))
|
||||
{
|
||||
/* Not a simple IP_PKTINFO, ignore it. */
|
||||
mesgp->msg_control = NULL;
|
||||
mesgp->msg_controllen = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* It was a simple IP_PKTIFO as we expected, discard the
|
||||
interface field. */
|
||||
struct in_pktinfo *pkti = CMSG_DATA (cmsg);
|
||||
pkti->ipi_ifindex = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user