Add support for the syncfs() system call.

Signed-off-by: Bartosz Golaszewski <bartekg...@gmail.com>
---
 include/unistd.h                   |  2 +-
 libc/sysdeps/linux/common/syncfs.c | 13 +++++++++++++
 2 files changed, 14 insertions(+), 1 deletion(-)
 create mode 100644 libc/sysdeps/linux/common/syncfs.c

diff --git a/include/unistd.h b/include/unistd.h
index 3793d2d..d01bb08 100644
--- a/include/unistd.h
+++ b/include/unistd.h
@@ -1073,7 +1073,7 @@ extern char *getpass (const char *__prompt) __nonnull 
((1));
 extern int fsync (int __fd);
 #endif /* Use BSD || X/Open || Unix98.  */
 
-#if 0 /*def __USE_GNU */
+#ifdef __USE_GNU
 /* Make all changes done to all files on the file system associated
  *    with FD actually appear on disk.  */
 extern int syncfs (int __fd) __THROW;
diff --git a/libc/sysdeps/linux/common/syncfs.c 
b/libc/sysdeps/linux/common/syncfs.c
new file mode 100644
index 0000000..30e2c2f
--- /dev/null
+++ b/libc/sysdeps/linux/common/syncfs.c
@@ -0,0 +1,13 @@
+/* vi: set sw=4 ts=4: */
+/*
+ * Copyright (C) 2015 Bartosz Golaszewski <bartekg...@gmail.com>
+ *
+ * Licensed under the LGPL v2.1+, see the file COPYING.LIB in this tarball.
+ */
+
+#include <sys/syscall.h>
+
+#if defined(__NR_syncfs) && __USE_GNU
+#include <unistd.h>
+_syscall1(int, syncfs, int, fd)
+#endif
-- 
2.1.4

_______________________________________________
uClibc mailing list
uClibc@uclibc.org
http://lists.busybox.net/mailman/listinfo/uclibc

Reply via email to