On Wed, Mar 24, 2010 at 12:57:46AM -0400, Oren Laadan wrote:On Tue, 23 Mar 2010, Matt Helsley wrote:
On Tue, Mar 23, 2010 at 08:53:42PM +0000, Russell King - ARM Linux wrote:On Sun, Mar 21, 2010 at 09:06:03PM -0400, Christoffer Dall wrote:Perhaps before we freeze the task we can save the syscall number on ARM.This small commit introduces a global state of system calls for ARMI don't particularly like the idea that we always store the syscall
making it possible for a debugger or checkpointing to gain information
about another process' state with respect to system calls.
number to memory for every system call, whether the stored version is
used or not.
Since ARM caches are generally not write allocate, this means mostly
write-only variables can have a higher than expected expense.
Is there not some thread flag which can be checked to see if we need to
store the syscall number?
The patches suggest that the signal delivery path -- which the freezer
utilizes -- has the syscall number already.
I like the idea.
Should work since the threads must be frozen first anyway.
However, would it also work for those cases when the freezing does not occur from the signal delivery path - e.g. for vfork and ptraced tasks ?
We could just as easily set it before the vfork uninterruptible completion.
ptracing I'd don't know about though.