#include "defs.h"
-int
-sys_fallocate(struct tcb *tcp)
+#ifdef HAVE_LINUX_FALLOC_H
+# include <linux/falloc.h>
+#endif
+
+#include "xlat/falloc_flags.h"
+
+SYS_FUNC(fallocate)
{
- if (entering(tcp)) {
- int argn;
- printfd(tcp, tcp->u_arg[0]); /* fd */
- tprintf(", %#lo, ", tcp->u_arg[1]); /* mode */
- argn = printllval(tcp, "%llu, ", 2); /* offset */
- printllval(tcp, "%llu", argn); /* len */
- }
- return 0;
+ int argn;
+
+ /* fd */
+ printfd(tcp, tcp->u_arg[0]);
+ tprints(", ");
+
+ /* mode */
+ printflags(falloc_flags, tcp->u_arg[1], "FALLOC_FL_???");
+ tprints(", ");
+
+ /* offset */
+ argn = printllval(tcp, "%lld, ", 2);
+
+ /* len */
+ printllval(tcp, "%lld", argn);
+
+ return RVAL_DECODED;
}