[XFS updates] XFS development tree branch, for-linus, updated. v2.6.28-rc3-9164-g058652a
xfs at oss.sgi.com
xfs at oss.sgi.com
Thu Jan 8 23:20:55 CST 2009
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "XFS development tree".
The branch, for-linus has been updated
058652a [XFS] make xfs_ino_t an unsigned long long
1544031 [XFS] truncate readdir offsets to signed 32 bit values
e6edbd1 [XFS] fix compile of xfs_btree_readahead_lblock on m68k
from fb82557f16f3700ae4961a4ce599bdaff6a10b1c (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 058652a37dd9eac18d6b8c1a311137c679de9dae
Author: Christoph Hellwig <hch at infradead.org>
Date: Thu Jan 8 13:42:25 2009 -0500
[XFS] make xfs_ino_t an unsigned long long
Currently xfs_ino_t is defined as a u64 which can either be an unsigned
long long or on some 64 bit platforms and unsigned long. Just making
it and unsigned long long mean's it's still always 64 bits wide, but we
don't need to resort to cases to print it.
Fixes a warning regression on 64 bit powerpc in current git.
Signed-off-by: Christoph Hellwig <hch at lst.de>
Reviewed-by: Dave Chinner <david at fromorbit.com>
Signed-off-by: Lachlan McIlroy <lachlan at sgi.com>
commit 15440319767942a363f282d6585303d3d75088ba
Author: Christoph Hellwig <hch at infradead.org>
Date: Thu Jan 8 14:00:00 2009 -0500
[XFS] truncate readdir offsets to signed 32 bit values
John Stanley reported EOVERFLOW errors in readdir from his self-build
glibc. I traced this down to glibc enabling d_off overflow checks
in one of the about five million different getdents implementations.
In 2.6.28 Dave Woodhouse moved our readdir double buffering required
for NFS4 readdirplus into nfsd and at that point we lost the capping
of the directory offsets to 32 bit signed values. Johns glibc used
getdents64 to even implement readdir for normal 32 bit offset dirents,
and failed with EOVERFLOW only if this happens on the first dirent in
a getdents call. I managed to come up with a testcase that uses
raw getdents and does the EOVERFLOW check manually. We always hit
it with our last entry due to the special end of directory marker.
The patch below is a dumb version of just putting back the masking,
to make sure we have the same behavior as in 2.6.27 and earlier.
I will work on a better and cleaner fix for 2.6.30.
Reported-by: John Stanley <jpsinthemix at verizon.net>
Tested-by: John Stanley <jpsinthemix at verizon.net>
Signed-off-by: Christoph Hellwig <hch at lst.de>
Reviewed-by: Dave Chinner <david at fromorbit.com>
Signed-off-by: Lachlan McIlroy <lachlan at sgi.com>
commit e6edbd1c1cbef278d58cdd8b046599ba8ac90cfc
Author: Christoph Hellwig <hch at infradead.org>
Date: Thu Jan 8 13:42:23 2009 -0500
[XFS] fix compile of xfs_btree_readahead_lblock on m68k
Change the left/right variables to the proper always 64bit xfs_dfsbo_t
type because otherwise compilation fails for Geert on m68k without
CONFIG_LBD:
| fs/xfs/xfs_btree.c: In function 'xfs_btree_readahead_lblock':
| fs/xfs/xfs_btree.c:736: warning: comparison is always true due to limited range of data type
| fs/xfs/xfs_btree.c:741: warning: comparison is always true due to limited range of data type
Reported-by: Geert Uytterhoeven <geert at linux-m68k.org>
Signed-off-by: Christoph Hellwig <hch at lst.de>
Reviewed-by: Dave Chinner <david at fromorbit.com>
Signed-off-by: Lachlan McIlroy <lachlan at sgi.com>
-----------------------------------------------------------------------
Summary of changes:
fs/xfs/xfs_btree.c | 4 ++--
fs/xfs/xfs_dir2_block.c | 7 ++++---
fs/xfs/xfs_dir2_leaf.c | 6 +++---
fs/xfs/xfs_dir2_sf.c | 15 ++++++++-------
fs/xfs/xfs_types.h | 2 +-
5 files changed, 18 insertions(+), 16 deletions(-)
hooks/post-receive
--
XFS development tree
More information about the xfs
mailing list