GNU C Library master sources branch, release/2.11/master, updated. glibc-2.11.2-5-g2158096

pasky@sourceware.org pasky@sourceware.org
Mon May 31 17:06:00 GMT 2010


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, release/2.11/master has been updated
       via  21580967038a0150e330e56508ec4f04fdf0f490 (commit)
       via  ef43572852a615b6f85bf3864a6c4f1175a93a19 (commit)
       via  4d4e902530cad7cd18570ad4b7bd7f31b33cce28 (commit)
       via  d0d308e32b10a0776c6b7d5748b96bb5a9076f96 (commit)
       via  a8226edc795e0f3682eec8be3ee183422eaefd24 (commit)
      from  f2020c64596a90ca8d7d93afa1b8ad155d716f0e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=21580967038a0150e330e56508ec4f04fdf0f490

commit 21580967038a0150e330e56508ec4f04fdf0f490
Author: H.J. Lu <hongjiu.lu@intel.com>
Date:   Thu May 27 11:14:18 2010 -0700

    Incorrect x86 CPU family and model check.
    
    (cherry picked from commit 3c88fe1e3ab8c6115e9b0c6eb109718da2116a33)

diff --git a/ChangeLog b/ChangeLog
index 871a70c..b03035f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2010-05-26  H.J. Lu  <hongjiu.lu@intel.com>
+
+	[BZ #11640]
+	* sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features):
+	Properly check family and model.
+
 2010-05-26  Takashi Yoshii  <takashi.yoshii.zj@renesas.com>
 
 	* sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: Fix iov[] size.
diff --git a/sysdeps/x86_64/multiarch/init-arch.c b/sysdeps/x86_64/multiarch/init-arch.c
index 0fe2f86..198fcaa 100644
--- a/sysdeps/x86_64/multiarch/init-arch.c
+++ b/sysdeps/x86_64/multiarch/init-arch.c
@@ -62,12 +62,12 @@ __init_cpu_features (void)
       unsigned int eax = __cpu_features.cpuid[COMMON_CPUID_INDEX_1].eax;
       unsigned int extended_family = (eax >> 20) & 0xff;
       unsigned int extended_model = (eax >> 12) & 0xf0;
-      if (__cpu_features.family == 0x0f)
+      if (family == 0x0f)
 	{
 	  family += extended_family;
 	  model += extended_model;
 	}
-      else if (__cpu_features.family == 0x06)
+      else if (family == 0x06)
 	model += extended_model;
     }
   /* This spells out "AuthenticAMD".  */

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=ef43572852a615b6f85bf3864a6c4f1175a93a19

commit ef43572852a615b6f85bf3864a6c4f1175a93a19
Author: Takashi Yoshii <takashi.yoshii.zj@renesas.com>
Date:   Wed May 26 07:01:43 2010 -0700

    Fix iov[] size in SH register_dump()
    
    (cherry picked from commit d2f73151763c27173d9a771cea722380d7fc61c2)

diff --git a/ChangeLog b/ChangeLog
index a90e6dd..871a70c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2010-05-26  Takashi Yoshii  <takashi.yoshii.zj@renesas.com>
+
+	* sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: Fix iov[] size.
+
 2010-05-21  Ulrich Drepper  <drepper@redhat.com>
 
 	* elf/dl-runtime.c (_dl_profile_fixup): Don't crash on unresolved weak
diff --git a/sysdeps/unix/sysv/linux/sh/sh4/register-dump.h b/sysdeps/unix/sysv/linux/sh/sh4/register-dump.h
index e3c9c0e..92df085 100644
--- a/sysdeps/unix/sysv/linux/sh/sh4/register-dump.h
+++ b/sysdeps/unix/sysv/linux/sh/sh4/register-dump.h
@@ -1,5 +1,5 @@
 /* Dump registers.
-   Copyright (C) 1999, 2000, 2009 Free Software Foundation, Inc.
+   Copyright (C) 1999, 2000, 2009, 2010 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
@@ -58,7 +58,7 @@ register_dump (int fd, struct sigcontext *ctx)
 {
   char regs[22][8];
   char fpregs[34][8];
-  struct iovec iov[112];
+  struct iovec iov[22 * 2 + 34 * 2 + 2];
   size_t nr = 0;
 
 #define ADD_STRING(str) \

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=4d4e902530cad7cd18570ad4b7bd7f31b33cce28

commit 4d4e902530cad7cd18570ad4b7bd7f31b33cce28
Author: Ulrich Drepper <drepper@redhat.com>
Date:   Fri May 21 23:51:18 2010 -0700

    Don't crash on unresolved weak symbol reference when auditing.
    
    (cherry picked from commit b32b8b451b398ebae33d4cf8039c03f4d615c0c3)

diff --git a/ChangeLog b/ChangeLog
index 97bd0bc..a90e6dd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2010-05-21  Ulrich Drepper  <drepper@redhat.com>
+
+	* elf/dl-runtime.c (_dl_profile_fixup): Don't crash on unresolved weak
+	symbol reference.
+
 2010-05-19  Andreas Schwab  <schwab@redhat.com>
 
 	* elf/dl-runtime.c (_dl_fixup): Don't crash on unresolved weak
diff --git a/elf/dl-runtime.c b/elf/dl-runtime.c
index 181af7d..6847eda 100644
--- a/elf/dl-runtime.c
+++ b/elf/dl-runtime.c
@@ -232,8 +232,9 @@ _dl_profile_fixup (
 				       ? LOOKUP_VALUE_ADDRESS (result)
 					 + defsym->st_value : 0);
 
-	  if (__builtin_expect (ELFW(ST_TYPE) (defsym->st_info)
-				== STT_GNU_IFUNC, 0))
+	  if (defsym != NULL
+	      && __builtin_expect (ELFW(ST_TYPE) (defsym->st_info)
+				   == STT_GNU_IFUNC, 0))
 	    value = ((DL_FIXUP_VALUE_TYPE (*) (void))
 		     DL_FIXUP_VALUE_ADDR (value)) ();
 	}

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=d0d308e32b10a0776c6b7d5748b96bb5a9076f96

commit d0d308e32b10a0776c6b7d5748b96bb5a9076f96
Author: Andreas Schwab <schwab@redhat.com>
Date:   Fri May 21 12:51:43 2010 -0700

    Don't crash on unresolved weak symbol reference
    
    (cherry picked from commit 9acbe24da8c71704d03e30d1223f997442d4be0c)

diff --git a/ChangeLog b/ChangeLog
index 1a571ec..97bd0bc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2010-05-19  Andreas Schwab  <schwab@redhat.com>
+
+	* elf/dl-runtime.c (_dl_fixup): Don't crash on unresolved weak
+	symbol reference.
+
 2010-05-21  Andreas Schwab  <schwab@redhat.com>
 
 	* sunrpc/clnt_tcp.c (clnttcp_control): Add missing break.
diff --git a/elf/dl-runtime.c b/elf/dl-runtime.c
index a52120d..181af7d 100644
--- a/elf/dl-runtime.c
+++ b/elf/dl-runtime.c
@@ -1,5 +1,5 @@
 /* On-demand PLT fixup for shared objects.
-   Copyright (C) 1995-2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+   Copyright (C) 1995-2009, 2010 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
@@ -144,7 +144,8 @@ _dl_fixup (
   /* And now perhaps the relocation addend.  */
   value = elf_machine_plt_value (l, reloc, value);
 
-  if (__builtin_expect (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC, 0))
+  if (sym != NULL
+      && __builtin_expect (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC, 0))
     value = ((DL_FIXUP_VALUE_TYPE (*) (void)) DL_FIXUP_VALUE_ADDR (value)) ();
 
   /* Finally, fix up the plt itself.  */
@@ -369,7 +370,7 @@ _dl_profile_fixup (
       struct audit_ifaces *afct = GLRO(dl_audit);
       for (unsigned int cnt = 0; cnt < GLRO(dl_naudit); ++cnt)
 	{
- 	  if (afct->ARCH_LA_PLTENTER != NULL
+	  if (afct->ARCH_LA_PLTENTER != NULL
 	      && (reloc_result->enterexit
 		  & (LA_SYMB_NOPLTENTER << (2 * (cnt + 1)))) == 0)
 	    {

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=a8226edc795e0f3682eec8be3ee183422eaefd24

commit a8226edc795e0f3682eec8be3ee183422eaefd24
Author: Andreas Schwab <schwab@redhat.com>
Date:   Fri May 21 11:52:20 2010 -0700

    sunrpc: Fix spurious fall-through
    
    (cherry picked from commit f0ccf6ea41931f325df4699a4c7fdf81888563ee)

diff --git a/ChangeLog b/ChangeLog
index bb4e4d5..1a571ec 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2010-05-21  Andreas Schwab  <schwab@redhat.com>
+
+	* sunrpc/clnt_tcp.c (clnttcp_control): Add missing break.
+	* sunrpc/clnt_udp.c (clntudp_control): Likewise.
+	* sunrpc/clnt_unix.c (clntunix_control): Likewise.
+
 2010-05-12  Andrew Stubbs  <ams@codesourcery.com>
 
 	* sysdeps/sh/sh4/fpu/feholdexcpt.c (feholdexcept): Really disable all
diff --git a/sunrpc/clnt_tcp.c b/sunrpc/clnt_tcp.c
index 1552be8..d26a126 100644
--- a/sunrpc/clnt_tcp.c
+++ b/sunrpc/clnt_tcp.c
@@ -399,6 +399,7 @@ clnttcp_control (CLIENT *cl, int request, char *info)
       /* This will set the xid of the NEXT call */
       *(u_long *)ct->ct_mcall =  htonl (*(u_long *)info - 1);
       /* decrement by 1 as clnttcp_call() increments once */
+      break;
     case CLGET_VERS:
       /*
        * This RELIES on the information that, in the call body,
diff --git a/sunrpc/clnt_udp.c b/sunrpc/clnt_udp.c
index 62ee3a1..360e26a 100644
--- a/sunrpc/clnt_udp.c
+++ b/sunrpc/clnt_udp.c
@@ -582,6 +582,7 @@ clntudp_control (CLIENT *cl, int request, char *info)
       /* This will set the xid of the NEXT call */
       *(u_long *)cu->cu_outbuf =  htonl(*(u_long *)info - 1);
       /* decrement by 1 as clntudp_call() increments once */
+      break;
     case CLGET_VERS:
       /*
        * This RELIES on the information that, in the call body,
diff --git a/sunrpc/clnt_unix.c b/sunrpc/clnt_unix.c
index db3ea31..bca1273 100644
--- a/sunrpc/clnt_unix.c
+++ b/sunrpc/clnt_unix.c
@@ -376,6 +376,7 @@ clntunix_control (CLIENT *cl, int request, char *info)
       /* This will set the xid of the NEXT call */
       *(u_long *) ct->ct_mcall =  htonl (*(u_long *)info - 1);
       /* decrement by 1 as clntunix_call() increments once */
+      break;
     case CLGET_VERS:
       /*
        * This RELIES on the information that, in the call body,

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                      |   26 ++++++++++++++++++++++++
 elf/dl-runtime.c                               |   12 ++++++----
 sunrpc/clnt_tcp.c                              |    1 +
 sunrpc/clnt_udp.c                              |    1 +
 sunrpc/clnt_unix.c                             |    1 +
 sysdeps/unix/sysv/linux/sh/sh4/register-dump.h |    4 +-
 sysdeps/x86_64/multiarch/init-arch.c           |    4 +-
 7 files changed, 40 insertions(+), 9 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources



More information about the Glibc-cvs mailing list