Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 23 Apr 2004 13:57:44 +0200
From:      Marc Olzheim <marcolz@stack.nl>
To:        hackers@freebsd.org
Subject:   Re: libc_r/uthread/uthread_create.c
Message-ID:  <20040423115744.GA27689@stack.nl>
In-Reply-To: <20040122101641.GA82155@stack.nl>
References:  <20040121211344.GA97203@stack.nl> <20040121220916.GC97291@stack.nl> <20040122101641.GA82155@stack.nl>

next in thread | previous in thread | raw e-mail | index | archive | help

--OXfL5xGRrasGEqWY
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Thu, Jan 22, 2004 at 11:16:41AM +0100, Marc Olzheim wrote:
> Daniel Eischen proposed a simpler patch, which does the same trick...

Could this be committed in -STABLE by someone ? Or must this wait until
after 4.10 ?

(CURRENT: pthread_private.h -r 1.82 -r 1.81)

Marc

--OXfL5xGRrasGEqWY
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="pthread_ebp.patch"

--- /usr/src/lib/libc_r/uthread/pthread_private.h	Tue Oct 22 16:44:02 2002
+++ /usr/src/lib/libc_r/uthread/pthread_private.h	Fri Apr 23 13:49:26 2004
@@ -84,7 +84,10 @@
 	fdata = (char *) (ucp)->uc_mcontext.mc_fpregs;	\
 	__asm__("frstor %0": :"m"(*fdata));		\
 } while (0)
-#define SET_RETURN_ADDR_JB(jb, ra)	(jb)[0]._jb[0] = (int)(ra)
+#define SET_RETURN_ADDR_JB(jb, ra)	do {		\
+	(jb)[0]._jb[0] = (int)(ra);			\
+	(jb)[0]._jb[3] = 0;				\
+} while (0)
 #elif	defined(__alpha__)
 #include <machine/reg.h>
 #define	GET_STACK_JB(jb)	((unsigned long)((jb)[0]._jb[R_SP + 4]))

--OXfL5xGRrasGEqWY--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040423115744.GA27689>