aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--sysdeps/unix/sysv/linux/fstatvfs.c1
-rw-r--r--sysdeps/unix/sysv/linux/internal_statvfs.c3
-rw-r--r--sysdeps/unix/sysv/linux/statvfs.c1
4 files changed, 8 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 7cd3e9c17f..aaa28bbd21 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,9 @@
* sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Avoid
locking when using mount tab file.
+ * sysdeps/unix/sysv/linux/internal_statvfs.c: Likewise.
+ * sysdeps/unix/sysv/linux/statvfs.c: Include <stdio_ext.h>.
+ * sysdeps/unix/sysv/linux/fstatvfs.c: Likewise.
* elf/dl-init.c (_dl_init): Fix test of the size of the
preinit_array section.
diff --git a/sysdeps/unix/sysv/linux/fstatvfs.c b/sysdeps/unix/sysv/linux/fstatvfs.c
index 4452e50f81..0bfce16309 100644
--- a/sysdeps/unix/sysv/linux/fstatvfs.c
+++ b/sysdeps/unix/sysv/linux/fstatvfs.c
@@ -20,6 +20,7 @@
#include <errno.h>
#include <mntent.h>
#include <paths.h>
+#include <stdio_ext.h>
#include <string.h>
#include <sys/mount.h>
#include <sys/stat.h>
diff --git a/sysdeps/unix/sysv/linux/internal_statvfs.c b/sysdeps/unix/sysv/linux/internal_statvfs.c
index ed9dbaaa0e..744c8d9fd6 100644
--- a/sysdeps/unix/sysv/linux/internal_statvfs.c
+++ b/sysdeps/unix/sysv/linux/internal_statvfs.c
@@ -64,6 +64,9 @@
{
char tmpbuf[1024];
+ /* No locking needed. */
+ (void) __fsetlocking (mtab, FSETLOCKING_BYCALLER);
+
while (__getmntent_r (mtab, &mntbuf, tmpbuf, sizeof (tmpbuf)))
{
struct stat64 fsst;
diff --git a/sysdeps/unix/sysv/linux/statvfs.c b/sysdeps/unix/sysv/linux/statvfs.c
index 9992d7757f..5eef62c5f6 100644
--- a/sysdeps/unix/sysv/linux/statvfs.c
+++ b/sysdeps/unix/sysv/linux/statvfs.c
@@ -20,6 +20,7 @@
#include <errno.h>
#include <mntent.h>
#include <paths.h>
+#include <stdio_ext.h>
#include <string.h>
#include <sys/mount.h>
#include <sys/stat.h>