On 13 June 2016 at 22:45, Richard Henderson <r...@twiddle.net> wrote: > Signed-off-by: Richard Henderson <r...@twiddle.net> > --- > linux-user/host/ppc64/hostdep.h | 34 +++++++++++++ > linux-user/host/ppc64/safe-syscall.inc.S | 87 > ++++++++++++++++++++++++++++++++ > 2 files changed, 121 insertions(+) > create mode 100644 linux-user/host/ppc64/hostdep.h > create mode 100644 linux-user/host/ppc64/safe-syscall.inc.S > > diff --git a/linux-user/host/ppc64/hostdep.h b/linux-user/host/ppc64/hostdep.h > new file mode 100644 > index 0000000..81e3d55 > --- /dev/null > +++ b/linux-user/host/ppc64/hostdep.h > @@ -0,0 +1,34 @@ > +/* > + * hostdep.h : things which are dependent on the host architecture > + * > + * This work is licensed under the terms of the GNU GPL, version 2 or later. > + * See the COPYING file in the top-level directory. > + */ > + > +#ifndef QEMU_HOSTDEP_H > +#define QEMU_HOSTDEP_H > + > +/* We have a safe-syscall.inc.S */ > +#define HAVE_SAFE_SYSCALL > + > +#ifndef __ASSEMBLER__ > + > +/* These are defined by the safe-syscall.inc.S file */ > +extern char safe_syscall_start[]; > +extern char safe_syscall_end[]; > + > +/* Adjust the signal context to rewind out of safe-syscall if we're in it */ > +static inline void rewind_if_in_safe_syscall(void *puc) > +{ > + struct ucontext *uc = puc; > + unsigned long *pcreg = &uc->uc_mcontext.gp_regs[PT_NIP]; > + > + if (*pcreg > (uintptr_t)safe_syscall_start > + && *pcreg < (uintptr_t)safe_syscall_end) { > + *pcreg = (uintptr_t)safe_syscall_start; > + } > +} > + > +#endif /* __ASSEMBLER__ */ > + > +#endif > diff --git a/linux-user/host/ppc64/safe-syscall.inc.S > b/linux-user/host/ppc64/safe-syscall.inc.S > new file mode 100644 > index 0000000..89e979c > --- /dev/null > +++ b/linux-user/host/ppc64/safe-syscall.inc.S > @@ -0,0 +1,87 @@ > +/* > + * safe-syscall.inc.S : host-specific assembly fragment > + * to handle signals occurring at the same time as system calls. > + * This is intended to be included by linux-user/safe-syscall.S > + * > + * Copyright (C) 2015 Timothy Edward Baldwin > <t.e.baldwi...@members.leeds.ac.uk>
I would say this ppc code was copyright you (or RedHat depending which hat you're wearing), not Timothy. thanks -- PMM