[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 0/6] linux-user: safe_syscall updates
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] [PATCH 0/6] linux-user: safe_syscall updates |
Date: |
Mon, 13 Jun 2016 23:09:17 +0100 |
On 13 June 2016 at 22:53, Peter Maydell <address@hidden> wrote:
> On 13 June 2016 at 22:45, Richard Henderson <address@hidden> wrote:
>> Richard Henderson (6):
>> linux-user: fix x86_64 safe_syscall
>> linux-user: Provide safe_syscall for i386
>> linux-user: Provide safe_syscall for arm
>> linux-user: Provide safe_syscall for aarch64
>> linux-user: Provide safe_syscall for s390x
>> linux-user: Provide safe_syscall for ppc64
>
> I just spent today writing these for i386, arm and aarch64,
> so we've duplicated work here :-(
Also, I have a patchset which moves from the generic/hostdep.h
to having explicitly one hostdep.h per supported architecture.
That needs to go in before these, otherwise these break
compilation unless you do a 'make clean'.
I'll send that out tomorrow, working version in
https://git.linaro.org/people/peter.maydell/qemu-arm.git/shortlog/refs/heads/sigrace-fixes
We also have a bug in the signal.c code which I noticed
trying to test my i386 safe_syscall: we call sigfillset()
on the uc_sigmask field of the ucontext_t* that the
kernel passes us as argument 3 of the signal handler.
This trashes a lot of stuff on the stack because the
libc headers say "sigset_t is 128 bytes" and the kernel
says "it's only 8 bytes", so the sigfillset() writes -1
to a lot of the stack that it shouldn't. (I don't know
why glibc exposes a struct that isn't actually what
the kernel provides here, but it's a very long standing
confusion :-( )
thanks
-- PMM
- Re: [Qemu-devel] [PATCH 2/6] linux-user: Provide safe_syscall for i386, (continued)
- [Qemu-devel] [PATCH 4/6] linux-user: Provide safe_syscall for aarch64, Richard Henderson, 2016/06/13
- Re: [Qemu-devel] [PATCH 4/6] linux-user: Provide safe_syscall for aarch64, Peter Maydell, 2016/06/13
- Re: [Qemu-devel] [PATCH 4/6] linux-user: Provide safe_syscall for aarch64, Richard Henderson, 2016/06/13
- Re: [Qemu-devel] [PATCH 4/6] linux-user: Provide safe_syscall for aarch64, Peter Maydell, 2016/06/13
- Re: [Qemu-devel] [PATCH 4/6] linux-user: Provide safe_syscall for aarch64, Peter Maydell, 2016/06/13
- Re: [Qemu-devel] [PATCH 4/6] linux-user: Provide safe_syscall for aarch64, Richard Henderson, 2016/06/13
- Re: [Qemu-devel] [PATCH 4/6] linux-user: Provide safe_syscall for aarch64, Peter Maydell, 2016/06/13
Re: [Qemu-devel] [PATCH 0/6] linux-user: safe_syscall updates, Peter Maydell, 2016/06/13
- Re: [Qemu-devel] [PATCH 0/6] linux-user: safe_syscall updates,
Peter Maydell <=