file.c: move fadvise64 and fadvise64_64 parsers to a separate file

* fadvise.c: New file.
* Makefile.am (strace_SOURCES): Add it.
* file.c: Move sys_fadvise64, sys_fadvise64_64, and related code
to fadvise.c.
This commit is contained in:
Дмитрий Левин 2014-12-06 03:53:16 +00:00
parent 710b3ae4a2
commit 63f28dd197
3 changed files with 36 additions and 32 deletions

View File

@ -25,6 +25,7 @@ strace_SOURCES = \
count.c \
desc.c \
dirent.c \
fadvise.c \
fallocate.c \
fanotify.c \
file.c \

35
fadvise.c Normal file
View File

@ -0,0 +1,35 @@
#include "defs.h"
#include <fcntl.h>
#include "xlat/advise.h"
int
sys_fadvise64(struct tcb *tcp)
{
if (entering(tcp)) {
int argn;
printfd(tcp, tcp->u_arg[0]);
argn = printllval(tcp, ", %lld", 1);
tprintf(", %ld, ", tcp->u_arg[argn++]);
printxval(advise, tcp->u_arg[argn], "POSIX_FADV_???");
}
return 0;
}
int
sys_fadvise64_64(struct tcb *tcp)
{
if (entering(tcp)) {
int argn;
printfd(tcp, tcp->u_arg[0]);
argn = printllval(tcp, ", %lld, ", 1);
argn = printllval(tcp, "%lld, ", argn);
#if defined __ARM_EABI__ || defined AARCH64 || defined POWERPC || defined XTENSA
printxval(advise, tcp->u_arg[1], "POSIX_FADV_???");
#else
printxval(advise, tcp->u_arg[argn], "POSIX_FADV_???");
#endif
}
return 0;
}

32
file.c
View File

@ -1851,35 +1851,3 @@ sys_fremovexattr(struct tcb *tcp)
}
return 0;
}
#include "xlat/advise.h"
int
sys_fadvise64(struct tcb *tcp)
{
if (entering(tcp)) {
int argn;
printfd(tcp, tcp->u_arg[0]);
argn = printllval(tcp, ", %lld", 1);
tprintf(", %ld, ", tcp->u_arg[argn++]);
printxval(advise, tcp->u_arg[argn], "POSIX_FADV_???");
}
return 0;
}
int
sys_fadvise64_64(struct tcb *tcp)
{
if (entering(tcp)) {
int argn;
printfd(tcp, tcp->u_arg[0]);
argn = printllval(tcp, ", %lld, ", 1);
argn = printllval(tcp, "%lld, ", argn);
#if defined __ARM_EABI__ || defined AARCH64 || defined POWERPC || defined XTENSA
printxval(advise, tcp->u_arg[1], "POSIX_FADV_???");
#else
printxval(advise, tcp->u_arg[argn], "POSIX_FADV_???");
#endif
}
return 0;
}