aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--linuxthreads_db/ChangeLog5
-rw-r--r--linuxthreads_db/td_thr_tls_get_addr.c20
-rw-r--r--localedata/ChangeLog6
-rw-r--r--localedata/tst-ctype.c2
-rw-r--r--localedata/tst-xlocale1.c2
-rw-r--r--localedata/tst-xlocale2.c2
-rw-r--r--sysdeps/mach/hurd/Versions7
8 files changed, 33 insertions, 15 deletions
diff --git a/ChangeLog b/ChangeLog
index 4cd7184..fe0f90c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2002-09-24 Roland McGrath <roland@redhat.com>
+ * sysdeps/mach/hurd/Versions (ld: GLIBC_2.0): Move __libc_read,
+ __libc_write, __libc_lseek64, to ...
+ (ld: GLIBC_PRIVATE): ... here.
+
* csu/Versions: Use %include <tls.h> to get USE_TLS defined.
(libc: GLIBC_2.0) [USE_TLS && HAVE___THREAD]: Remove _errno, errno.
(libc: GLIBC_2.3) [USE_TLS && HAVE___THREAD]: Put errno here instead.
diff --git a/linuxthreads_db/ChangeLog b/linuxthreads_db/ChangeLog
index ce40ce7..5005fac 100644
--- a/linuxthreads_db/ChangeLog
+++ b/linuxthreads_db/ChangeLog
@@ -1,3 +1,8 @@
+2002-09-24 Roland McGrath <roland@redhat.com>
+
+ * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Fetch just the
+ individual members we need, not the whole structures.
+
2002-09-24 Ulrich Drepper <drepper@redhat.com>
* td_thr_tls_get_addr.c (td_thr_tls_get_addr): Change second
diff --git a/linuxthreads_db/td_thr_tls_get_addr.c b/linuxthreads_db/td_thr_tls_get_addr.c
index cfe821f..2808e83 100644
--- a/linuxthreads_db/td_thr_tls_get_addr.c
+++ b/linuxthreads_db/td_thr_tls_get_addr.c
@@ -33,25 +33,25 @@ td_thr_tls_get_addr (const td_thrhandle_t *th __attribute__ ((unused)),
void **address __attribute__ ((unused)))
{
#if USE_TLS
- struct _pthread_descr_struct pds;
size_t modid;
- struct link_map map;
- union dtv pdtv;
+ union dtv pdtv, *dtvp;
LOG ("td_thr_tls_get_addr");
- /* Get the thread descriptor. */
- if (ps_pdread (th->th_ta_p->ph, th->th_unique, &pds,
- th->th_ta_p->sizeof_descr) != PS_OK)
+ /* Get the DTV pointer from the thread descriptor. */
+ if (ps_pdread (th->th_ta_p->ph,
+ &((struct _pthread_descr_struct *) th->th_unique)->dtv,
+ &dtvp, sizeof dtvp) != PS_OK)
return TD_ERR; /* XXX Other error value? */
- /* Get the link_map, so we gan get the module ID. */
- if (ps_pdread (th->th_ta_p->ph, map_address, &map,
- sizeof (struct link_map)) != PS_OK)
+ /* Read the module ID from the link_map. */
+ if (ps_pdread (th->th_ta_p->ph,
+ &((struct link_map *) map_address)->l_tls_modid,
+ &modid, sizeof modid) != PS_OK)
return TD_ERR; /* XXX Other error value? */
/* Get the corresponding entry in the DTV. */
- if (ps_pdread (th->th_ta_p->ph, pds.p_header.data.dtvp + map.l_tls_modid,
+ if (ps_pdread (th->th_ta_p->ph, dtvp + modid,
&pdtv, sizeof (union dtv)) != PS_OK)
return TD_ERR; /* XXX Other error value? */
diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index 1d12af4..bed3cef 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,3 +1,9 @@
+2002-09-23 Roland McGrath <roland@redhat.com>
+
+ * tst-xlocale1.c (main): int -> size_t for counter.
+ * tst-xlocale2.c (do_test): Likewise.
+ * tst-ctype.c (main): Likewise.
+
2002-09-22 Bruno Haible <bruno@clisp.org>
* charmaps/TSCII: New file.
diff --git a/localedata/tst-ctype.c b/localedata/tst-ctype.c
index b6f615c..fb2e78c 100644
--- a/localedata/tst-ctype.c
+++ b/localedata/tst-ctype.c
@@ -72,7 +72,7 @@ main (void)
size_t inplinelen = 0;
char *resline = NULL;
size_t reslinelen = 0;
- int n;
+ size_t n;
const unsigned short int *__ctype_b;
setlocale (LC_ALL, "");
diff --git a/localedata/tst-xlocale1.c b/localedata/tst-xlocale1.c
index 6dcbcce..297c9ad 100644
--- a/localedata/tst-xlocale1.c
+++ b/localedata/tst-xlocale1.c
@@ -23,7 +23,7 @@ static struct
int
main (void)
{
- int cnt;
+ size_t cnt;
int result = 0;
locale_t loc = newlocale (1 << LC_ALL, "C", NULL);
diff --git a/localedata/tst-xlocale2.c b/localedata/tst-xlocale2.c
index 8d73d34..30d87de 100644
--- a/localedata/tst-xlocale2.c
+++ b/localedata/tst-xlocale2.c
@@ -46,7 +46,7 @@ static int
do_test (locale_t l)
{
int result = 0;
- int n;
+size_t n;
#define DO_TEST(TEST, RES) \
for (n = 0; n < sizeof (str) - 1; ++n) \
diff --git a/sysdeps/mach/hurd/Versions b/sysdeps/mach/hurd/Versions
index 53904b1..a05003b 100644
--- a/sysdeps/mach/hurd/Versions
+++ b/sysdeps/mach/hurd/Versions
@@ -16,12 +16,15 @@ ld {
__hurd_threadvar_stack_mask; __hurd_threadvar_stack_offset;
# functions that must be shared with libc
- __close; __fxstat64; __getcwd; __getpid; __libc_read; __libc_write;
- __libc_lseek64; __mmap; __open; __xstat64; __fxstat64;
+ __close; __getcwd; __getpid;
+ __mmap; __open; __xstat64; __fxstat64;
_exit; _hurd_intr_rpc_mach_msg;
abort;
}
GLIBC_PRIVATE {
_dl_init_first;
+
+ # functions that must be shared with libc
+ __libc_read; __libc_write; __libc_lseek64;
}
}