From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45379) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b1Q2K-00063e-EA for qemu-devel@nongnu.org; Fri, 13 May 2016 23:14:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b1Q2G-0001iT-3t for qemu-devel@nongnu.org; Fri, 13 May 2016 23:14:39 -0400 Received: from smtpbg62.qq.com ([103.7.29.139]:28577 helo=smtpbg64.qq.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b1Q2F-0001i5-Cz for qemu-devel@nongnu.org; Fri, 13 May 2016 23:14:36 -0400 Message-ID: <57369946.3090108@qq.com> Date: Sat, 14 May 2016 11:19:34 +0800 From: Chen Gang MIME-Version: 1.0 References: <1459260825-5710-1-git-send-email-chengang@emindsoft.com.cn> <572B5D59.6000006@emindsoft.com.cn> <20160505161152.GC16305@toto> In-Reply-To: <20160505161152.GC16305@toto> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH] linux-user/signal.c: Use target address instead of host address for microblaze restorer List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Edgar E. Iglesias" , Chen Gang Cc: Peter Maydell , Richard Henderson , Chris Metcalf , Laurent Vivier , "walt@tilera.com" , Riku Voipio , QEMU Developers , Chen Gang On 5/6/16 00:11, Edgar E. Iglesias wrote: > On Thu, May 05, 2016 at 10:48:57PM +0800, Chen Gang wrote: >> On 5/5/16 00:05, Peter Maydell wrote: >>> On 29 March 2016 at 15:13, wrote: >>>> From: Chen Gang >>>> >>>> The return address is in target space, so the restorer address needs to >>>> be target space, too. >>>> >>>> Signed-off-by: Chen Gang >>>> --- >>>> linux-user/signal.c | 3 ++- >>>> 1 file changed, 2 insertions(+), 1 deletion(-) >>>> >>>> diff --git a/linux-user/signal.c b/linux-user/signal.c >>>> index 4157154..c0a6f7e 100644 >>>> --- a/linux-user/signal.c >>>> +++ b/linux-user/signal.c >>>> @@ -3532,7 +3532,8 @@ static void setup_frame(int sig, struct target_sigaction *ka, >>>> >>>> /* Return from sighandler will jump to the tramp. >>>> Negative 8 offset because return is rtsd r15, 8 */ >>>> - env->regs[15] = ((unsigned long)frame->tramp) - 8; >>>> + env->regs[15] = frame_addr + offsetof(struct target_signal_frame, tramp) >>>> + - 8; >>>> } >>>> >>>> /* Set up registers for signal handler */ >>> >>> Reviewed-by: Peter Maydell >>> >> >> Thank all of you for the 2 patches reviewing. >> >> I guess, this month, I may have free time (at least, will not be as busy >> as the previous month), I shall finish tilegx floating point insns (it >> has been delayed too long). > > Reviewed-by: Edgar E. Iglesias > OK, thank you for your work. And now (finally), I guess, I should have free time for open source, and I should try to finish tilegx floating point insns within this month. Thanks. -- Chen Gang (陈刚) Managing Natural Environments is the Duty of Human Beings.