qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] linux-user/strace: Improve output of various syscalls


From: Aleksandar Markovic
Subject: Re: [PATCH] linux-user/strace: Improve output of various syscalls
Date: Wed, 20 Nov 2019 22:02:01 +0100

On Wed, Nov 20, 2019 at 9:57 PM Aleksandar Markovic
<address@hidden> wrote:
>
> On Tue, Nov 19, 2019 at 8:05 PM Helge Deller <address@hidden> wrote:
> >
> > Improve strace output of various syscalls which either have none
> > or only int-type parameters.
> >
> > Signed-off-by: Helge Deller <address@hidden>
> >
>
> A very good patch!
>
> It would be even better if it covered ALL syscalls either without
> parameter or with all int-like parameters.
>
> I believe this table can be very useful to you, for the purpose
> of identifying such syscalls, and completing your patch:
>
> https://blog.rchapman.org/posts/Linux_System_Call_Table_for_x86_64/
>

You can even add items in strace.list for, let's say:

sys_sched_get_priority_max()
sys_sched_get_priority_min()

Both have "int policy" as a sole argument.

> Regards,
> Aleksandar
>
>
> > diff --git a/linux-user/strace.list b/linux-user/strace.list
> > index 1de4319dcf..5163717087 100644
> > --- a/linux-user/strace.list
> > +++ b/linux-user/strace.list
> > @@ -26,7 +26,7 @@
> >  { TARGET_NR_afs_syscall, "afs_syscall" , NULL, NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_alarm
> > -{ TARGET_NR_alarm, "alarm" , NULL, NULL, NULL },
> > +{ TARGET_NR_alarm, "alarm" , "%s(%d)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_aplib
> >  { TARGET_NR_aplib, "aplib" , NULL, NULL, NULL },
> > @@ -116,13 +116,13 @@
> >  { TARGET_NR_dipc, "dipc" , NULL, NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_dup
> > -{ TARGET_NR_dup, "dup" , NULL, NULL, NULL },
> > +{ TARGET_NR_dup, "dup" , "%s(%d)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_dup2
> > -{ TARGET_NR_dup2, "dup2" , NULL, NULL, NULL },
> > +{ TARGET_NR_dup2, "dup2" , "%s(%d,%d)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_dup3
> > -{ TARGET_NR_dup3, "dup3" , NULL, NULL, NULL },
> > +{ TARGET_NR_dup3, "dup3" , "%s(%d,%d,%d)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_epoll_create
> >  { TARGET_NR_epoll_create, "epoll_create" , NULL, NULL, NULL },
> > @@ -191,7 +191,7 @@
> >  { TARGET_NR_fanotify_mark, "fanotify_mark" , NULL, NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_fchdir
> > -{ TARGET_NR_fchdir, "fchdir" , NULL, NULL, NULL },
> > +{ TARGET_NR_fchdir, "fchdir" , "%s(%d)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_fchmod
> >  { TARGET_NR_fchmod, "fchmod" , "%s(%d,%#o)", NULL, NULL },
> > @@ -287,7 +287,7 @@
> >  { TARGET_NR_getdtablesize, "getdtablesize" , NULL, NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_getegid
> > -{ TARGET_NR_getegid, "getegid" , NULL, NULL, NULL },
> > +{ TARGET_NR_getegid, "getegid" , "%s()", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_getegid32
> >  { TARGET_NR_getegid32, "getegid32" , NULL, NULL, NULL },
> > @@ -299,7 +299,7 @@
> >  { TARGET_NR_geteuid32, "geteuid32" , NULL, NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_getgid
> > -{ TARGET_NR_getgid, "getgid" , NULL, NULL, NULL },
> > +{ TARGET_NR_getgid, "getgid" , "%s()", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_getgid32
> >  { TARGET_NR_getgid32, "getgid32" , NULL, NULL, NULL },
> > @@ -329,10 +329,10 @@
> >  { TARGET_NR_getpeername, "getpeername" , NULL, NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_getpgid
> > -{ TARGET_NR_getpgid, "getpgid" , NULL, NULL, NULL },
> > +{ TARGET_NR_getpgid, "getpgid" , "%s(%u)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_getpgrp
> > -{ TARGET_NR_getpgrp, "getpgrp" , NULL, NULL, NULL },
> > +{ TARGET_NR_getpgrp, "getpgrp" , "%s()", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_getpid
> >  { TARGET_NR_getpid, "getpid" , "%s()", NULL, NULL },
> > @@ -432,7 +432,7 @@
> >  { TARGET_NR_io_cancel, "io_cancel" , NULL, NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_ioctl
> > -{ TARGET_NR_ioctl, "ioctl" , NULL, NULL, NULL },
> > +{ TARGET_NR_ioctl, "ioctl" , "%s(%d,%#x,%#x,%#x,%#x,%#x)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_io_destroy
> >  { TARGET_NR_io_destroy, "io_destroy" , NULL, NULL, NULL },
> > @@ -1257,22 +1257,22 @@
> >  { TARGET_NR_setdomainname, "setdomainname" , NULL, NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setfsgid
> > -{ TARGET_NR_setfsgid, "setfsgid" , NULL, NULL, NULL },
> > +{ TARGET_NR_setfsgid, "setfsgid" , "%s(%u)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setfsgid32
> > -{ TARGET_NR_setfsgid32, "setfsgid32" , NULL, NULL, NULL },
> > +{ TARGET_NR_setfsgid32, "setfsgid32" , "%s(%u)" , NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setfsuid
> > -{ TARGET_NR_setfsuid, "setfsuid" , NULL, NULL, NULL },
> > +{ TARGET_NR_setfsuid, "setfsuid" , "%s(%u)" , NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setfsuid32
> >  { TARGET_NR_setfsuid32, "setfsuid32" , NULL, NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setgid
> > -{ TARGET_NR_setgid, "setgid" , NULL, NULL, NULL },
> > +{ TARGET_NR_setgid, "setgid" , "%s(%u)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setgid32
> > -{ TARGET_NR_setgid32, "setgid32" , NULL, NULL, NULL },
> > +{ TARGET_NR_setgid32, "setgid32" , "%s(%u)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setgroups
> >  { TARGET_NR_setgroups, "setgroups" , NULL, NULL, NULL },
> > @@ -1296,7 +1296,7 @@
> >  { TARGET_NR_setns, "setns" , NULL, NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setpgid
> > -{ TARGET_NR_setpgid, "setpgid" , NULL, NULL, NULL },
> > +{ TARGET_NR_setpgid, "setpgid" , "%s(%u,%u)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setpgrp
> >  { TARGET_NR_setpgrp, "setpgrp" , NULL, NULL, NULL },
> > @@ -1311,22 +1311,22 @@
> >  { TARGET_NR_setregid32, "setregid32" , NULL, NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setresgid
> > -{ TARGET_NR_setresgid, "setresgid" , NULL, NULL, NULL },
> > +{ TARGET_NR_setresgid, "setresgid" , "%s(%u,%u,%u)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setresgid32
> >  { TARGET_NR_setresgid32, "setresgid32" , NULL, NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setresuid
> > -{ TARGET_NR_setresuid, "setresuid" , NULL, NULL, NULL },
> > +{ TARGET_NR_setresuid, "setresuid" , "%s(%u,%u,%u)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setresuid32
> > -{ TARGET_NR_setresuid32, "setresuid32" , NULL, NULL, NULL },
> > +{ TARGET_NR_setresuid32, "setresuid32" , "%s(%u,%u,%u)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setreuid
> > -{ TARGET_NR_setreuid, "setreuid" , NULL, NULL, NULL },
> > +{ TARGET_NR_setreuid, "setreuid" , "%s(%u,%u)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setreuid32
> > -{ TARGET_NR_setreuid32, "setreuid32" , NULL, NULL, NULL },
> > +{ TARGET_NR_setreuid32, "setreuid32" , "%s(%u,%u)", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setrlimit
> >  { TARGET_NR_setrlimit, "setrlimit" , NULL, NULL, NULL },
> > @@ -1335,7 +1335,7 @@
> >  { TARGET_NR_set_robust_list, "set_robust_list" , NULL, NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setsid
> > -{ TARGET_NR_setsid, "setsid" , NULL, NULL, NULL },
> > +{ TARGET_NR_setsid, "setsid" , "%s()", NULL, NULL },
> >  #endif
> >  #ifdef TARGET_NR_setsockopt
> >  { TARGET_NR_setsockopt, "setsockopt" , NULL, NULL, NULL },
> >



reply via email to

[Prev in Thread] Current Thread [Next in Thread]