Package: qemu
Version: 0.8.0-2
Severity: normal
Tags: patch

Implement three system calls used when running debootstrap.

Changelog:

  * Implement syscalls necessary to run debootstrap.
    - debian/patches/35_syscall_prctl.patch: New file.
    - debian/patches/36_syscall_mount.patch: New file.
    - debian/patches/37_syscall_arm_statfs64.patch: New file.

--
Anderson Lizardo
Embedded Linux Lab - 10LE
Nokia Institute of Technology - INdT
Manaus - Brazil
only in patch2:
unchanged:
--- qemu-0.8.0.orig/debian/patches/35_syscall_prctl.patch
+++ qemu-0.8.0/debian/patches/35_syscall_prctl.patch
@@ -0,0 +1,21 @@
+#DPATCHLEVEL=0
+--- linux-user/syscall.c	2005-12-19 22:51:53.000000000 +0000
++++ linux-user/syscall.c	2006-03-01 02:29:30.000000000 +0000
+@@ -32,6 +32,7 @@
+ #include <sys/time.h>
+ #include <sys/stat.h>
+ #include <sys/mount.h>
++#include <sys/prctl.h>
+ #include <sys/resource.h>
+ #include <sys/mman.h>
+ #include <sys/swap.h>
+@@ -2795,7 +2796,8 @@ long do_syscall(void *cpu_env, int num, 
+     case TARGET_NR_nfsservctl:
+         goto unimplemented;
+     case TARGET_NR_prctl:
+-        goto unimplemented;
++        ret = get_errno(prctl(arg1, arg2, arg3, arg4, arg5));
++        break;
+ #ifdef TARGET_NR_pread
+     case TARGET_NR_pread:
+         page_unprotect_range((void *)arg2, arg3);
only in patch2:
unchanged:
--- qemu-0.8.0.orig/debian/patches/36_syscall_mount.patch
+++ qemu-0.8.0/debian/patches/36_syscall_mount.patch
@@ -0,0 +1,15 @@
+#DPATCHLEVEL=0
+--- linux-user/syscall.c	2005-12-19 22:51:53.000000000 +0000
++++ linux-user/syscall.c	2006-03-01 02:38:38.000000000 +0000
+@@ -1771,8 +1771,10 @@ long do_syscall(void *cpu_env, int num, 
+         ret = get_errno(getpid());
+         break;
+     case TARGET_NR_mount:
+         /* need to look at the data field */
+-        goto unimplemented;
++	ret = get_errno(mount((const char *)arg1, (const char *)arg2,
++	    (const char *)arg3, (unsigned long)arg4, (const void *)arg5));
++	break;
+     case TARGET_NR_umount:
+         ret = get_errno(umount((const char *)arg1));
+         break;
only in patch2:
unchanged:
--- qemu-0.8.0.orig/debian/patches/37_syscall_arm_statfs64.patch
+++ qemu-0.8.0/debian/patches/37_syscall_arm_statfs64.patch
@@ -0,0 +1,10 @@
+#DPATCHLEVEL=0
+--- linux-user/arm/syscall_nr.h.orig	2006-03-07 17:24:22.000000000 +0000
++++ linux-user/arm/syscall_nr.h	2006-03-07 17:44:37.000000000 +0000
+@@ -260,4 +260,6 @@
+ 					/* 255 for get_thread_area */
+ 					/* 256 for set_tid_address */
+ #define TARGET_NR_clock_gettime			(263)
++#define TARGET_NR_statfs64			(266)
++#define TARGET_NR_fstatfs64			(267)
+ #define TARGET_NR_utimes		        (269)

Reply via email to