Fix decoding of statfs family syscalls

Fix decoders of fstatfs, fstatfs64, statfs, and statfs64 syscalls
by rewriting them using mpers infrastructure.

* fetch_struct_statfs.c: New file.
* fstatfs.c: Likewise.
* fstatfs64.c: Likewise.
* print_statfs.c: Likewise.
* statfs.h: Likewise.
* statfs64.c: Likewise.
* statfs.c: Remove everything except SYS_FUNC(statfs).
* configure.ac: Remove the check for struct statfs64 in <sys/vfs.h>.
Add checks for struct statfs and struct statfs64 in <asm/statfs.h>.
Add checks for f_frsize and f_flags members of these structures.
* defs.h (struct strace_statfs): New forward declaration.
(print_struct_statfs, print_struct_statfs64): New prototypes.
* Makefile.am (libstrace_a_SOURCES): Add fstatfs.c, fstatfs64.c,
statfs.c, and statfs64.c.
(strace_SOURCES): Add fetch_struct_statfs.c, print_statfs.c,
and statfs.h.
* NEWS: Mention this fix.
* tests/fstatfs.c: New file.
* tests/fstatfs64.c: Likewise.
* tests/statfs64.c: Likewise.
* tests/xstatfs.c: Likewise.
* tests/xstatfs64.c: Likewise.
* tests/xstatfsx.c: Likewise.
* tests/fstatfs.test: New test.
* tests/fstatfs64.test: Likewise.
* tests/statfs64.test: Likewise.
* tests/statfs.c: Rewrite using xstatfs.c.
* tests/statfs.test: Update.
* tests/.gitignore: Add fstatfs, fstatfs64, and statfs64.
* tests/Makefile.am (check_PROGRAMS): Likewise.
(DECODER_TESTS): Add  fstatfs.test, fstatfs64.test, and statfs64.test.
(EXTRA_DIST): Add xstatfs.c, xstatfs64.c, and xstatfsx.c.
diff --git a/Makefile.am b/Makefile.am
index f02a421..96146dd 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -64,6 +64,10 @@
 libstrace_a_CPPFLAGS = $(strace_CPPFLAGS)
 libstrace_a_CFLAGS = $(strace_CFLAGS)
 libstrace_a_SOURCES =	\
+	fstatfs.c \
+	fstatfs64.c \
+	statfs.c \
+	statfs64.c \
 	sync_file_range.c \
 	sync_file_range2.c \
 	upeek.c		\
@@ -103,6 +107,7 @@
 	fcntl.c		\
 	fetch_seccomp_fprog.c \
 	fetch_struct_flock.c \
+	fetch_struct_statfs.c \
 	file.c		\
 	file_handle.c	\
 	flock.c		\
@@ -157,6 +162,7 @@
 	print_mq_attr.c	\
 	print_msgbuf.c	\
 	print_sigevent.c \
+	print_statfs.c	\
 	print_time.c	\
 	print_timex.c	\
 	printmode.c	\
@@ -190,6 +196,7 @@
 	socketutils.c	\
 	sram_alloc.c	\
 	statfs.c	\
+	statfs.h	\
 	strace.c	\
 	swapon.c	\
 	syscall.c	\