1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-30 22:43:12 +03:00

Handle cgroup and btrfs filesystems

This commit is contained in:
Andreas Jaeger
2010-10-01 10:49:47 -04:00
committed by Ulrich Drepper
parent 91c4255919
commit 6484ba5ef0
4 changed files with 27 additions and 2 deletions

View File

@ -1,3 +1,12 @@
2010-09-30 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux_fsinfo.h (BTRFS_SUPER_MAGIC): Define.
(CGROUP_SUPER_MAGIC): Define.
* sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags):
Handle btrfs and cgroup file systems.
* sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max):
Likewise.
2010-09-27 Luis Machado <luisgpm@br.ibm.com> 2010-09-27 Luis Machado <luisgpm@br.ibm.com>
* sysdeps/powerpc/powerpc32/rtld-memset.c: New file. * sysdeps/powerpc/powerpc32/rtld-memset.c: New file.

View File

@ -109,6 +109,12 @@ __statvfs_getflags (const char *name, int fstype, struct stat64 *st)
case LOGFS_MAGIC_U32: case LOGFS_MAGIC_U32:
fsname = "logfs"; fsname = "logfs";
break; break;
case BTRFS_SUPER_MAGIC:
fsname = "btrfs";
break;
case CGROUP_SUPER_MAGIC:
fsname = "cgroup";
break;
} }
FILE *mtab = __setmntent ("/proc/mounts", "r"); FILE *mtab = __setmntent ("/proc/mounts", "r");

View File

@ -23,7 +23,7 @@
/* These definitions come from the kernel headers. But we cannot /* These definitions come from the kernel headers. But we cannot
include the headers here because of type clashes. If new include the headers here because of type clashes. If new
filesystem types will become available we have to add the filesystem types will become available we have to add the
appropriate definitions here.*/ appropriate definitions here. */
/* Constant that identifies the `adfs' filesystem. */ /* Constant that identifies the `adfs' filesystem. */
#define ADFS_SUPER_MAGIC 0xadf5 #define ADFS_SUPER_MAGIC 0xadf5
@ -37,6 +37,12 @@
/* Constant that identifies the `bfs' filesystem. */ /* Constant that identifies the `bfs' filesystem. */
#define BFS_MAGIC 0x1BADFACE #define BFS_MAGIC 0x1BADFACE
/* Constant that identifies the `btrfs' filesystem. */
#define BTRFS_SUPER_MAGIC 0x1BADFACE
/* Constant that identifies the `cgroup' filesystem. */
#define CGROUP_SUPER_MAGIC 0x1BADFACE
/* Constant that identifies the `coda' filesystem. */ /* Constant that identifies the `coda' filesystem. */
#define CODA_SUPER_MAGIC 0x73757245 #define CODA_SUPER_MAGIC 0x73757245

View File

@ -1,5 +1,5 @@
/* Get file-specific information about a file. Linux version. /* Get file-specific information about a file. Linux version.
Copyright (C) 1991,1995,1996,1998-2003,2008 Free Software Foundation, Inc. Copyright (C) 1991,1995,1996,1998-2003,2008,2010 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -126,6 +126,9 @@ __statfs_filesize_max (int result, const struct statfs *fsbuf)
switch (fsbuf->f_type) switch (fsbuf->f_type)
{ {
case BTRFS_SUPER_MAGIC:
return 255;
case EXT2_SUPER_MAGIC: case EXT2_SUPER_MAGIC:
case UFS_MAGIC: case UFS_MAGIC:
case UFS_CIGAM: case UFS_CIGAM:
@ -136,6 +139,7 @@ __statfs_filesize_max (int result, const struct statfs *fsbuf)
case UDF_SUPER_MAGIC: case UDF_SUPER_MAGIC:
case JFS_SUPER_MAGIC: case JFS_SUPER_MAGIC:
case VXFS_SUPER_MAGIC: case VXFS_SUPER_MAGIC:
case CGROUP_SUPER_MAGIC:
return 64; return 64;
case MSDOS_SUPER_MAGIC: case MSDOS_SUPER_MAGIC: