All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 1/2] linux-user: add rmdir() strace
@ 2011-02-15 20:10 Laurent Vivier
  2011-02-15 20:10 ` [Qemu-devel] [PATCH 2/2] linux-user: in linux-user/strace.c, tswap() is useless Laurent Vivier
  2011-02-16 10:26 ` [Qemu-devel] [PATCH 1/2] linux-user: add rmdir() strace Riku Voipio
  0 siblings, 2 replies; 4+ messages in thread
From: Laurent Vivier @ 2011-02-15 20:10 UTC (permalink / raw)
  To: Riku Voipio; +Cc: qemu-devel, Laurent Vivier

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
---
 linux-user/strace.c    |   12 ++++++++++++
 linux-user/strace.list |    3 +++
 2 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/linux-user/strace.c b/linux-user/strace.c
index 1836666..05277c0 100644
--- a/linux-user/strace.c
+++ b/linux-user/strace.c
@@ -876,6 +876,18 @@ print_mkdirat(const struct syscallname *name,
 }
 #endif
 
+#ifdef TARGET_NR_rmdir
+static void
+print_rmdir(const struct syscallname *name,
+    abi_long arg0, abi_long arg1, abi_long arg2,
+    abi_long arg3, abi_long arg4, abi_long arg5)
+{
+    print_syscall_prologue(name);
+    print_string(arg0, 0);
+    print_syscall_epilogue(name);
+}
+#endif
+
 #ifdef TARGET_NR_mknod
 static void
 print_mknod(const struct syscallname *name,
diff --git a/linux-user/strace.list b/linux-user/strace.list
index d7be0e7..563a67f 100644
--- a/linux-user/strace.list
+++ b/linux-user/strace.list
@@ -495,6 +495,9 @@
 #ifdef TARGET_NR_mkdirat
 { TARGET_NR_mkdirat, "mkdirat" , NULL, print_mkdirat, NULL },
 #endif
+#ifdef TARGET_NR_rmdir
+{ TARGET_NR_rmdir, "rmdir" , NULL, print_rmdir, NULL },
+#endif
 #ifdef TARGET_NR_mknod
 { TARGET_NR_mknod, "mknod" , NULL, print_mknod, NULL },
 #endif
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [Qemu-devel] [PATCH 2/2] linux-user: in linux-user/strace.c, tswap() is useless
  2011-02-15 20:10 [Qemu-devel] [PATCH 1/2] linux-user: add rmdir() strace Laurent Vivier
@ 2011-02-15 20:10 ` Laurent Vivier
  2011-02-16 10:25   ` Riku Voipio
  2011-02-16 10:26 ` [Qemu-devel] [PATCH 1/2] linux-user: add rmdir() strace Riku Voipio
  1 sibling, 1 reply; 4+ messages in thread
From: Laurent Vivier @ 2011-02-15 20:10 UTC (permalink / raw)
  To: Riku Voipio; +Cc: qemu-devel, Laurent Vivier

Syscall parameters are already swapped by the caller.

This patch removes useless tswap() from strace.c

$ QEMU_STRACE=1 chroot /m68k mknod myramdisk b 1 1
with tswap()
...
29944 mknod("myramdisk",026630200000) = 0
...

without tswap()

...
30042 mknod("myramdisk",S_IFBLK|0666,makedev(1,1)) = 0
...

natively:

$ strace touch mytouch
...
open("mytouch", O_WRONLY|O_CREAT|O_NOCTTY|O_NONBLOCK, 0666) = 3
...

$ QEMU_STRACE=1 chroot /m68k touch mytouch
with tswap()
...
30368 open("/usr/share/locale/locale.alias",O_RDONLY) = 3
30368 fstat64(50331648,0x4080032c) = 0
...
30368 open("mytouch",O_RDONLY|O_CREAT|O_LARGEFILE|O_NOCTTY|O_NONBLOCK|0x1) = 0
...
without tswap()
...
30572 open("/usr/share/locale/locale.alias",O_RDONLY) = 3
30572 fstat64(3,0x4080032c) = 0
...
30572 open("mytouch",O_WRONLY|O_CREAT|O_LARGEFILE|O_NOCTTY|O_NONBLOCK,0666) = 0

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
---
 linux-user/strace.c |   71 +++++++++++++++++++++------------------------------
 1 files changed, 29 insertions(+), 42 deletions(-)

diff --git a/linux-user/strace.c b/linux-user/strace.c
index 05277c0..86ad5aa 100644
--- a/linux-user/strace.c
+++ b/linux-user/strace.c
@@ -441,14 +441,11 @@ get_comma(int last)
 }
 
 static void
-print_flags(const struct flags *f, abi_long tflags, int last)
+print_flags(const struct flags *f, abi_long flags, int last)
 {
     const char *sep = "";
-    int flags;
     int n;
 
-    flags = (int)tswap32(tflags);
-
     if ((flags == 0) && (f->f_value == 0)) {
         gemu_log("%s%s", f->f_string, get_comma(last));
         return;
@@ -476,10 +473,8 @@ print_flags(const struct flags *f, abi_long tflags, int last)
 }
 
 static void
-print_at_dirfd(abi_long tdirfd, int last)
+print_at_dirfd(abi_long dirfd, int last)
 {
-    int dirfd = tswap32(tdirfd);
-
 #ifdef AT_FDCWD
     if (dirfd == AT_FDCWD) {
         gemu_log("AT_FDCWD%s", get_comma(last));
@@ -490,11 +485,10 @@ print_at_dirfd(abi_long tdirfd, int last)
 }
 
 static void
-print_file_mode(abi_long tmode, int last)
+print_file_mode(abi_long mode, int last)
 {
     const char *sep = "";
     const struct flags *m;
-    mode_t mode = (mode_t)tswap32(tmode);
 
     for (m = &mode_flags[0]; m->f_string != NULL; m++) {
         if ((m->f_value & mode) == m->f_value) {
@@ -514,10 +508,8 @@ print_file_mode(abi_long tmode, int last)
 }
 
 static void
-print_open_flags(abi_long tflags, int last)
+print_open_flags(abi_long flags, int last)
 {
-    int flags = tswap32(tflags);
-
     print_flags(open_access_flags, flags & TARGET_O_ACCMODE, 1);
     flags &= ~TARGET_O_ACCMODE;
     if (flags == 0) {
@@ -620,7 +612,7 @@ print_accept(const struct syscallname *name,
     abi_long arg3, abi_long arg4, abi_long arg5)
 {
     print_syscall_prologue(name);
-    print_raw_param("%d", tswap32(arg0), 0);
+    print_raw_param("%d", arg0, 0);
     print_pointer(arg1, 0);
     print_number(arg2, 1);
     print_syscall_epilogue(name);
@@ -698,7 +690,7 @@ print_execv(const struct syscallname *name,
 {
     print_syscall_prologue(name);
     print_string(arg0, 0);
-    print_raw_param("0x" TARGET_ABI_FMT_lx, tswapl(arg1), 1);
+    print_raw_param("0x" TARGET_ABI_FMT_lx, arg1, 1);
     print_syscall_epilogue(name);
 }
 #endif
@@ -742,13 +734,8 @@ print_fchownat(const struct syscallname *name,
     print_syscall_prologue(name);
     print_at_dirfd(arg0, 0);
     print_string(arg1, 0);
-#ifdef USE_UID16
-    print_raw_param("%d", tswap16(arg2), 0);
-    print_raw_param("%d", tswap16(arg3), 0);
-#else
-    print_raw_param("%d", tswap32(arg2), 0);
-    print_raw_param("%d", tswap32(arg3), 0);
-#endif
+    print_raw_param("%d", arg2, 0);
+    print_raw_param("%d", arg3, 0);
     print_flags(at_file_flags, arg4, 1);
     print_syscall_epilogue(name);
 }
@@ -761,7 +748,7 @@ print_fcntl(const struct syscallname *name,
     abi_long arg3, abi_long arg4, abi_long arg5)
 {
     print_syscall_prologue(name);
-    print_raw_param("%d", tswap32(arg0), 0);
+    print_raw_param("%d", arg0, 0);
     print_flags(fcntl_flags, arg1, 0);
     /*
      * TODO: check flags and print following argument only
@@ -842,7 +829,7 @@ print_fstat(const struct syscallname *name,
     abi_long arg3, abi_long arg4, abi_long arg5)
 {
     print_syscall_prologue(name);
-    print_raw_param("%d", tswap32(arg0), 0);
+    print_raw_param("%d", arg0, 0);
     print_pointer(arg1, 1);
     print_syscall_epilogue(name);
 }
@@ -894,14 +881,14 @@ print_mknod(const struct syscallname *name,
     abi_long arg0, abi_long arg1, abi_long arg2,
     abi_long arg3, abi_long arg4, abi_long arg5)
 {
-    int hasdev = (tswapl(arg1) & (S_IFCHR|S_IFBLK));
+    int hasdev = (arg1 & (S_IFCHR|S_IFBLK));
 
     print_syscall_prologue(name);
     print_string(arg0, 0);
     print_file_mode(arg1, (hasdev == 0));
     if (hasdev) {
-        print_raw_param("makedev(%d", major(tswapl(arg2)), 0);
-        print_raw_param("%d)", minor(tswapl(arg2)), 1);
+        print_raw_param("makedev(%d", major(arg2), 0);
+        print_raw_param("%d)", minor(arg2), 1);
     }
     print_syscall_epilogue(name);
 }
@@ -913,15 +900,15 @@ print_mknodat(const struct syscallname *name,
     abi_long arg0, abi_long arg1, abi_long arg2,
     abi_long arg3, abi_long arg4, abi_long arg5)
 {
-    int hasdev = (tswapl(arg2) & (S_IFCHR|S_IFBLK));
+    int hasdev = (arg2 & (S_IFCHR|S_IFBLK));
 
     print_syscall_prologue(name);
     print_at_dirfd(arg0, 0);
     print_string(arg1, 0);
     print_file_mode(arg2, (hasdev == 0));
     if (hasdev) {
-        print_raw_param("makedev(%d", major(tswapl(arg3)), 0);
-        print_raw_param("%d)", minor(tswapl(arg3)), 1);
+        print_raw_param("makedev(%d", major(arg3), 0);
+        print_raw_param("%d)", minor(arg3), 1);
     }
     print_syscall_epilogue(name);
 }
@@ -933,7 +920,7 @@ print_mq_open(const struct syscallname *name,
     abi_long arg0, abi_long arg1, abi_long arg2,
     abi_long arg3, abi_long arg4, abi_long arg5)
 {
-    int is_creat = (tswapl(arg1) & TARGET_O_CREAT);
+    int is_creat = (arg1 & TARGET_O_CREAT);
 
     print_syscall_prologue(name);
     print_string(arg0, 0);
@@ -952,7 +939,7 @@ print_open(const struct syscallname *name,
     abi_long arg0, abi_long arg1, abi_long arg2,
     abi_long arg3, abi_long arg4, abi_long arg5)
 {
-    int is_creat = (tswap32(arg1) & TARGET_O_CREAT);
+    int is_creat = (arg1 & TARGET_O_CREAT);
 
     print_syscall_prologue(name);
     print_string(arg0, 0);
@@ -969,7 +956,7 @@ print_openat(const struct syscallname *name,
     abi_long arg0, abi_long arg1, abi_long arg2,
     abi_long arg3, abi_long arg4, abi_long arg5)
 {
-    int is_creat = (tswap32(arg2) & TARGET_O_CREAT);
+    int is_creat = (arg2 & TARGET_O_CREAT);
 
     print_syscall_prologue(name);
     print_at_dirfd(arg0, 0);
@@ -1018,7 +1005,7 @@ print_readlink(const struct syscallname *name,
     print_syscall_prologue(name);
     print_string(arg0, 0);
     print_pointer(arg1, 0);
-    print_raw_param("%u", tswapl(arg2), 1);
+    print_raw_param("%u", arg2, 1);
     print_syscall_epilogue(name);
 }
 #endif
@@ -1033,7 +1020,7 @@ print_readlinkat(const struct syscallname *name,
     print_at_dirfd(arg0, 0);
     print_string(arg1, 0);
     print_pointer(arg2, 0);
-    print_raw_param("%u", tswapl(arg3), 1);
+    print_raw_param("%u", arg3, 1);
     print_syscall_epilogue(name);
 }
 #endif
@@ -1223,11 +1210,11 @@ print_mmap(const struct syscallname *name,
 {
     print_syscall_prologue(name);
     print_pointer(arg0, 0);
-    print_raw_param("%d", tswapl(arg1), 0);
+    print_raw_param("%d", arg1, 0);
     print_flags(mmap_prot_flags, arg2, 0);
     print_flags(mmap_flags, arg3, 0);
-    print_raw_param("%d", tswapl(arg4), 0);
-    print_raw_param("%#x", tswapl(arg5), 1);
+    print_raw_param("%d", arg4, 0);
+    print_raw_param("%#x", arg5, 1);
     print_syscall_epilogue(name);
 }
 #define print_mmap2     print_mmap
@@ -1241,7 +1228,7 @@ print_mprotect(const struct syscallname *name,
 {
     print_syscall_prologue(name);
     print_pointer(arg0, 0);
-    print_raw_param("%d", tswapl(arg1), 0);
+    print_raw_param("%d", arg1, 0);
     print_flags(mmap_prot_flags, arg2, 1);
     print_syscall_epilogue(name);
 }
@@ -1255,7 +1242,7 @@ print_munmap(const struct syscallname *name,
 {
     print_syscall_prologue(name);
     print_pointer(arg0, 0);
-    print_raw_param("%d", tswapl(arg1), 1);
+    print_raw_param("%d", arg1, 1);
     print_syscall_epilogue(name);
 }
 #endif
@@ -1269,7 +1256,7 @@ if( cmd == val ) { \
     return; \
 }
 
-    int cmd = (int)tswap32(tflag);
+    int cmd = (int)tflag;
 #ifdef FUTEX_PRIVATE_FLAG
     if (cmd & FUTEX_PRIVATE_FLAG) {
         gemu_log("FUTEX_PRIVATE_FLAG|");
@@ -1303,10 +1290,10 @@ print_futex(const struct syscallname *name,
     print_syscall_prologue(name);
     print_pointer(arg0, 0);
     print_futex_op(arg1, 0);
-    print_raw_param(",%d", tswapl(arg2), 0);
+    print_raw_param(",%d", arg2, 0);
     print_pointer(arg3, 0); /* struct timespec */
     print_pointer(arg4, 0);
-    print_raw_param("%d", tswapl(arg4), 1);
+    print_raw_param("%d", arg4, 1);
     print_syscall_epilogue(name);
 }
 #endif
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [Qemu-devel] [PATCH 2/2] linux-user: in linux-user/strace.c, tswap() is useless
  2011-02-15 20:10 ` [Qemu-devel] [PATCH 2/2] linux-user: in linux-user/strace.c, tswap() is useless Laurent Vivier
@ 2011-02-16 10:25   ` Riku Voipio
  0 siblings, 0 replies; 4+ messages in thread
From: Riku Voipio @ 2011-02-16 10:25 UTC (permalink / raw)
  To: Laurent Vivier; +Cc: qemu-devel

Hi,


On Tue, Feb 15, 2011 at 09:10:44PM +0100, Laurent Vivier wrote:
> Syscall parameters are already swapped by the caller.
> 
> This patch removes useless tswap() from strace.c

Thanks. Added to next linux-user que.

I modified your patch to have casts to the given printf format
specifiers, so we don't get compiler warnings.
 
> $ QEMU_STRACE=1 chroot /m68k mknod myramdisk b 1 1
> with tswap()
> ...
> 29944 mknod("myramdisk",026630200000) = 0
> ...
> 
> without tswap()
> 
> ...
> 30042 mknod("myramdisk",S_IFBLK|0666,makedev(1,1)) = 0
> ...
> 
> natively:
> 
> $ strace touch mytouch
> ...
> open("mytouch", O_WRONLY|O_CREAT|O_NOCTTY|O_NONBLOCK, 0666) = 3
> ...
> 
> $ QEMU_STRACE=1 chroot /m68k touch mytouch
> with tswap()
> ...
> 30368 open("/usr/share/locale/locale.alias",O_RDONLY) = 3
> 30368 fstat64(50331648,0x4080032c) = 0
> ...
> 30368 open("mytouch",O_RDONLY|O_CREAT|O_LARGEFILE|O_NOCTTY|O_NONBLOCK|0x1) = 0
> ...
> without tswap()
> ...
> 30572 open("/usr/share/locale/locale.alias",O_RDONLY) = 3
> 30572 fstat64(3,0x4080032c) = 0
> ...
> 30572 open("mytouch",O_WRONLY|O_CREAT|O_LARGEFILE|O_NOCTTY|O_NONBLOCK,0666) = 0
> 
> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
> ---
>  linux-user/strace.c |   71 +++++++++++++++++++++------------------------------
>  1 files changed, 29 insertions(+), 42 deletions(-)
> 
> diff --git a/linux-user/strace.c b/linux-user/strace.c
> index 05277c0..86ad5aa 100644
> --- a/linux-user/strace.c
> +++ b/linux-user/strace.c
> @@ -441,14 +441,11 @@ get_comma(int last)
>  }
>  
>  static void
> -print_flags(const struct flags *f, abi_long tflags, int last)
> +print_flags(const struct flags *f, abi_long flags, int last)
>  {
>      const char *sep = "";
> -    int flags;
>      int n;
>  
> -    flags = (int)tswap32(tflags);
> -
>      if ((flags == 0) && (f->f_value == 0)) {
>          gemu_log("%s%s", f->f_string, get_comma(last));
>          return;
> @@ -476,10 +473,8 @@ print_flags(const struct flags *f, abi_long tflags, int last)
>  }
>  
>  static void
> -print_at_dirfd(abi_long tdirfd, int last)
> +print_at_dirfd(abi_long dirfd, int last)
>  {
> -    int dirfd = tswap32(tdirfd);
> -
>  #ifdef AT_FDCWD
>      if (dirfd == AT_FDCWD) {
>          gemu_log("AT_FDCWD%s", get_comma(last));
> @@ -490,11 +485,10 @@ print_at_dirfd(abi_long tdirfd, int last)
>  }
>  
>  static void
> -print_file_mode(abi_long tmode, int last)
> +print_file_mode(abi_long mode, int last)
>  {
>      const char *sep = "";
>      const struct flags *m;
> -    mode_t mode = (mode_t)tswap32(tmode);
>  
>      for (m = &mode_flags[0]; m->f_string != NULL; m++) {
>          if ((m->f_value & mode) == m->f_value) {
> @@ -514,10 +508,8 @@ print_file_mode(abi_long tmode, int last)
>  }
>  
>  static void
> -print_open_flags(abi_long tflags, int last)
> +print_open_flags(abi_long flags, int last)
>  {
> -    int flags = tswap32(tflags);
> -
>      print_flags(open_access_flags, flags & TARGET_O_ACCMODE, 1);
>      flags &= ~TARGET_O_ACCMODE;
>      if (flags == 0) {
> @@ -620,7 +612,7 @@ print_accept(const struct syscallname *name,
>      abi_long arg3, abi_long arg4, abi_long arg5)
>  {
>      print_syscall_prologue(name);
> -    print_raw_param("%d", tswap32(arg0), 0);
> +    print_raw_param("%d", arg0, 0);
>      print_pointer(arg1, 0);
>      print_number(arg2, 1);
>      print_syscall_epilogue(name);
> @@ -698,7 +690,7 @@ print_execv(const struct syscallname *name,
>  {
>      print_syscall_prologue(name);
>      print_string(arg0, 0);
> -    print_raw_param("0x" TARGET_ABI_FMT_lx, tswapl(arg1), 1);
> +    print_raw_param("0x" TARGET_ABI_FMT_lx, arg1, 1);
>      print_syscall_epilogue(name);
>  }
>  #endif
> @@ -742,13 +734,8 @@ print_fchownat(const struct syscallname *name,
>      print_syscall_prologue(name);
>      print_at_dirfd(arg0, 0);
>      print_string(arg1, 0);
> -#ifdef USE_UID16
> -    print_raw_param("%d", tswap16(arg2), 0);
> -    print_raw_param("%d", tswap16(arg3), 0);
> -#else
> -    print_raw_param("%d", tswap32(arg2), 0);
> -    print_raw_param("%d", tswap32(arg3), 0);
> -#endif
> +    print_raw_param("%d", arg2, 0);
> +    print_raw_param("%d", arg3, 0);
>      print_flags(at_file_flags, arg4, 1);
>      print_syscall_epilogue(name);
>  }
> @@ -761,7 +748,7 @@ print_fcntl(const struct syscallname *name,
>      abi_long arg3, abi_long arg4, abi_long arg5)
>  {
>      print_syscall_prologue(name);
> -    print_raw_param("%d", tswap32(arg0), 0);
> +    print_raw_param("%d", arg0, 0);
>      print_flags(fcntl_flags, arg1, 0);
>      /*
>       * TODO: check flags and print following argument only
> @@ -842,7 +829,7 @@ print_fstat(const struct syscallname *name,
>      abi_long arg3, abi_long arg4, abi_long arg5)
>  {
>      print_syscall_prologue(name);
> -    print_raw_param("%d", tswap32(arg0), 0);
> +    print_raw_param("%d", arg0, 0);
>      print_pointer(arg1, 1);
>      print_syscall_epilogue(name);
>  }
> @@ -894,14 +881,14 @@ print_mknod(const struct syscallname *name,
>      abi_long arg0, abi_long arg1, abi_long arg2,
>      abi_long arg3, abi_long arg4, abi_long arg5)
>  {
> -    int hasdev = (tswapl(arg1) & (S_IFCHR|S_IFBLK));
> +    int hasdev = (arg1 & (S_IFCHR|S_IFBLK));
>  
>      print_syscall_prologue(name);
>      print_string(arg0, 0);
>      print_file_mode(arg1, (hasdev == 0));
>      if (hasdev) {
> -        print_raw_param("makedev(%d", major(tswapl(arg2)), 0);
> -        print_raw_param("%d)", minor(tswapl(arg2)), 1);
> +        print_raw_param("makedev(%d", major(arg2), 0);
> +        print_raw_param("%d)", minor(arg2), 1);
>      }
>      print_syscall_epilogue(name);
>  }
> @@ -913,15 +900,15 @@ print_mknodat(const struct syscallname *name,
>      abi_long arg0, abi_long arg1, abi_long arg2,
>      abi_long arg3, abi_long arg4, abi_long arg5)
>  {
> -    int hasdev = (tswapl(arg2) & (S_IFCHR|S_IFBLK));
> +    int hasdev = (arg2 & (S_IFCHR|S_IFBLK));
>  
>      print_syscall_prologue(name);
>      print_at_dirfd(arg0, 0);
>      print_string(arg1, 0);
>      print_file_mode(arg2, (hasdev == 0));
>      if (hasdev) {
> -        print_raw_param("makedev(%d", major(tswapl(arg3)), 0);
> -        print_raw_param("%d)", minor(tswapl(arg3)), 1);
> +        print_raw_param("makedev(%d", major(arg3), 0);
> +        print_raw_param("%d)", minor(arg3), 1);
>      }
>      print_syscall_epilogue(name);
>  }
> @@ -933,7 +920,7 @@ print_mq_open(const struct syscallname *name,
>      abi_long arg0, abi_long arg1, abi_long arg2,
>      abi_long arg3, abi_long arg4, abi_long arg5)
>  {
> -    int is_creat = (tswapl(arg1) & TARGET_O_CREAT);
> +    int is_creat = (arg1 & TARGET_O_CREAT);
>  
>      print_syscall_prologue(name);
>      print_string(arg0, 0);
> @@ -952,7 +939,7 @@ print_open(const struct syscallname *name,
>      abi_long arg0, abi_long arg1, abi_long arg2,
>      abi_long arg3, abi_long arg4, abi_long arg5)
>  {
> -    int is_creat = (tswap32(arg1) & TARGET_O_CREAT);
> +    int is_creat = (arg1 & TARGET_O_CREAT);
>  
>      print_syscall_prologue(name);
>      print_string(arg0, 0);
> @@ -969,7 +956,7 @@ print_openat(const struct syscallname *name,
>      abi_long arg0, abi_long arg1, abi_long arg2,
>      abi_long arg3, abi_long arg4, abi_long arg5)
>  {
> -    int is_creat = (tswap32(arg2) & TARGET_O_CREAT);
> +    int is_creat = (arg2 & TARGET_O_CREAT);
>  
>      print_syscall_prologue(name);
>      print_at_dirfd(arg0, 0);
> @@ -1018,7 +1005,7 @@ print_readlink(const struct syscallname *name,
>      print_syscall_prologue(name);
>      print_string(arg0, 0);
>      print_pointer(arg1, 0);
> -    print_raw_param("%u", tswapl(arg2), 1);
> +    print_raw_param("%u", arg2, 1);
>      print_syscall_epilogue(name);
>  }
>  #endif
> @@ -1033,7 +1020,7 @@ print_readlinkat(const struct syscallname *name,
>      print_at_dirfd(arg0, 0);
>      print_string(arg1, 0);
>      print_pointer(arg2, 0);
> -    print_raw_param("%u", tswapl(arg3), 1);
> +    print_raw_param("%u", arg3, 1);
>      print_syscall_epilogue(name);
>  }
>  #endif
> @@ -1223,11 +1210,11 @@ print_mmap(const struct syscallname *name,
>  {
>      print_syscall_prologue(name);
>      print_pointer(arg0, 0);
> -    print_raw_param("%d", tswapl(arg1), 0);
> +    print_raw_param("%d", arg1, 0);
>      print_flags(mmap_prot_flags, arg2, 0);
>      print_flags(mmap_flags, arg3, 0);
> -    print_raw_param("%d", tswapl(arg4), 0);
> -    print_raw_param("%#x", tswapl(arg5), 1);
> +    print_raw_param("%d", arg4, 0);
> +    print_raw_param("%#x", arg5, 1);
>      print_syscall_epilogue(name);
>  }
>  #define print_mmap2     print_mmap
> @@ -1241,7 +1228,7 @@ print_mprotect(const struct syscallname *name,
>  {
>      print_syscall_prologue(name);
>      print_pointer(arg0, 0);
> -    print_raw_param("%d", tswapl(arg1), 0);
> +    print_raw_param("%d", arg1, 0);
>      print_flags(mmap_prot_flags, arg2, 1);
>      print_syscall_epilogue(name);
>  }
> @@ -1255,7 +1242,7 @@ print_munmap(const struct syscallname *name,
>  {
>      print_syscall_prologue(name);
>      print_pointer(arg0, 0);
> -    print_raw_param("%d", tswapl(arg1), 1);
> +    print_raw_param("%d", arg1, 1);
>      print_syscall_epilogue(name);
>  }
>  #endif
> @@ -1269,7 +1256,7 @@ if( cmd == val ) { \
>      return; \
>  }
>  
> -    int cmd = (int)tswap32(tflag);
> +    int cmd = (int)tflag;
>  #ifdef FUTEX_PRIVATE_FLAG
>      if (cmd & FUTEX_PRIVATE_FLAG) {
>          gemu_log("FUTEX_PRIVATE_FLAG|");
> @@ -1303,10 +1290,10 @@ print_futex(const struct syscallname *name,
>      print_syscall_prologue(name);
>      print_pointer(arg0, 0);
>      print_futex_op(arg1, 0);
> -    print_raw_param(",%d", tswapl(arg2), 0);
> +    print_raw_param(",%d", arg2, 0);
>      print_pointer(arg3, 0); /* struct timespec */
>      print_pointer(arg4, 0);
> -    print_raw_param("%d", tswapl(arg4), 1);
> +    print_raw_param("%d", arg4, 1);
>      print_syscall_epilogue(name);
>  }
>  #endif
> -- 
> 1.7.1
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Qemu-devel] [PATCH 1/2] linux-user: add rmdir() strace
  2011-02-15 20:10 [Qemu-devel] [PATCH 1/2] linux-user: add rmdir() strace Laurent Vivier
  2011-02-15 20:10 ` [Qemu-devel] [PATCH 2/2] linux-user: in linux-user/strace.c, tswap() is useless Laurent Vivier
@ 2011-02-16 10:26 ` Riku Voipio
  1 sibling, 0 replies; 4+ messages in thread
From: Riku Voipio @ 2011-02-16 10:26 UTC (permalink / raw)
  To: Laurent Vivier; +Cc: qemu-devel

On Tue, Feb 15, 2011 at 09:10:43PM +0100, Laurent Vivier wrote:
> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
> ---
>  linux-user/strace.c    |   12 ++++++++++++
>  linux-user/strace.list |    3 +++
>  2 files changed, 15 insertions(+), 0 deletions(-)

Applied to que.
 
> diff --git a/linux-user/strace.c b/linux-user/strace.c
> index 1836666..05277c0 100644
> --- a/linux-user/strace.c
> +++ b/linux-user/strace.c
> @@ -876,6 +876,18 @@ print_mkdirat(const struct syscallname *name,
>  }
>  #endif
>  
> +#ifdef TARGET_NR_rmdir
> +static void
> +print_rmdir(const struct syscallname *name,
> +    abi_long arg0, abi_long arg1, abi_long arg2,
> +    abi_long arg3, abi_long arg4, abi_long arg5)
> +{
> +    print_syscall_prologue(name);
> +    print_string(arg0, 0);
> +    print_syscall_epilogue(name);
> +}
> +#endif
> +
>  #ifdef TARGET_NR_mknod
>  static void
>  print_mknod(const struct syscallname *name,
> diff --git a/linux-user/strace.list b/linux-user/strace.list
> index d7be0e7..563a67f 100644
> --- a/linux-user/strace.list
> +++ b/linux-user/strace.list
> @@ -495,6 +495,9 @@
>  #ifdef TARGET_NR_mkdirat
>  { TARGET_NR_mkdirat, "mkdirat" , NULL, print_mkdirat, NULL },
>  #endif
> +#ifdef TARGET_NR_rmdir
> +{ TARGET_NR_rmdir, "rmdir" , NULL, print_rmdir, NULL },
> +#endif
>  #ifdef TARGET_NR_mknod
>  { TARGET_NR_mknod, "mknod" , NULL, print_mknod, NULL },
>  #endif
> -- 
> 1.7.1
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-02-16 10:26 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-02-15 20:10 [Qemu-devel] [PATCH 1/2] linux-user: add rmdir() strace Laurent Vivier
2011-02-15 20:10 ` [Qemu-devel] [PATCH 2/2] linux-user: in linux-user/strace.c, tswap() is useless Laurent Vivier
2011-02-16 10:25   ` Riku Voipio
2011-02-16 10:26 ` [Qemu-devel] [PATCH 1/2] linux-user: add rmdir() strace Riku Voipio

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.