This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]