Linux 4: struct address_space no longer has backing_dev_info
authorAnders Kaseorg <andersk@mit.edu>
Mon, 23 Feb 2015 05:13:05 +0000 (00:13 -0500)
committerJeffrey Altman <jaltman@your-file-system.com>
Wed, 25 Feb 2015 06:04:33 +0000 (01:04 -0500)
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 <marc.c.dionne@gmail.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>

acinclude.m4
src/afs/LINUX/osi_vnodeops.c

index e581d9b..84199ff 100644 (file)
@@ -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],
index 513b962..5869eb9 100644 (file)
@@ -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;