From 600e33cd4521ad950472ed63290cbc034e515959 Mon Sep 17 00:00:00 2001 From: "Dmitry V. Levin" Date: Wed, 3 Dec 2014 20:08:44 +0000 Subject: [PATCH] mips: move sysmips parser to a separate file * sysmips.c: New file. * Makefile.am (strace_SOURCES): Add it. * system.c: Fix typo in the check for . Move inclusions of and to sysmips.c. [MIPS]: Likewise. --- Makefile.am | 1 + sysmips.c | 42 ++++++++++++++++++++++++++++++++++++++++++ system.c | 40 ---------------------------------------- 3 files changed, 43 insertions(+), 40 deletions(-) create mode 100644 sysmips.c diff --git a/Makefile.am b/Makefile.am index 38193f2d..3c897252 100644 --- a/Makefile.am +++ b/Makefile.am @@ -53,6 +53,7 @@ strace_SOURCES = \ stream.c \ syscall.c \ sysinfo.c \ + sysmips.c \ system.c \ term.c \ time.c \ diff --git a/sysmips.c b/sysmips.c new file mode 100644 index 00000000..521b0816 --- /dev/null +++ b/sysmips.c @@ -0,0 +1,42 @@ +#include "defs.h" + +#ifdef MIPS + +#ifdef HAVE_LINUX_UTSNAME_H +# include +#endif +#ifdef HAVE_ASM_SYSMIPS_H +# include +#endif + +#ifndef __NEW_UTS_LEN +# define __NEW_UTS_LEN 64 +#endif + +#include "xlat/sysmips_operations.h" + +int sys_sysmips(struct tcb *tcp) +{ + if (entering(tcp)) { + printxval(sysmips_operations, tcp->u_arg[0], "???"); + if (!verbose(tcp)) { + tprintf("%ld, %ld, %ld", tcp->u_arg[1], tcp->u_arg[2], tcp->u_arg[3]); + } else if (tcp->u_arg[0] == SETNAME) { + char nodename[__NEW_UTS_LEN + 1]; + if (umovestr(tcp, tcp->u_arg[1], (__NEW_UTS_LEN + 1), nodename) < 0) + tprintf(", %#lx", tcp->u_arg[1]); + else + tprintf(", \"%.*s\"", (int)(__NEW_UTS_LEN + 1), nodename); + } else if (tcp->u_arg[0] == MIPS_ATOMIC_SET) { + tprintf(", %#lx, 0x%lx", tcp->u_arg[1], tcp->u_arg[2]); + } else if (tcp->u_arg[0] == MIPS_FIXADE) { + tprintf(", 0x%lx", tcp->u_arg[1]); + } else { + tprintf("%ld, %ld, %ld", tcp->u_arg[1], tcp->u_arg[2], tcp->u_arg[3]); + } + } + + return 0; +} + +#endif /* MIPS */ diff --git a/system.c b/system.c index 2bd1dac1..e73c76fa 100644 --- a/system.c +++ b/system.c @@ -72,12 +72,6 @@ #ifdef HAVE_ASM_CACHECTL_H # include #endif -#ifdef HAVE_LINUX_USTNAME_H -# include -#endif -#ifdef HAVE_ASM_SYSMIPS_H -# include -#endif #include #include @@ -576,37 +570,3 @@ sys_sysctl(struct tcb *tcp) free(name); return 0; } - -#ifdef MIPS - -#ifndef __NEW_UTS_LEN -#define __NEW_UTS_LEN 64 -#endif - -#include "xlat/sysmips_operations.h" - -int sys_sysmips(struct tcb *tcp) -{ - if (entering(tcp)) { - printxval(sysmips_operations, tcp->u_arg[0], "???"); - if (!verbose(tcp)) { - tprintf("%ld, %ld, %ld", tcp->u_arg[1], tcp->u_arg[2], tcp->u_arg[3]); - } else if (tcp->u_arg[0] == SETNAME) { - char nodename[__NEW_UTS_LEN + 1]; - if (umovestr(tcp, tcp->u_arg[1], (__NEW_UTS_LEN + 1), nodename) < 0) - tprintf(", %#lx", tcp->u_arg[1]); - else - tprintf(", \"%.*s\"", (int)(__NEW_UTS_LEN + 1), nodename); - } else if (tcp->u_arg[0] == MIPS_ATOMIC_SET) { - tprintf(", %#lx, 0x%lx", tcp->u_arg[1], tcp->u_arg[2]); - } else if (tcp->u_arg[0] == MIPS_FIXADE) { - tprintf(", 0x%lx", tcp->u_arg[1]); - } else { - tprintf("%ld, %ld, %ld", tcp->u_arg[1], tcp->u_arg[2], tcp->u_arg[3]); - } - } - - return 0; -} - -#endif /* MIPS */ -- 2.40.0