From 5cca05d1a1c9883e33c953b31c4cb32252474f77 Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Mon, 23 Feb 2015 00:13:05 -0500 Subject: [PATCH 1/1] Linux 4: struct address_space no longer has backing_dev_info The backing_dev_info is only stored in the super_block now. Change-Id: I57e147100bd47a8d1f5e97224ceb3322ea102a48 Reviewed-on: http://gerrit.openafs.org/11756 Reviewed-by: Marc Dionne Reviewed-by: Benjamin Kaduk Tested-by: BuildBot Reviewed-by: Jeffrey Altman --- acinclude.m4 | 1 + src/afs/LINUX/osi_vnodeops.c | 2 ++ 2 files changed, 3 insertions(+) diff --git a/acinclude.m4 b/acinclude.m4 index e581d9b..84199ff 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -915,6 +915,7 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*) AC_CHECK_LINUX_TYPE([kuid_t], [uidgid.h]) dnl Check for structure elements + AC_CHECK_LINUX_STRUCT([address_space], [backing_dev_info], [fs.h]) AC_CHECK_LINUX_STRUCT([address_space_operations], [write_begin], [fs.h]) AC_CHECK_LINUX_STRUCT([backing_dev_info], [name], diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c index 513b962..5869eb9 100644 --- a/src/afs/LINUX/osi_vnodeops.c +++ b/src/afs/LINUX/osi_vnodeops.c @@ -3056,7 +3056,9 @@ afs_fill_inode(struct inode *ip, struct vattr *vattr) if (vattr) vattr2inode(ip, vattr); +#ifdef STRUCT_ADDRESS_SPACE_HAS_BACKING_DEV_INFO ip->i_mapping->backing_dev_info = afs_backing_dev_info; +#endif /* Reset ops if symlink or directory. */ if (S_ISREG(ip->i_mode)) { ip->i_op = &afs_file_iops; -- 1.9.4