This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch, master, updated. glibc-2.15-358-ga1bcbd4
- From: davem at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 12 Mar 2012 04:14:35 -0000
- Subject: GNU C Library master sources branch, master, updated. glibc-2.15-358-ga1bcbd4
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, master has been updated
via a1bcbd4035ac2483dc10da150d4db46f3e1744f8 (commit)
from cb9d617437084b4ebf02e50c0a82c5dd2582029a (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=a1bcbd4035ac2483dc10da150d4db46f3e1744f8
commit a1bcbd4035ac2483dc10da150d4db46f3e1744f8
Author: David S. Miller <davem@davemloft.net>
Date: Sun Mar 11 20:13:55 2012 -0700
Fix some 64-bit sparc build warnings.
* sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c
(__makecontext): Fix signedness of pointer casts setting up 'sp'.
* sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL) Use 'long'
for 'resultvar' otherwise things get truncated on 64-bit.
diff --git a/ChangeLog b/ChangeLog
index 29b7c67..7b6bc84 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2012-03-11 David S. Miller <davem@davemloft.net>
+ * sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c
+ (__makecontext): Fix signedness of pointer casts setting up 'sp'.
+ * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL) Use 'long'
+ for 'resultvar' otherwise things get truncated on 64-bit.
+
* sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard):
Fix masking out of the most significant byte of random value used.
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c b/sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c
index 3bb4e7a..e925040 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c
@@ -29,9 +29,9 @@ __makecontext (ucontext_t *ucp, void (*func) (void), int argc, ...)
va_list ap;
int i;
- sp = (long *) ((long) ucp->uc_stack.ss_sp + ucp->uc_stack.ss_size);
+ sp = (unsigned long *) ((long) ucp->uc_stack.ss_sp + ucp->uc_stack.ss_size);
sp -= (argc > 6 ? argc : 6) + 32;
- sp = (long *) (((long) sp) & -16L);
+ sp = (unsigned long *) (((long) sp) & -16L);
topsp = sp + (argc > 6 ? argc : 6) + 16;
ucp->uc_mcontext.mc_gregs[MC_PC] = (long) func;
diff --git a/sysdeps/unix/sysv/linux/sparc/sysdep.h b/sysdeps/unix/sysv/linux/sparc/sysdep.h
index 542e940..fc955c2 100644
--- a/sysdeps/unix/sysv/linux/sparc/sysdep.h
+++ b/sysdeps/unix/sysv/linux/sparc/sysdep.h
@@ -22,13 +22,13 @@
#undef INLINE_SYSCALL
#define INLINE_SYSCALL(name, nr, args...) \
({ INTERNAL_SYSCALL_DECL(err); \
- unsigned int resultvar = INTERNAL_SYSCALL(name, err, nr, args); \
+ unsigned long resultvar = INTERNAL_SYSCALL(name, err, nr, args);\
if (INTERNAL_SYSCALL_ERROR_P (resultvar, err)) \
{ \
__set_errno (INTERNAL_SYSCALL_ERRNO (resultvar, err)); \
- resultvar = 0xffffffff; \
+ resultvar = (unsigned long) -1; \
} \
- (int) resultvar; \
+ (long) resultvar; \
})
#undef INTERNAL_SYSCALL_DECL
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 5 +++++
.../unix/sysv/linux/sparc/sparc64/makecontext.c | 4 ++--
sysdeps/unix/sysv/linux/sparc/sysdep.h | 6 +++---
3 files changed, 10 insertions(+), 5 deletions(-)
hooks/post-receive
--
GNU C Library master sources