[CRIU] [PATCH] ptrace: Skip GETREGS on exits from syscalls when possible
Cyrill Gorcunov
gorcunov at gmail.com
Tue Sep 16 10:24:18 PDT 2014
On Tue, Sep 16, 2014 at 09:19:14PM +0400, Andrew Vagin wrote:
> On Tue, Sep 16, 2014 at 08:56:38PM +0400, Pavel Emelyanov wrote:
> > On 09/16/2014 03:46 PM, Andrew Vagin wrote:
> > > On Tue, Sep 16, 2014 at 01:26:15PM +0400, Andrew Vagin wrote:
> > >> On Tue, Sep 16, 2014 at 12:27:07AM +0400, Pavel Emelyanov wrote:
> > >>> From: Pavel Emelyanov <xemul at parallels.com>
> > >>>
> > >>> The PTRACE_SYSCALL traps task twice -- first on enter into
> > >>> and then on exit from syscall. If we trace a single task (and
> > >>> we do it on dump two times per task) we may skip half of all
> > >>> getregs calls -- on exit we don't need them.
> > >>
> > >> Acked-by: Andrew Vagin <avagin at parallels.com>
> > >>
> > >> Can we use breakpoints to avoid step-by-step tracing?
> > >
> > > No, We can't. If sigreturn restarts syscalls, we doesn't have a place
> > > for breakpoint.
> >
> > How to treat the "[PATCH 3/3] x86: use breakpoints instead of tracing syscalls"
> > sent 3 hours (and 15 minutes) after this?
you really should had have subject "hw breakpoint"
>
> I explain there, that sigreturn() doesn't restart system calls. They are
> restarted by other code, which adjusts eip to call __NR_restart_syscall.
> Look at get_task_regs() for more details.
>
> >
> > > Sorry for talking with myself.
> >
> > You're always welcome!
More information about the CRIU
mailing list