[tjr@FreeBSD.org: cvs commit:src/lib/libpthread/arch/amd64/amd64 context.S]

Peter Wemm peter at wemm.org
Tue Jun 8 01:10:23 GMT 2004


On Monday 07 June 2004 06:10 pm, David Xu wrote:
> Is there any reason to use memory indirect jump ? did you
> have benchmarked context switch speed before and after this commit ?
> I won't use such indirect jump in speed sensitive case, it is
> not CPU branch trace cache friendly, it is better to use
> ret to match call in up level.

Because the return address is already on the higher level stack frame, 
and copying it (read/write/ret) is more awkward than the read+indirect 
jump.  Unfortunately, we can't indirectly access the flags register.

> David Xu
>
> Tim Robbins wrote:
> > Anyone who has resorted to using libc_r instead of libpthread on
> > amd64 should update their sources (ensuring they get context.S
> > revision 1.6), rebuild and reinstall libpthread (or world), then
> > give it another try. The bug I just fixed looks to have been
> > responsible for the mysterious crashes I was seeing in
> > Mozilla/Firefox, XMMS and GNOME.
> >
> >
> > Tim
> >
> > ----- Forwarded message from "Tim J. Robbins" <tjr at FreeBSD.org>
> > -----
> >
> > From: "Tim J. Robbins" <tjr at FreeBSD.org>
> > Date: Mon, 7 Jun 2004 21:25:17 +0000 (UTC)
> > To: src-committers at FreeBSD.org, cvs-src at FreeBSD.org,
> > 	cvs-all at FreeBSD.org
> > Subject: cvs commit: src/lib/libpthread/arch/amd64/amd64 context.S
> > X-FreeBSD-CVS-Branch: HEAD
> > Precedence: bulk
> > X-Loop: FreeBSD.ORG
> > X-Bogosity: No, tests=bogofilter, spamicity=0.000000,
> > version=0.15.7
> >
> > tjr         2004-06-07 21:25:16 UTC
> >
> >   FreeBSD src repository
> >
> >   Modified files:
> >     lib/libpthread/arch/amd64/amd64 context.S
> >   Log:
> >   Avoid clobbering the red zone when running on the new context's
> > stack in _amd64_restore_context().
> >
> >   Revision  Changes    Path
> >   1.6       +5 -0     
> > src/lib/libpthread/arch/amd64/amd64/context.S
> >
> > ----- End forwarded message -----
> > _______________________________________________
> > freebsd-threads at freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-threads
> > To unsubscribe, send any mail to
> > "freebsd-threads-unsubscribe at freebsd.org"
>
> _______________________________________________
> freebsd-amd64 at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-amd64
> To unsubscribe, send any mail to
> "freebsd-amd64-unsubscribe at freebsd.org"

-- 
Peter Wemm - peter at wemm.org; peter at FreeBSD.org; peter at yahoo-inc.com
"All of this is for nothing if we don't go to the stars" - JMS/B5


More information about the freebsd-threads mailing list