Ignore:
Timestamp:
Dec 22, 2014, 12:07:50 AM (8 years ago)
Author:
andersk
Message:
OpenAFS: upgrade to 1.6.11pre1, plus patch for d_alias change
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/server/common/patches/openafs-d_splice_alias-reference.patch

    r2655 r2659  
    1 From 1c576fdf9f05c6af7b5b029ba010a76bed48488e Mon Sep 17 00:00:00 2001
     1From b1f23baecb2de72b44cda8bba27615c012a445f1 Mon Sep 17 00:00:00 2001
    22From: Marc Dionne <marc.dionne@your-file-system.com>
    33Date: Thu, 18 Dec 2014 08:43:22 -0500
     
    1818Change-Id: Id1786ac2227b4d8e0ae801fe59c15a0ecd975bed
    1919---
    20  src/afs/LINUX/osi_vnodeops.c | 25 ++++++++++++++++++++++---
    21  1 file changed, 22 insertions(+), 3 deletions(-)
     20 acinclude.m4                 |  3 +++
     21 src/afs/LINUX/osi_vnodeops.c | 29 ++++++++++++++++++++++++++---
     22 2 files changed, 29 insertions(+), 3 deletions(-)
    2223
     24diff --git a/acinclude.m4 b/acinclude.m4
     25index 96adde0..19f7092 100644
     26--- a/acinclude.m4
     27+++ b/acinclude.m4
     28@@ -984,6 +984,9 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
     29                 AC_CHECK_LINUX_FUNC([hlist_unhashed],
     30                                     [#include <linux/list.h>],
     31                                     [hlist_unhashed(0);])
     32+                AC_CHECK_LINUX_FUNC([ihold],
     33+                                    [#include <linux/fs.h>],
     34+                                    [ihold(NULL);])
     35                 AC_CHECK_LINUX_FUNC([i_size_read],
     36                                     [#include <linux/fs.h>],
     37                                     [i_size_read(NULL);])
    2338diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c
    24 index b2ab9d5..3723cf8 100644
     39index b2ab9d5..cedfef6 100644
    2540--- a/src/afs/LINUX/osi_vnodeops.c
    2641+++ b/src/afs/LINUX/osi_vnodeops.c
    27 @@ -1612,6 +1612,13 @@ afs_linux_lookup(struct inode *dip, struct dentry *dp)
     42@@ -1612,6 +1612,17 @@ afs_linux_lookup(struct inode *dip, struct dentry *dp)
    2843        ip->i_flags |= S_AUTOMOUNT;
    2944 #endif
     
    3449+     */
    3550+    if (ip)
     51+#ifdef HAVE_LINUX_IHOLD
     52+       ihold(ip);
     53+#else
    3654+       igrab(ip);
     55+#endif
    3756+
    3857     newdp = d_splice_alias(ip, dp);
    3958 
    4059  done:
    41 @@ -1625,14 +1632,26 @@ afs_linux_lookup(struct inode *dip, struct dentry *dp)
     60@@ -1625,14 +1636,26 @@ afs_linux_lookup(struct inode *dip, struct dentry *dp)
    4261         * d_splice_alias can return an error (EIO) if there is an existing
    4362         * connected directory alias for this dentry.
Note: See TracChangeset for help on using the changeset viewer.