public inbox for libc-hacker@sourceware.org
 help / color / mirror / Atom feed
* Patch to handle cgroup and btrfs filesystems
@ 2010-10-01  4:33 Andreas Jaeger
  2010-10-01 15:26 ` Richard Henderson
  0 siblings, 1 reply; 3+ messages in thread
From: Andreas Jaeger @ 2010-10-01  4:33 UTC (permalink / raw)
  To: libc-hacker

Here's a patch to handle btrfs and cgroup on Linux,
Andreas

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.

diff --git a/sysdeps/unix/sysv/linux/internal_statvfs.c 
b/sysdeps/unix/sysv/linux/internal_statvfs.c
index 0169ae3..aefaf2a 100644
--- a/sysdeps/unix/sysv/linux/internal_statvfs.c
+++ b/sysdeps/unix/sysv/linux/internal_statvfs.c
@@ -109,6 +109,12 @@ __statvfs_getflags (const char *name, int fstype, 
struct stat64 *st)
     case LOGFS_MAGIC_U32:
       fsname = "logfs";
       break;
+    case BTRFS_SUPER_MAGIC:
+      fsname = "btrfs";
+      break;
+    case CGROUP_SUPER_MAGIC:
+      fsname = "cgroup";
+      break;
     }
 
   FILE *mtab = __setmntent ("/proc/mounts", "r");
diff --git a/sysdeps/unix/sysv/linux/linux_fsinfo.h 
b/sysdeps/unix/sysv/linux/linux_fsinfo.h
index b10e98b..8efbdea 100644
--- a/sysdeps/unix/sysv/linux/linux_fsinfo.h
+++ b/sysdeps/unix/sysv/linux/linux_fsinfo.h
@@ -23,7 +23,7 @@
 /* These definitions come from the kernel headers.  But we cannot
    include the headers here because of type clashes.  If new
    filesystem types will become available we have to add the
-   appropriate definitions here.*/
+   appropriate definitions here.  */
 
 /* Constant that identifies the `adfs' filesystem.  */
 #define ADFS_SUPER_MAGIC	0xadf5
@@ -37,6 +37,12 @@
 /* Constant that identifies the `bfs' filesystem.  */
 #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.  */
 #define CODA_SUPER_MAGIC	0x73757245
 
diff --git a/sysdeps/unix/sysv/linux/pathconf.c 
b/sysdeps/unix/sysv/linux/pathconf.c
index db03529..ae597fb 100644
--- a/sysdeps/unix/sysv/linux/pathconf.c
+++ b/sysdeps/unix/sysv/linux/pathconf.c
@@ -1,5 +1,5 @@
 /* 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.
 
    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)
     {
+    case BTRFS_SUPER_MAGIC:
+      return 255;
+
     case EXT2_SUPER_MAGIC:
     case UFS_MAGIC:
     case UFS_CIGAM:
@@ -136,6 +139,7 @@ __statfs_filesize_max (int result, const struct statfs 
*fsbuf)
     case UDF_SUPER_MAGIC:
     case JFS_SUPER_MAGIC:
     case VXFS_SUPER_MAGIC:
+    case CGROUP_SUPER_MAGIC:
       return 64;
 
     case MSDOS_SUPER_MAGIC:

-- 
 Andreas Jaeger, Program Manager openSUSE,  aj@{novell.com,opensuse.org}
  Twitter: jaegerandi | Identica: jaegerandi
   SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg)
    Maxfeldstr. 5, 90409 Nürnberg, Germany
     GPG fingerprint = 93A3 365E CE47 B889 DF7F  FED1 389A 563C C272 A126

-- 
 Andreas Jaeger, Program Manager openSUSE,  aj@{novell.com,opensuse.org}
  Twitter: jaegerandi | Identica: jaegerandi
   SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg)
    Maxfeldstr. 5, 90409 Nürnberg, Germany
     GPG fingerprint = 93A3 365E CE47 B889 DF7F  FED1 389A 563C C272 A126

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-10-01 19:49 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-10-01  4:33 Patch to handle cgroup and btrfs filesystems Andreas Jaeger
2010-10-01 15:26 ` Richard Henderson
2010-10-01 19:49   ` Andreas Jaeger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).