Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 388322 Details for
Bug 500378
net-fs/openafs{-kernel,}-1.6.9 version bump
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
openafs-kernel-3.17.patch
openafs-kernel-3.17.patch (text/plain), 4.13 KB, created by
Andrew Savchenko
on 2014-11-02 10:01:01 UTC
(
hide
)
Description:
openafs-kernel-3.17.patch
Filename:
MIME Type:
Creator:
Andrew Savchenko
Created:
2014-11-02 10:01:01 UTC
Size:
4.13 KB
patch
obsolete
>commit 8fe527628b9f2f7dfde63208b300fbb68358f49f >Author: Marc Dionne <marc.dionne@your-file-system.com> >Date: Tue Sep 9 10:39:55 2014 -0300 > > Linux 3.17: No more typedef for ctl_table > > The typedef has been removed so we need to use the structure > directly. > > Note that the API for register_sysctl_table has also changed > with 3.17, but it reverted back to a form that existed > before and the configure tests handle it correctly. > > Reviewed-on: http://gerrit.openafs.org/11455 > Reviewed-by: Benjamin Kaduk <kaduk@mit.edu> > Tested-by: BuildBot <buildbot@rampaginggeek.com> > Reviewed-by: Perry Ruiter <pruiter@sinenomine.net> > Reviewed-by: Andrew Deason <adeason@sinenomine.net> > Reviewed-by: D Brashear <shadow@your-file-system.com> > (cherry picked from commit 6a23ca5b6e8bcaf881be7a4c50bfba72d001e6cd) > > Change-Id: Ifb8fc0b9b01d2578c65407608f0e1b3f3b254459 > >diff --git a/src/afs/LINUX/osi_sysctl.c b/src/afs/LINUX/osi_sysctl.c >index a8f7fac..834e8ad 100644 >--- a/src/afs/LINUX/osi_sysctl.c >+++ b/src/afs/LINUX/osi_sysctl.c >@@ -34,7 +34,7 @@ extern afs_int32 afs_pct2; > #ifdef CONFIG_SYSCTL > static struct ctl_table_header *afs_sysctl = NULL; > >-static ctl_table afs_sysctl_table[] = { >+static struct ctl_table afs_sysctl_table[] = { > { > #if defined(STRUCT_CTL_TABLE_HAS_CTL_NAME) > #if defined(CTL_UNNUMBERED) >@@ -234,7 +234,7 @@ static ctl_table afs_sysctl_table[] = { > {0} > }; > >-static ctl_table fs_sysctl_table[] = { >+static struct ctl_table fs_sysctl_table[] = { > { > #if defined(STRUCT_CTL_TABLE_HAS_CTL_NAME) > #if defined(CTL_UNNUMBERED) >diff --git a/src/cf/linux-test4.m4 b/src/cf/linux-test4.m4 >index b068af5..1759d9e 100644 >--- a/src/cf/linux-test4.m4 >+++ b/src/cf/linux-test4.m4 >@@ -395,7 +395,7 @@ AC_DEFUN([LINUX_REGISTER_SYSCTL_TABLE_NOFLAG], [ > AC_CHECK_LINUX_BUILD([whether register_sysctl_table has an insert_at_head argument], > [ac_cv_linux_register_sysctl_table_noflag], > [#include <linux/sysctl.h>], >- [ctl_table *t; register_sysctl_table (t);], >+ [struct ctl_table *t; register_sysctl_table (t);], > [REGISTER_SYSCTL_TABLE_NOFLAG], > [define if register_sysctl_table has no insert_at head flag], > []) >commit ae2cba23d687454821430dca0300430f04c79c02 >Author: Marc Dionne <marc.dionne@your-file-system.com> >Date: Thu Sep 25 07:52:12 2014 -0300 > > Linux 3.17: Deal with d_splice_alias errors > > In 3.17 the logic in d_splice_alias has changed. Of interest to > us is the fact that it will now return an EIO error if it finds > an existing connected directory for the dentry, where it would > previously have added a new alias for it. As a result the end > user can get EIO errors when accessing any file in a volume > if the volume was first accessed through a different path (ex: > RO path vs RW path). > > This commit just restores the old behaviour, adding the directory > alias manually in the error case, which is what older versions > of d_splice_alias used to do. > > Reviewed-on: http://gerrit.openafs.org/11492 > Tested-by: BuildBot <buildbot@rampaginggeek.com> > Reviewed-by: Perry Ruiter <pruiter@sinenomine.net> > Reviewed-by: Andrew Deason <adeason@sinenomine.net> > Reviewed-by: D Brashear <shadow@your-file-system.com> > (cherry picked from commit 5815ee92a41cdcf105741d834042a5617dc4c219) > > Change-Id: Ie86009ede93255c85fcf640af14c598fe1e42ca9 > >diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c >index 7e5cdd1..3ddcf42 100644 >--- a/src/afs/LINUX/osi_vnodeops.c >+++ b/src/afs/LINUX/osi_vnodeops.c >@@ -1529,9 +1529,18 @@ afs_linux_lookup(struct inode *dip, struct dentry *dp) > /* It's ok for the file to not be found. That's noted by the caller by > * seeing that the dp->d_inode field is NULL. > */ >- if (!code || code == ENOENT) >- return newdp; >- else >+ if (!code || code == ENOENT) { >+ /* >+ * d_splice_alias can return an error (EIO) if there is an existing >+ * connected directory alias for this dentry. >+ */ >+ if (!IS_ERR(newdp)) >+ return newdp; >+ else { >+ d_add(dp, ip); >+ return NULL; >+ } >+ } else > return ERR_PTR(afs_convert_code(code)); > } >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 500378
:
369600
|
369602
|
369604
|
369606
|
369608
|
369610
|
369880
|
369882
|
386698
| 388322