diff options
author | Richard Yao <[email protected]> | 2012-07-23 11:39:25 -0700 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2012-07-23 12:29:36 -0700 |
commit | 739a1a82e0f366923e8d9bc8f9ad4b1c680a780b (patch) | |
tree | 33d846b16ea8ddaf39bb77a8658e63d640794fee /include/linux/vfs_compat.h | |
parent | ea1fdf46e2d37e9eb048f9add0fb06e77e9ee6e2 (diff) |
Linux 3.5 compat, end_writeback() changed to clear_inode()
The end_writeback() function was changed by moving the call to
inode_sync_wait() earlier in to evict(). This effecitvely changes
the ordering of the sync but it does not impact the details of
the zfs implementation.
However, as part of this change end_writeback() was renamed to
clear_inode() to reflect the new semantics. This change does
impact us and clear_inode() now maps to end_writeback() for
kernels prior to 3.5.
Signed-off-by: Richard Yao <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes #784
Diffstat (limited to 'include/linux/vfs_compat.h')
-rw-r--r-- | include/linux/vfs_compat.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/include/linux/vfs_compat.h b/include/linux/vfs_compat.h index 74ec95f08..9343f99a5 100644 --- a/include/linux/vfs_compat.h +++ b/include/linux/vfs_compat.h @@ -121,4 +121,14 @@ typedef umode_t zpl_umode_t; typedef int zpl_umode_t; #endif +/* + * 3.5 API change, + * The clear_inode() function replaces end_writeback() and introduces an + * ordering change regarding when the inode_sync_wait() occurs. See the + * configure check in config/kernel-clear-inode.m4 for full details. + */ +#if defined(HAVE_EVICT_INODE) && !defined(HAVE_CLEAR_INODE) +#define clear_inode(ip) end_writeback(ip) +#endif /* HAVE_EVICT_INODE && !HAVE_CLEAR_INODE */ + #endif /* _ZFS_VFS_H */ |