Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-07 Thread Wirth, Allan
On 7/7/16, 3:09 PM, "Laurent Vivier" wrote: > > >Le 07/07/2016 à 21:04, Wirth, Allan a écrit : >> >> >> On 7/7/16, 3:02 PM, "Laurent Vivier" wrote: >> >>> >>> >>> Le 07/07/2016 à 20:49, Riku Voipio a écrit : On Sat, Jul 02, 2016 at 09:12:09PM +0100, Peter Maydell wrote: > On 2 July

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-07 Thread Laurent Vivier
Le 07/07/2016 à 21:04, Wirth, Allan a écrit : > > > On 7/7/16, 3:02 PM, "Laurent Vivier" wrote: > >> >> >> Le 07/07/2016 à 20:49, Riku Voipio a écrit : >>> On Sat, Jul 02, 2016 at 09:12:09PM +0100, Peter Maydell wrote: On 2 July 2016 at 17:41, Laurent Vivier wrote: > Sadly, this can

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-07 Thread Wirth, Allan
On 7/7/16, 3:02 PM, "Laurent Vivier" wrote: > > >Le 07/07/2016 à 20:49, Riku Voipio a écrit : >> On Sat, Jul 02, 2016 at 09:12:09PM +0100, Peter Maydell wrote: >>> On 2 July 2016 at 17:41, Laurent Vivier wrote: Sadly, this can't work: sparc/sparc64/cris use sys_select for NR_sel

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-07 Thread Laurent Vivier
Le 07/07/2016 à 20:49, Riku Voipio a écrit : > On Sat, Jul 02, 2016 at 09:12:09PM +0100, Peter Maydell wrote: >> On 2 July 2016 at 17:41, Laurent Vivier wrote: >>> Sadly, this can't work: >>> >>> sparc/sparc64/cris use sys_select for NR_select AND NR_newselect. >> >>> Not sure all is correct, bu

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-07 Thread Riku Voipio
On Sat, Jul 02, 2016 at 09:12:09PM +0100, Peter Maydell wrote: > On 2 July 2016 at 17:41, Laurent Vivier wrote: > > Sadly, this can't work: > > > > sparc/sparc64/cris use sys_select for NR_select AND NR_newselect. > > > Not sure all is correct, but it's what I've found: > > > > | __NR

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-02 Thread Laurent Vivier
Le 02/07/2016 à 23:20, Peter Maydell a écrit : > On 2 July 2016 at 22:17, Laurent Vivier wrote: >> Le 02/07/2016 à 22:12, Peter Maydell a écrit : >>> (1) Define neither NR_select nor NR__newselect >>> (and use pselect6 syscall for select): >>> aarch64, openrisc, tilegx, unicore32, presumably a

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-02 Thread Peter Maydell
On 2 July 2016 at 22:17, Laurent Vivier wrote: > Le 02/07/2016 à 22:12, Peter Maydell a écrit : >> (1) Define neither NR_select nor NR__newselect >> (and use pselect6 syscall for select): >> aarch64, openrisc, tilegx, unicore32, presumably any future arch > > They use: > > kernel/sys.c: > > #und

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-02 Thread Laurent Vivier
Le 02/07/2016 à 22:12, Peter Maydell a écrit : > On 2 July 2016 at 17:41, Laurent Vivier wrote: >> Sadly, this can't work: >> >> sparc/sparc64/cris use sys_select for NR_select AND NR_newselect. > >> Not sure all is correct, but it's what I've found: >> >> | __NR_select| __NR__n

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-02 Thread Peter Maydell
On 2 July 2016 at 17:41, Laurent Vivier wrote: > Sadly, this can't work: > > sparc/sparc64/cris use sys_select for NR_select AND NR_newselect. > Not sure all is correct, but it's what I've found: > > | __NR_select| __NR__newselect > ++-+

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-02 Thread Laurent Vivier
Le 02/07/2016 à 11:56, Peter Maydell a écrit : > On 2 July 2016 at 09:20, Laurent Vivier wrote: >> >> >> Le 01/07/2016 à 15:35, Peter Maydell a écrit : >>> On 1 July 2016 at 12:59, Wirth, Allan wrote: Linux on X86_64 does not use sel_arg_struct for select(), the args are passed direct

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-02 Thread Peter Maydell
On 2 July 2016 at 09:20, Laurent Vivier wrote: > > > Le 01/07/2016 à 15:35, Peter Maydell a écrit : >> On 1 July 2016 at 12:59, Wirth, Allan wrote: >>> Linux on X86_64 does not use sel_arg_struct for select(), the args are >>> passed directly. This patch switches a define so X86_64 uses the corre

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-02 Thread Laurent Vivier
Le 01/07/2016 à 15:35, Peter Maydell a écrit : > On 1 July 2016 at 12:59, Wirth, Allan wrote: >> Linux on X86_64 does not use sel_arg_struct for select(), the args are >> passed directly. This patch switches a define so X86_64 uses the correct >> calling convention. >> >> Signed-off-by: Allan Wi

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-01 Thread Peter Maydell
On 1 July 2016 at 16:34, Wirth, Allan wrote: > Thanks for the feedback. I didn’t find that patch before when I searched, so > apologies for the duplicate submission. > > The proposed fix certainly does seem cleaner and more general. Does it > imply though that this patch is incorrect? It fixes the

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-01 Thread Wirth, Allan
Thanks for the feedback. I didn’t find that patch before when I searched, so apologies for the duplicate submission. The proposed fix certainly does seem cleaner and more general. Does it imply though that this patch is incorrect? It fixes the emulation bug in my use case, and AFAICT does not intr

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-01 Thread Peter Maydell
On 1 July 2016 at 12:59, Wirth, Allan wrote: > Linux on X86_64 does not use sel_arg_struct for select(), the args are > passed directly. This patch switches a define so X86_64 uses the correct > calling convention. > > Signed-off-by: Allan Wirth > --- > linux-user/syscall.c | 2 +- > 1 file chan

[Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64

2016-07-01 Thread Wirth, Allan
Linux on X86_64 does not use sel_arg_struct for select(), the args are passed directly. This patch switches a define so X86_64 uses the correct calling convention. Signed-off-by: Allan Wirth --- linux-user/syscall.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linux-user/s