Linux 4.5: no highmem in symlink ops

Symlink bodies in the pagecache should not be in highmem, as
upstream converted in commit 21fc61c73.

Change-Id: I1e4c3c51308df096cdfa4d5e7b16279e275e7f41
Reviewed-on: https://gerrit.openafs.org/12264
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Joe Gorse <jhgorse@gmail.com>
Tested-by: Joe Gorse <jhgorse@gmail.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
This commit is contained in:
Benjamin Kaduk 2016-05-01 19:04:45 -04:00
parent 49106a5499
commit d9cfc1f3f5
2 changed files with 6 additions and 0 deletions

View File

@ -1091,6 +1091,9 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
[#include <linux/kernel.h>
#include <linux/kthread.h>],
[kthread_run(NULL, NULL, "test");])
AC_CHECK_LINUX_FUNC([inode_nohighmem],
[#include <linux/fs.h>],
[inode_nohighmem(NULL);])
dnl Consequences - things which get set as a result of the
dnl above tests

View File

@ -3149,6 +3149,9 @@ afs_fill_inode(struct inode *ip, struct vattr *vattr)
} else if (S_ISLNK(ip->i_mode)) {
ip->i_op = &afs_symlink_iops;
#if defined(HAVE_LINUX_INODE_NOHIGHMEM)
inode_nohighmem(ip);
#endif
#if defined(USABLE_KERNEL_PAGE_SYMLINK_CACHE)
ip->i_data.a_ops = &afs_symlink_aops;
ip->i_mapping = &ip->i_data;