linux-mips
[Top] [All Lists]

Re: Question about signal syscalls !

To: Franck Bui-Huu <vagabon.xyz@gmail.com>
Subject: Re: Question about signal syscalls !
From: David Daney <ddaney@avtrex.com>
Date: Fri, 02 Feb 2007 08:04:45 -0800
Cc: Ralf Baechle <ralf@linux-mips.org>, linux-mips <linux-mips@linux-mips.org>
In-reply-to: <cda58cb80702020055t6eb2578fn5d1e4370e9ebda08@mail.gmail.com>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <cda58cb80702010243y4a36026i6945f2a5cd3791d0@mail.gmail.com> <20070201135734.GB12728@linux-mips.org> <cda58cb80702010654w74527a34k4ed229b499b8f9b2@mail.gmail.com> <45C21CFE.9060804@avtrex.com> <cda58cb80702020055t6eb2578fn5d1e4370e9ebda08@mail.gmail.com>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Thunderbird 1.5.0.9 (Windows/20061207)
Franck Bui-Huu wrote:
On 2/1/07, David Daney <ddaney@avtrex.com> wrote:
I don't think *any* registers *need* to be saved on sys_sigreturn().
The values in sigcontext on the user stack associated with the system
call are all used instead of the actual register values.


Sorry but I don't understand what you mean. Could you explain ?
sys_sigreturn does not return to the caller in the conventional sense. The entire user context (i.e. the value of *all* registers) is replaced with the values stored in the sigcontext structure on the caller's stack. If all registers are being restored from the sigcontext, then there is no need to save the current values of the registers, because they will never be used.

David Daney


<Prev in Thread] Current Thread [Next in Thread>