This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


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

glibc-2.3.2 patches


Hi Dan,
   Could you please add the following two patches to the patches directory
for glibc-2.3.2 in crosstool.  Both are already checked into glibc CVS.

1.
http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/sysdeps/unix/sysv/linux/sh
/socket.S.diff?r1=1.5&r2=1.6&cvsroot=glibc

The problem that I ran into was that multi-threaded apps would crash with a
seg fault when they invoked some of the socket calls (sendto() in my case.
This happened only on the sh4.  Turns out that a certain register (PR) was
not being saved and restored properly before and after invoking the system
call.  This patch fixes it.  It applies cleanly on glibc 2.3.2.  


2.
http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/sysdeps/unix/sysv/linux/sh
/sysdep.h.diff?r1=1.9&r2=1.10&cvsroot=glibc

This is actually a workaround for a bug in the sh4.  The actual bug is
documented here :

http://documentation.renesas.com/eng/products/mpumcu/tu/tnsh7456ae.pdf

Basically the cache & TLB should not be accessed for 4 (or was it 5?) cycles
after isssuing a TRAPA instruction.  I didn't run into any specific problem
because of this bug, but it seems useful to have and the patch itself seems
pretty harmless.  

I haven't had a chance to run the full tool-chain regression tests on them
yet (I doubt that these two patches would break anything, both seem pretty
harmless), I'll let you know if the regression tests ring any alarm bells.

	ankur

------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com


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