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

Re: Cross Memory Attach v3



Geert Uytterhoeven dixit:

>It turned out the flags parameter was non-zero, due to syscall() only supporting
>up to 5 parameters in the glibc I was using for testing.
>
>I checked the eglibc sources (2.11.1-0ubuntu7.8), and it's still not
>fixed there,
>although I could find a fix for a similar issue in klibc
>(http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=334917).

Does this work for you?

Index: eglibc-2.13/ports/sysdeps/unix/sysv/linux/m68k/syscall.S
===================================================================
--- eglibc-2.13.orig/ports/sysdeps/unix/sysv/linux/m68k/syscall.S	2011-12-04 14:36:16.000000000 +0000
+++ eglibc-2.13/ports/sysdeps/unix/sysv/linux/m68k/syscall.S	2011-12-04 14:36:26.000000000 +0000
@@ -24,9 +24,9 @@
 	.text
 ENTRY (syscall)
 	move.l 4(%sp), %d0	/* Load syscall number.  */
-	_DOARGS_5 (24)		/* Frob arguments.  */
+	_DOARGS_6 (28)		/* Frob arguments.  */
 	trap &0			/* Do the system call.  */
-	UNDOARGS_5		/* Unfrob arguments.  */
+	UNDOARGS_6		/* Unfrob arguments.  */
 	cmp.l &-4095, %d0	/* Check %d0 for error.  */
 	jcc SYSCALL_ERROR_LABEL	/* Jump to error handler if negative.  */
 	rts			/* Return to caller.  */

bye,
//mirabilos
-- 
  “Having a smoking section in a restaurant is like having
          a peeing section in a swimming pool.”
						-- Edward Burr


Reply to: