diff options
Diffstat (limited to 'fs/xfs')
-rw-r--r-- | fs/xfs/linux-2.6/xfs_fs_subr.c | 3 | ||||
-rw-r--r-- | fs/xfs/xfs_log.h | 8 |
2 files changed, 2 insertions, 9 deletions
diff --git a/fs/xfs/linux-2.6/xfs_fs_subr.c b/fs/xfs/linux-2.6/xfs_fs_subr.c index f89340c61bf2..4fa4b1a5187e 100644 --- a/fs/xfs/linux-2.6/xfs_fs_subr.c +++ b/fs/xfs/linux-2.6/xfs_fs_subr.c | |||
@@ -79,8 +79,7 @@ fs_flushinval_pages( | |||
79 | struct inode *ip = LINVFS_GET_IP(vp); | 79 | struct inode *ip = LINVFS_GET_IP(vp); |
80 | 80 | ||
81 | if (VN_CACHED(vp)) { | 81 | if (VN_CACHED(vp)) { |
82 | filemap_fdatawrite(ip->i_mapping); | 82 | filemap_write_and_wait(ip->i_mapping); |
83 | filemap_fdatawait(ip->i_mapping); | ||
84 | 83 | ||
85 | truncate_inode_pages(ip->i_mapping, first); | 84 | truncate_inode_pages(ip->i_mapping, first); |
86 | } | 85 | } |
diff --git a/fs/xfs/xfs_log.h b/fs/xfs/xfs_log.h index 158829ca56f6..f40d4391fcfc 100644 --- a/fs/xfs/xfs_log.h +++ b/fs/xfs/xfs_log.h | |||
@@ -30,13 +30,7 @@ | |||
30 | * By comparing each compnent, we don't have to worry about extra | 30 | * By comparing each compnent, we don't have to worry about extra |
31 | * endian issues in treating two 32 bit numbers as one 64 bit number | 31 | * endian issues in treating two 32 bit numbers as one 64 bit number |
32 | */ | 32 | */ |
33 | static | 33 | static inline xfs_lsn_t _lsn_cmp(xfs_lsn_t lsn1, xfs_lsn_t lsn2) |
34 | #if defined(__GNUC__) && (__GNUC__ == 2) && ( (__GNUC_MINOR__ == 95) || (__GNUC_MINOR__ == 96)) | ||
35 | __attribute__((unused)) /* gcc 2.95, 2.96 miscompile this when inlined */ | ||
36 | #else | ||
37 | __inline__ | ||
38 | #endif | ||
39 | xfs_lsn_t _lsn_cmp(xfs_lsn_t lsn1, xfs_lsn_t lsn2) | ||
40 | { | 34 | { |
41 | if (CYCLE_LSN(lsn1) != CYCLE_LSN(lsn2)) | 35 | if (CYCLE_LSN(lsn1) != CYCLE_LSN(lsn2)) |
42 | return (CYCLE_LSN(lsn1)<CYCLE_LSN(lsn2))? -999 : 999; | 36 | return (CYCLE_LSN(lsn1)<CYCLE_LSN(lsn2))? -999 : 999; |