Mailinglist Archive: opensuse-commit (1670 mails)

< Previous Next >
commit glibc
  • From: root@xxxxxxx (h_root)
  • Date: Fri, 13 Oct 2006 15:55:01 +0200 (CEST)
  • Message-id: <20061013135501.F37D584366@xxxxxxxxxxxxxxx>

Hello community,

here is the log from the commit of package glibc
checked in at Fri Oct 13 15:55:01 CEST 2006.

--------
--- glibc/glibc.changes 2006-10-02 13:37:47.000000000 +0200
+++ /mounts/work_src_done/STABLE/glibc/glibc.changes 2006-10-12 02:34:17.000000000 +0200
@@ -1,0 +2,7 @@
+Thu Oct 12 02:33:58 CEST 2006 - pbaudis@xxxxxxx
+
+- Update to the latest 2.5 CVS
+- More friendly -Bdirect behaviour in case of missing libraries
+- Fix 2.4.90-nscd patch wrt. new gcc
+
+-------------------------------------------------------------------

Old:
----
glibc-2.5-2006092922.tar.bz2
glibc-nptl-2.5-2006092922.tar.bz2
warn.diff

New:
----
glibc-2.5-2006101200.tar.bz2
glibc-nptl-2.5-2006101200.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ glibc.spec ++++++
--- /var/tmp/diff_new_pack.6Jwqgv/_old 2006-10-13 15:46:00.000000000 +0200
+++ /var/tmp/diff_new_pack.6Jwqgv/_new 2006-10-13 15:46:00.000000000 +0200
@@ -28,8 +28,8 @@
Obsoletes: ngpt ngpt-devel
Autoreqprov: on
Version: 2.5
-Release: 2
-%define snapshot_date 2006092922
+Release: 6
+%define snapshot_date 2006101200
URL: http://www.gnu.org/software/libc/libc.html
PreReq: filesystem
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@@ -75,7 +75,6 @@
Patch31: glibc-nptl-2.4-nofixsyscallnr.diff
Patch32: crypt_blowfish-1.0.diff
Patch33: glibc-2.4.90-bdirect.diff
-Patch99: warn.diff

%description
The GNU C Library provides the most important standard libraries used
@@ -238,7 +237,6 @@
%patch31
%patch32
%patch33
-%patch99
%patch5
find . -name configure | xargs touch

@@ -798,6 +796,10 @@
%{_libdir}/libdl_p.a

%changelog -n glibc
+* Thu Oct 12 2006 - pbaudis@xxxxxxx
+- Update to the latest 2.5 CVS
+- More friendly -Bdirect behaviour in case of missing libraries
+- Fix 2.4.90-nscd patch wrt. new gcc
* Mon Oct 02 2006 - aj@xxxxxxx
- Fix warnings in testsuite (patch from CVS).
* Fri Sep 29 2006 - pbaudis@xxxxxxx




++++++ glibc-2.4.90-bdirect.diff ++++++
--- /var/tmp/diff_new_pack.6Jwqgv/_old 2006-10-13 15:46:03.000000000 +0200
+++ /var/tmp/diff_new_pack.6Jwqgv/_new 2006-10-13 15:46:03.000000000 +0200
@@ -1,8 +1,8 @@
-diff --git a/elf/dl-close.c b/elf/dl-close.c
-index 6a2ad97..e1f7226 100644
---- elf/dl-close.c
+Index: elf/dl-close.c
+===================================================================
+--- elf/dl-close.c.orig
+++ elf/dl-close.c
-@@ -569,6 +569,9 @@ #endif
+@@ -569,6 +569,9 @@ _dl_close (void *_map)
/* Remove the searchlists. */
free (imap->l_initfini);

@@ -12,11 +12,11 @@
/* Remove the scope array if we allocated it. */
if (imap->l_scope != imap->l_scope_mem)
free (imap->l_scope);
-diff --git a/elf/dl-deps.c b/elf/dl-deps.c
-index c35cc97..31cf705 100644
---- elf/dl-deps.c
+Index: elf/dl-deps.c
+===================================================================
+--- elf/dl-deps.c.orig
+++ elf/dl-deps.c
-@@ -39,6 +39,10 @@ #define AUXTAG (DT_NUM + DT_THISPROCNUM
+@@ -39,6 +39,10 @@
#define FILTERTAG (DT_NUM + DT_THISPROCNUM + DT_VERSIONTAGNUM \
+ DT_EXTRATAGIDX (DT_FILTER))

@@ -27,7 +27,7 @@

/* When loading auxiliary objects we must ignore errors. It's ok if
an object is missing. */
-@@ -139,6 +143,65 @@ cannot load auxiliary `%s' because of em
+@@ -139,6 +143,66 @@ cannot load auxiliary `%s' because of em
__result; })


@@ -66,6 +66,7 @@
+ name = expand_dst (map, strtab + d->d_un.d_val, 0);
+ if (GLRO(dl_debug_mask) & DL_DEBUG_DIRECT)
+ _dl_debug_printf (" direct index %u object '%s'\n", i, name);
++ map->l_dtneeded.r_list[j] = NULL;
+ for (j = 0; j < scope->r_nlist; j++)
+ {
+ if (scope->r_list[j] &&
@@ -75,8 +76,8 @@
+ break;
+ }
+ }
-+ if (!map->l_dtneeded.r_list[i])
-+ _dl_debug_printf (" direct binding: impossible error - can't find '%s' in my scope\n", name);
++ /* map->l_dtneeded.r_list[i] may be still NULL here if we failed to
++ find the library */
+ i++;
+ }
+ }
@@ -93,7 +94,7 @@
void
internal_function
_dl_map_object_deps (struct link_map *map,
-@@ -566,6 +629,20 @@ Filters not supported with LD_TRACE_PREL
+@@ -566,6 +630,20 @@ Filters not supported with LD_TRACE_PREL
}
}

@@ -114,11 +115,11 @@
/* Maybe we can remove some relocation dependencies now. */
assert (map->l_searchlist.r_list[0] == map);
for (i = 0; i < map->l_reldepsact; ++i)
-diff --git a/elf/dl-lookup.c b/elf/dl-lookup.c
-index 7cfcc62..41f38fe 100644
---- elf/dl-lookup.c
+Index: elf/dl-lookup.c
+===================================================================
+--- elf/dl-lookup.c.orig
+++ elf/dl-lookup.c
-@@ -32,6 +32,11 @@ #include <assert.h>
+@@ -32,6 +32,11 @@

#define VERSTAG(tag) (DT_NUM + DT_THISPROCNUM + DT_VERSIONTAGIDX (tag))

@@ -138,7 +139,7 @@

bump_num_relocations ();

-@@ -227,7 +233,85 @@ _dl_lookup_symbol_x (const char *undef_n
+@@ -227,7 +233,96 @@ _dl_lookup_symbol_x (const char *undef_n
up a versioned symbol. */
assert (version == NULL || flags == 0 || flags == DL_LOOKUP_ADD_DEPENDENCY);

@@ -188,9 +189,20 @@
+ direct_elem.r_list = undef_map->l_dtneeded.r_list + noffset;
+ direct_elem.r_nlist = 1;
+
++ /* Do normal lookup if we couldn't find the library. */
++ if (__builtin_expect (direct_elem.r_list[0] == NULL, 0))
++ {
++ if (__builtin_expect ((GLRO(dl_debug_mask) & DL_DEBUG_DIRECT) != 0, 0))
++ _dl_debug_printf ("was in unresolved library, doing full lookup\n");
++ goto normal_lookup;
++ }
+ /* If we are doing RTLD_NEXT, continue scope search after this. */
+ if (__builtin_expect (direct_elem.r_list[0] == skip_map, 0))
-+ goto normal_lookup;
++ {
++ if (__builtin_expect ((GLRO(dl_debug_mask) & DL_DEBUG_DIRECT) != 0, 0))
++ _dl_debug_printf ("RTLD_NEXT, continuing scope search ...\n");
++ goto normal_lookup;
++ }
+
+ res = do_lookup_x (undef_name, new_hash, &old_hash, *ref,
+ &current_value, &direct_elem, 0, version, flags,
@@ -225,7 +237,7 @@
if (__builtin_expect (skip_map != NULL, 0))
{
/* Search the relevant loaded objects for a definition. */
-@@ -240,9 +324,12 @@ _dl_lookup_symbol_x (const char *undef_n
+@@ -240,9 +335,12 @@ _dl_lookup_symbol_x (const char *undef_n
/* Search the relevant loaded objects for a definition. */
for (size_t start = i; *scope != NULL; start = 0, ++scope)
{
@@ -238,7 +250,7 @@
if (res > 0)
break;

-@@ -270,7 +357,7 @@ _dl_lookup_symbol_x (const char *undef_n
+@@ -270,7 +368,7 @@ _dl_lookup_symbol_x (const char *undef_n
return 0;
}
}
@@ -247,9 +259,9 @@
if (__builtin_expect (current_value.s == NULL, 0))
{
if ((*ref == NULL || ELFW(ST_BIND) ((*ref)->st_info) != STB_WEAK)
-diff --git a/elf/dl-support.c b/elf/dl-support.c
-index c3b6350..01c2d9e 100644
---- elf/dl-support.c
+Index: elf/dl-support.c
+===================================================================
+--- elf/dl-support.c.orig
+++ elf/dl-support.c
@@ -41,6 +41,7 @@ size_t _dl_platformlen;

@@ -259,20 +271,20 @@
int _dl_madvise;
ElfW(Addr) _dl_use_load_bias = -2;
int _dl_dynamic_weak;
-@@ -240,6 +241,8 @@ _dl_non_dynamic_init (void)
+@@ -243,6 +244,8 @@ _dl_non_dynamic_init (void)

- _dl_lazy = *(getenv ("LD_BIND_NOW") ?: "") == '\0';
+ _dl_madvise = *(getenv ("LD_NOMADVISE") ?: "") == '\0';

+ _dl_direct = *(getenv ("LD_BIND_NO_DIRECT") ?: "") != '\0';
+
_dl_bind_not = *(getenv ("LD_BIND_NOT") ?: "") != '\0';

_dl_dynamic_weak = *(getenv ("LD_DYNAMIC_WEAK") ?: "") == '\0';
-diff --git a/elf/dynamic-link.h b/elf/dynamic-link.h
-index 7eb9a36..2b8e393 100644
---- elf/dynamic-link.h
+Index: elf/dynamic-link.h
+===================================================================
+--- elf/dynamic-link.h.orig
+++ elf/dynamic-link.h
-@@ -65,6 +65,10 @@ #include <dl-machine.h>
+@@ -65,6 +65,10 @@ elf_machine_lazy_rel (struct link_map *m
#ifndef VERSYMIDX
# define VERSYMIDX(sym) (DT_NUM + DT_THISPROCNUM + DT_VERSIONTAGIDX (sym))
#endif
@@ -283,7 +295,7 @@


/* Read the dynamic section at DYN and fill in INFO with indices DT_*. */
-@@ -93,6 +97,9 @@ #endif
+@@ -93,6 +97,9 @@ elf_get_dynamic_info (struct link_map *l
else if (dyn->d_tag >= DT_LOPROC &&
dyn->d_tag < DT_LOPROC + DT_THISPROCNUM)
info[dyn->d_tag - DT_LOPROC + DT_NUM] = dyn;
@@ -293,7 +305,7 @@
else if ((Elf32_Word) DT_VERSIONTAGIDX (dyn->d_tag) < DT_VERSIONTAGNUM)
info[VERSYMIDX (dyn->d_tag)] = dyn;
else if ((Elf32_Word) DT_EXTRATAGIDX (dyn->d_tag) < DT_EXTRANUM)
-@@ -143,6 +150,8 @@ # if ! ELF_MACHINE_NO_REL
+@@ -143,6 +150,8 @@ elf_get_dynamic_info (struct link_map *l
# endif
ADJUST_DYN_INFO (DT_JMPREL);
ADJUST_DYN_INFO (VERSYMIDX (DT_VERSYM));
@@ -302,11 +314,11 @@
ADJUST_DYN_INFO (DT_ADDRTAGIDX (DT_GNU_HASH) + DT_NUM + DT_THISPROCNUM
+ DT_VERSIONTAGNUM + DT_EXTRANUM + DT_VALNUM);
# undef ADJUST_DYN_INFO
-diff --git a/elf/elf.h b/elf/elf.h
-index dae3597..99edc10 100644
---- elf/elf.h
+Index: elf/elf.h
+===================================================================
+--- elf/elf.h.orig
+++ elf/elf.h
-@@ -733,6 +733,14 @@ #define DT_VERNEEDNUM 0x6fffffff /* Numb
+@@ -733,6 +733,14 @@ typedef struct
#define DT_VERSIONTAGIDX(tag) (DT_VERNEEDNUM - (tag)) /* Reverse order! */
#define DT_VERSIONTAGNUM 16

@@ -321,7 +333,7 @@
/* Sun added these machine-independent extensions in the "processor-specific"
range. Be compatible. */
#define DT_AUXILIARY 0x7ffffffd /* Shared object to load before self */
-@@ -747,6 +755,11 @@ #define DF_TEXTREL 0x00000004 /* Object
+@@ -747,6 +755,11 @@ typedef struct
#define DF_BIND_NOW 0x00000008 /* No lazy binding for this object */
#define DF_STATIC_TLS 0x00000010 /* Module uses the static TLS model */

@@ -333,19 +345,19 @@
/* State flags selectable in the `d_un.d_val' element of the DT_FLAGS_1
entry in the dynamic section. */
#define DF_1_NOW 0x00000001 /* Set RTLD_NOW for this object. */
-diff --git a/elf/rtld.c b/elf/rtld.c
-index 9a21b8b..e61e2f6 100644
---- elf/rtld.c
+Index: elf/rtld.c
+===================================================================
+--- elf/rtld.c.orig
+++ elf/rtld.c
-@@ -150,6 +150,7 @@ #endif
+@@ -150,6 +150,7 @@ struct rtld_global_ro _rtld_global_ro at
._dl_correct_cache_id = _DL_CACHE_DEFAULT_ID,
._dl_hwcap_mask = HWCAP_IMPORTANT,
._dl_lazy = 1,
+ ._dl_direct = 1,
._dl_fpu_control = _FPU_DEFAULT,
._dl_pointer_guard = 1,
-
-@@ -2391,11 +2392,13 @@ #define LEN_AND_STR(str) sizeof (str) -
+ ._dl_madvise = 1,
+@@ -2442,11 +2443,13 @@ process_dl_debug (const char *dl_debug)
DL_DEBUG_SYMBOLS | DL_DEBUG_IMPCALLS },
{ LEN_AND_STR ("bindings"), "display information about symbol binding",
DL_DEBUG_BINDINGS | DL_DEBUG_IMPCALLS },
@@ -360,7 +372,7 @@
{ LEN_AND_STR ("statistics"), "display relocation statistics",
DL_DEBUG_STATISTICS },
{ LEN_AND_STR ("unused"), "determined unused DSOs",
-@@ -2632,7 +2635,12 @@ #endif
+@@ -2691,7 +2694,12 @@ process_envvars (enum mode *modep)
if (!INTUSE(__libc_enable_secure)
&& memcmp (envline, "PROFILE_OUTPUT", 14) == 0
&& envline[15] != '\0')
@@ -374,9 +386,9 @@
break;

case 16:
-diff --git a/include/link.h b/include/link.h
-index 0d6b661..f521a81 100644
---- include/link.h
+Index: include/link.h
+===================================================================
+--- include/link.h.orig
+++ include/link.h
@@ -117,10 +117,12 @@ struct link_map
indexed by DT_VALTAGIDX(tagvalue) and
@@ -393,7 +405,7 @@
const ElfW(Phdr) *l_phdr; /* Pointer to program header table in core. */
ElfW(Addr) l_entry; /* Entry point location. */
ElfW(Half) l_phnum; /* Number of program header entries. */
-@@ -284,6 +286,10 @@ #endif
+@@ -284,6 +286,10 @@ struct link_map
ElfW(Addr) l_relro_addr;
size_t l_relro_size;

@@ -404,11 +416,11 @@
/* Audit information. This array apparent must be the last in the
structure. Never add something after it. */
struct auditstate
-diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
-index b7d0f9b..f2c4b46 100644
---- sysdeps/generic/ldsodefs.h
+Index: sysdeps/generic/ldsodefs.h
+===================================================================
+--- sysdeps/generic/ldsodefs.h.orig
+++ sysdeps/generic/ldsodefs.h
-@@ -542,6 +542,7 @@ #define DL_DEBUG_UNUSED (1 << 8)
+@@ -542,6 +542,7 @@ struct rtld_global_ro
/* These two are used only internally. */
#define DL_DEBUG_HELP (1 << 9)
#define DL_DEBUG_PRELINK (1 << 10)
@@ -416,9 +428,9 @@

/* Cached value of `getpagesize ()'. */
EXTERN size_t _dl_pagesize;
-@@ -567,6 +568,9 @@ #define DL_DEBUG_PRELINK (1 << 10)
- /* Do we do lazy relocations? */
- EXTERN int _dl_lazy;
+@@ -570,6 +571,9 @@ struct rtld_global_ro
+ /* Should we advise kernel about memory usage? */
+ EXTERN int _dl_madvise;

+ /* Do we do direct relocations? */
+ EXTERN int _dl_direct;
@@ -426,11 +438,11 @@
/* Nonzero if runtime lookups should not update the .got/.plt. */
EXTERN int _dl_bind_not;

-diff --git a/elf/dl-dst.h b/elf/dl-dst.h
-index 83d16bd..d93796e 100644
---- elf/dl-dst.h
+Index: elf/dl-dst.h
+===================================================================
+--- elf/dl-dst.h.orig
+++ elf/dl-dst.h
-@@ -50,7 +50,7 @@ #define DL_DST_REQUIRED(l, name, len, cn
+@@ -50,7 +50,7 @@
\
First get the origin string if it is not available yet. \
This can only happen for the map of the executable. */ \
@@ -439,7 +451,7 @@
if ((l)->l_origin == NULL) \
{ \
assert ((l)->l_name[0] == '\0'); \
-@@ -68,9 +68,9 @@ #define DL_DST_REQUIRED(l, name, len, cn
+@@ -68,9 +68,9 @@
__len; })

#ifdef SHARED

++++++ glibc-2.4.90-nscd.diff ++++++
--- /var/tmp/diff_new_pack.6Jwqgv/_old 2006-10-13 15:46:03.000000000 +0200
+++ /var/tmp/diff_new_pack.6Jwqgv/_new 2006-10-13 15:46:03.000000000 +0200
@@ -1,6 +1,8 @@
---- nscd/cache.c
-+++ nscd/cache.c 2006/06/06 16:14:28
-@@ -224,28 +224,31 @@
+Index: nscd/cache.c
+===================================================================
+--- nscd/cache.c.orig
++++ nscd/cache.c
+@@ -224,28 +224,31 @@ prune_cache (struct database_dyn *table,
if (table->check_file)
{
struct stat64 st;
@@ -22,7 +24,7 @@
+ table->file_mtime = mtime;
}
- else
-+ if (table->filename2)
++ if (*table->filename2)
{
- if (st.st_mtime != table->file_mtime)
+ mtime = stat64 (table->filename2, &st) ? LONG_MAX : st.st_mtime;
@@ -43,25 +45,27 @@
/* We run through the table and find values which are not valid anymore.

Note that for the initial step, finding the entries to be removed,
---- nscd/connections.c
-+++ nscd/connections.c 2006/06/06 16:14:28
-@@ -108,6 +108,7 @@
+Index: nscd/connections.c
+===================================================================
+--- nscd/connections.c.orig
++++ nscd/connections.c
+@@ -108,6 +108,7 @@ struct database_dyn dbs[lastdb] =
.shared = 0,
.max_db_size = DEFAULT_MAX_DB_SIZE,
.filename = "/etc/passwd",
-+ .filename2 = NULL,
++ .filename2 = "",
.db_filename = _PATH_NSCD_PASSWD_DB,
.disabled_iov = &pwd_iov_disabled,
.postimeout = 3600,
-@@ -126,6 +127,7 @@
+@@ -126,6 +127,7 @@ struct database_dyn dbs[lastdb] =
.shared = 0,
.max_db_size = DEFAULT_MAX_DB_SIZE,
.filename = "/etc/group",
-+ .filename2 = NULL,
++ .filename2 = "",
.db_filename = _PATH_NSCD_GROUP_DB,
.disabled_iov = &grp_iov_disabled,
.postimeout = 3600,
-@@ -144,6 +146,7 @@
+@@ -144,6 +146,7 @@ struct database_dyn dbs[lastdb] =
.shared = 0,
.max_db_size = DEFAULT_MAX_DB_SIZE,
.filename = "/etc/hosts",
@@ -69,7 +73,7 @@
.db_filename = _PATH_NSCD_HOSTS_DB,
.disabled_iov = &hst_iov_disabled,
.postimeout = 3600,
-@@ -744,15 +747,9 @@
+@@ -744,15 +747,9 @@ cannot set socket to close on exec: %s;
/* We need the modification date of the file. */
struct stat64 st;

@@ -83,13 +87,15 @@
- else
- dbs[cnt].file_mtime = st.st_mtime;
+ dbs[cnt].file_mtime = stat64 (dbs[cnt].filename, &st) ? LONG_MAX : st.st_mtime;
-+ if (dbs[cnt].filename2)
++ if (*dbs[cnt].filename2)
+ dbs[cnt].file_mtime2 = stat64 (dbs[cnt].filename2, &st) ? LONG_MAX : st.st_mtime;
}
}

---- nscd/nscd.conf
-+++ nscd/nscd.conf 2006/06/06 16:14:28
+Index: nscd/nscd.conf
+===================================================================
+--- nscd/nscd.conf.orig
++++ nscd/nscd.conf
@@ -61,10 +61,10 @@
auto-propagate group yes

@@ -104,9 +110,11 @@
+ persistent hosts no
shared hosts yes
max-db-size hosts 33554432
---- nscd/nscd.h
-+++ nscd/nscd.h 2006/06/06 16:16:19
-@@ -66,8 +66,10 @@
+Index: nscd/nscd.h
+===================================================================
+--- nscd/nscd.h.orig
++++ nscd/nscd.h
+@@ -66,8 +66,10 @@ struct database_dyn
int shared;
int propagate;
const char filename[12];
@@ -117,9 +125,11 @@
size_t suggested_module;
size_t max_db_size;

---- nscd/nscd_stat.c
-+++ nscd/nscd_stat.c 2006/06/06 16:14:28
-@@ -302,7 +302,7 @@
+Index: nscd/nscd_stat.c
+===================================================================
+--- nscd/nscd_stat.c.orig
++++ nscd/nscd_stat.c
+@@ -302,7 +302,7 @@ receive_print_stats (void)
data.dbs[i].maxnsearched,
data.dbs[i].rdlockdelayed,
data.dbs[i].wrlockdelayed,

++++++ glibc-2.5-2006092922.tar.bz2 -> glibc-2.5-2006101200.tar.bz2 ++++++
glibc/glibc-2.5-2006092922.tar.bz2 /mounts/work_src_done/STABLE/glibc/glibc-2.5-2006101200.tar.bz2 differ: char 11, line 1

++++++ glibc-nptl-2.5-2006092922.tar.bz2 -> glibc-nptl-2.5-2006101200.tar.bz2 ++++++






++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Remember to have fun...

---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-commit+help@xxxxxxxxxxxx

< Previous Next >
List Navigation