Move parsers of sync_file_range and sync_file_range2 syscalls to libstrace
For each given architecture only one of these two syscalls has a syscallent entry. When each parser is placed into a separate file, moving to libstrace ensures that only one of them that is need is linked into strace executable. * sync_file_range.c (SYS_FUNC(sync_file_range2)): Move ... * sync_file_range2.c: ... here. * Makefile.am (strace_SOURCES): Move sync_file_range.c ... (libstrace_a_SOURCES): ... here. Add sync_file_range2.c. (strace_SOURCES_c): Add filtered libstrace_a_SOURCES.
This commit is contained in:
parent
a9540e72c7
commit
a7501f6adb
@ -64,6 +64,8 @@ noinst_LIBRARIES = libstrace.a
|
||||
libstrace_a_CPPFLAGS = $(strace_CPPFLAGS)
|
||||
libstrace_a_CFLAGS = $(strace_CFLAGS)
|
||||
libstrace_a_SOURCES = \
|
||||
sync_file_range.c \
|
||||
sync_file_range2.c \
|
||||
upeek.c \
|
||||
# end of libstrace_a_SOURCES
|
||||
|
||||
@ -190,7 +192,6 @@ strace_SOURCES = \
|
||||
statfs.c \
|
||||
strace.c \
|
||||
swapon.c \
|
||||
sync_file_range.c \
|
||||
syscall.c \
|
||||
sysctl.c \
|
||||
sysinfo.c \
|
||||
@ -641,7 +642,8 @@ srpm: dist-xz
|
||||
$(srcdir)/.version:
|
||||
$(AM_V_GEN)echo $(VERSION) > $@-t && mv $@-t $@
|
||||
|
||||
strace_SOURCES_c = $(filter %.c,$(strace_SOURCES))
|
||||
strace_SOURCES_c = \
|
||||
$(filter %.c,$(strace_SOURCES)) $(filter %.c,$(libstrace_a_SOURCES))
|
||||
|
||||
sys_func.h: $(patsubst %,$(srcdir)/%,$(strace_SOURCES_c))
|
||||
for f in $^; do \
|
||||
|
@ -27,9 +27,7 @@
|
||||
*/
|
||||
|
||||
#include "defs.h"
|
||||
|
||||
#include <fcntl.h>
|
||||
|
||||
#include "xlat/sync_file_range_flags.h"
|
||||
|
||||
SYS_FUNC(sync_file_range)
|
||||
@ -44,17 +42,3 @@ SYS_FUNC(sync_file_range)
|
||||
|
||||
return RVAL_DECODED;
|
||||
}
|
||||
|
||||
SYS_FUNC(sync_file_range2)
|
||||
{
|
||||
int argn;
|
||||
|
||||
printfd(tcp, tcp->u_arg[0]);
|
||||
tprints(", ");
|
||||
printflags(sync_file_range_flags, tcp->u_arg[1],
|
||||
"SYNC_FILE_RANGE_???");
|
||||
argn = printllval(tcp, ", %lld, ", 2);
|
||||
argn = printllval(tcp, "%lld", argn);
|
||||
|
||||
return RVAL_DECODED;
|
||||
}
|
||||
|
45
sync_file_range2.c
Normal file
45
sync_file_range2.c
Normal file
@ -0,0 +1,45 @@
|
||||
/*
|
||||
* Copyright (c) 2013 William Manley <william.manley@youview.com>
|
||||
* Copyright (c) 2014-2015 Dmitry V. Levin <ldv@altlinux.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. The name of the author may not be used to endorse or promote products
|
||||
* derived from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
* IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include "defs.h"
|
||||
#include <fcntl.h>
|
||||
#include "xlat/sync_file_range_flags.h"
|
||||
|
||||
SYS_FUNC(sync_file_range2)
|
||||
{
|
||||
int argn;
|
||||
|
||||
printfd(tcp, tcp->u_arg[0]);
|
||||
tprints(", ");
|
||||
printflags(sync_file_range_flags, tcp->u_arg[1],
|
||||
"SYNC_FILE_RANGE_???");
|
||||
argn = printllval(tcp, ", %lld, ", 2);
|
||||
argn = printllval(tcp, "%lld", argn);
|
||||
|
||||
return RVAL_DECODED;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user