about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--arch/x86_64/bits/statfs.h2
-rw-r--r--src/stat/fstatvfs.c2
-rw-r--r--src/stat/statvfs.c2
3 files changed, 3 insertions, 3 deletions
diff --git a/arch/x86_64/bits/statfs.h b/arch/x86_64/bits/statfs.h
index 51bf8a5b..63de75bb 100644
--- a/arch/x86_64/bits/statfs.h
+++ b/arch/x86_64/bits/statfs.h
@@ -11,5 +11,5 @@ struct statvfs {
 	unsigned long f_frsize;
 	fsfilcnt_t f_favail;
 	unsigned long f_flag;
-	unsigned long __reserved[2];
+	unsigned long __reserved[3];
 };
diff --git a/src/stat/fstatvfs.c b/src/stat/fstatvfs.c
index 8a2e4235..833e8ec8 100644
--- a/src/stat/fstatvfs.c
+++ b/src/stat/fstatvfs.c
@@ -4,7 +4,7 @@
 
 int fstatvfs(int fd, struct statvfs *buf)
 {
-	return syscall(SYS_fstatfs, fd, buf);
+	return syscall(SYS_fstatfs, fd, sizeof *buf, buf);
 }
 
 weak_alias(fstatvfs, fstatfs);
diff --git a/src/stat/statvfs.c b/src/stat/statvfs.c
index 17252997..517eebda 100644
--- a/src/stat/statvfs.c
+++ b/src/stat/statvfs.c
@@ -4,7 +4,7 @@
 
 int statvfs(const char *path, struct statvfs *buf)
 {
-	return syscall(SYS_statfs, path, buf);
+	return syscall(SYS_statfs, path, sizeof *buf, buf);
 }
 
 weak_alias(statvfs, statfs);