[PATCH user-cr] clone_x86_32: use correct 4th syscall arg

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The 4th arg to syscall is esi, not edi.  Wasn't too big a deal since
we yanked it out of regs->edi at process_32.c:sys_eclone(), but
it gets totally b0rked when ia32 regs fixup happens to use the
32-bit abi in x86-64.

Signed-off-by: Serge Hallyn <serge@xxxxxxxxxx>
---
 clone_x86_32.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/clone_x86_32.c b/clone_x86_32.c
index 2d26385..54960e0 100644
--- a/clone_x86_32.c
+++ b/clone_x86_32.c
@@ -66,7 +66,7 @@ int eclone(int (*fn)(void *), void *fn_arg, int clone_flags_low,
 		 "b" (clone_flags_low),	/* flags -> 1st (ebx) */
 		 "c" (&my_args),	/* clone_args -> 2nd (ecx) */
 		 "d" (sizeof(my_args)),	/* args_size -> 3rd (edx) */
-		 "D" (pids)		/* pids -> 4th (edi) */
+		 "S" (pids)		/* pids -> 4th (esi) */
 		);
 
 	if (retval < 0) {
-- 
1.6.3.3

_______________________________________________
Containers mailing list
Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/containers

[Index of Archives]     [Cgroups]     [Netdev]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux