Re: Process record and replay checked in to main trunk

Mark Kettenis
2009-05-05T19:32:31Z

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1116 bytes --]

> > Date: Tue, 5 May 2009 21:39:50 +0800
> > From: Hui Zhu <teawater@gmail.com>
> > Cc: gdb-patches@sourceware.org
> >
> > On Mon, May 4, 2009 at 19:14, Eli Zaretskii <eliz@gnu.org> wrote:
> > >> Date: Sun, 3 May 2009 21:54:19 +0800
> > >> From: Hui Zhu <teawater@gmail.com>
> > >> Cc: gdb-patches@sourceware.org
> > >>
> > > Right, but I was asking about another _x86_ target, not just any
> > > target.  Is there anything an i386 target needs to do to get process
> > > record and replay work, except define suitable i386_intx80_record and
> > > i386_sysenter_record functions?
> >
> > Yes, if they use sysenter or intx80 to be syscall. They need set
> > these function pointers with themselves.
> > If some os use another insn to be syscall. the prec in i386-tdep need
> > update to support interface for it.
>
> But if the i386_intx80_record and i386_sysenter_record are
> Linux-specific interfaces, why they are visible in i386-tdep.c, which
> is supposed to be common to all i386 targets?

As far as I know all open source Unix-like operating systems implement systemcalls using int0x80 amd/or syscall.