diff options
author | Andreas Dilger <adilger@whamcloud.com> | 2011-07-07 00:20:32 -0400 |
---|---|---|
committer | Ulrich Drepper <drepper@gmail.com> | 2011-07-07 00:20:32 -0400 |
commit | de283087c74f720cf8a7171972e72b5fa2b45e79 (patch) | |
tree | b376ff8d11fe28a8a191b049506028060548b4f4 | |
parent | c75fa153a93eca56aec4f398770d3afc249ae5b5 (diff) | |
download | glibc-de283087c74f720cf8a7171972e72b5fa2b45e79.tar.gz glibc-de283087c74f720cf8a7171972e72b5fa2b45e79.tar.xz glibc-de283087c74f720cf8a7171972e72b5fa2b45e79.zip |
Handle Lustre filesystem
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/internal_statvfs.c | 5 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/linux_fsinfo.h | 7 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/pathconf.c | 4 |
5 files changed, 25 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog index bed2e27b04..6225871c2b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2011-07-07 Ulrich Drepper <drepper@gmail.com> + + [BZ #12868] + * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define Lustre constants. + * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags): + Handle Lustre. + * sysdeps/unix/sysv/linux/pathconf.c (__statfs_link_max): Likewise. + (__statfs_filesize_max): Likewise. + Patch mostly by Andreas Dilger <adilger@whamcloud.com>. + 2011-07-05 Andreas Jaeger <aj@suse.de> * resolv/res_comp.c (dn_skipname): Remove unused variable. diff --git a/NEWS b/NEWS index dd5565fd54..f3cead3dba 100644 --- a/NEWS +++ b/NEWS @@ -9,7 +9,7 @@ Version 2.15 * The following bugs are resolved with this release: - 9696, 12874, 12885, 12907, 12922, 12935 + 9696, 12868, 12874, 12885, 12907, 12922, 12935 * New program pldd to list loaded object of a process Implemented by Ulrich Drepper. diff --git a/sysdeps/unix/sysv/linux/internal_statvfs.c b/sysdeps/unix/sysv/linux/internal_statvfs.c index 828854806c..2ddec1edba 100644 --- a/sysdeps/unix/sysv/linux/internal_statvfs.c +++ b/sysdeps/unix/sysv/linux/internal_statvfs.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2006, 2010 Free Software Foundation, Inc. +/* Copyright (C) 1998-2006, 2010, 2011 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. @@ -115,6 +115,9 @@ __statvfs_getflags (const char *name, int fstype, struct stat64 *st) case CGROUP_SUPER_MAGIC: fsname = "cgroup"; break; + case LUSTRE_SUPER_MAGIC: + fsname = "lustre"; + 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 a0e070071d..55bc6e380a 100644 --- a/sysdeps/unix/sysv/linux/linux_fsinfo.h +++ b/sysdeps/unix/sysv/linux/linux_fsinfo.h @@ -1,5 +1,5 @@ /* Constants from kernel header for various FSes. - Copyright (C) 1998-2003,2005,2010 Free Software Foundation, Inc. + Copyright (C) 1998-2003,2005,2010,2011 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 @@ -83,6 +83,9 @@ /* Constant that identifies the `logfs' filesystem. */ #define LOGFS_MAGIC_U32 0xc97e8168u +/* Constant that identifies the `lustre' filesystem. */ +#define LUSTRE_SUPER_MAGIC 0x0BD00BD0 + /* Constants that identify the `minix2' filesystem. */ #define MINIX2_SUPER_MAGIC 0x2468 #define MINIX2_SUPER_MAGIC2 0x2478 @@ -150,6 +153,8 @@ /* Maximum link counts. */ #define COH_LINK_MAX 10000 #define EXT2_LINK_MAX 32000 +#define EXT4_LINK_MAX 65000 +#define LUSTRE_LINK_MAX EXT4_LINK_MAX #define MINIX2_LINK_MAX 65530 #define MINIX_LINK_MAX 250 #define REISERFS_LINK_MAX 64535 diff --git a/sysdeps/unix/sysv/linux/pathconf.c b/sysdeps/unix/sysv/linux/pathconf.c index 52610a14d8..42b7b80c39 100644 --- a/sysdeps/unix/sysv/linux/pathconf.c +++ b/sysdeps/unix/sysv/linux/pathconf.c @@ -121,6 +121,9 @@ __statfs_link_max (int result, const struct statfs *fsbuf) case XFS_SUPER_MAGIC: return XFS_LINK_MAX; + case LUSTRE_SUPER_MAGIC: + return LUSTRE_LINK_MAX; + default: return LINUX_LINK_MAX; } @@ -157,6 +160,7 @@ __statfs_filesize_max (int result, const struct statfs *fsbuf) case JFS_SUPER_MAGIC: case VXFS_SUPER_MAGIC: case CGROUP_SUPER_MAGIC: + case LUSTRE_SUPER_MAGIC: return 64; case MSDOS_SUPER_MAGIC: |