Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 500378 | Differences between
and this patch

Collapse All | Expand All

(-)a/src/afs/LINUX/osi_sysctl.c (-2 / +2 lines)
Lines 34-40 extern afs_int32 afs_pct2; Link Here
34
#ifdef CONFIG_SYSCTL
34
#ifdef CONFIG_SYSCTL
35
static struct ctl_table_header *afs_sysctl = NULL;
35
static struct ctl_table_header *afs_sysctl = NULL;
36
36
37
static ctl_table afs_sysctl_table[] = {
37
static struct ctl_table afs_sysctl_table[] = {
38
    {
38
    {
39
#if defined(STRUCT_CTL_TABLE_HAS_CTL_NAME)
39
#if defined(STRUCT_CTL_TABLE_HAS_CTL_NAME)
40
#if defined(CTL_UNNUMBERED)
40
#if defined(CTL_UNNUMBERED)
Lines 234-240 static ctl_table afs_sysctl_table[] = { Link Here
234
    {0}
234
    {0}
235
};
235
};
236
236
237
static ctl_table fs_sysctl_table[] = {
237
static struct ctl_table fs_sysctl_table[] = {
238
    {
238
    {
239
#if defined(STRUCT_CTL_TABLE_HAS_CTL_NAME)
239
#if defined(STRUCT_CTL_TABLE_HAS_CTL_NAME)
240
#if defined(CTL_UNNUMBERED)
240
#if defined(CTL_UNNUMBERED)
(-)a/src/cf/linux-test4.m4 (-1 / +1 lines)
Lines 395-401 AC_DEFUN([LINUX_REGISTER_SYSCTL_TABLE_NOFLAG], [ Link Here
395
  AC_CHECK_LINUX_BUILD([whether register_sysctl_table has an insert_at_head argument],
395
  AC_CHECK_LINUX_BUILD([whether register_sysctl_table has an insert_at_head argument],
396
		       [ac_cv_linux_register_sysctl_table_noflag],
396
		       [ac_cv_linux_register_sysctl_table_noflag],
397
		       [#include <linux/sysctl.h>],
397
		       [#include <linux/sysctl.h>],
398
		       [ctl_table *t; register_sysctl_table (t);],
398
		       [struct ctl_table *t; register_sysctl_table (t);],
399
		       [REGISTER_SYSCTL_TABLE_NOFLAG],
399
		       [REGISTER_SYSCTL_TABLE_NOFLAG],
400
		       [define if register_sysctl_table has no insert_at head flag],
400
		       [define if register_sysctl_table has no insert_at head flag],
401
		       [])
401
		       [])
402
   Linux 3.17: Deal with d_splice_alias errors
402
   Linux 3.17: Deal with d_splice_alias errors
403
   
403
   
404
   In 3.17 the logic in d_splice_alias has changed.  Of interest to
404
   In 3.17 the logic in d_splice_alias has changed.  Of interest to
405
   us is the fact that it will now return an EIO error if it finds
405
   us is the fact that it will now return an EIO error if it finds
406
   an existing connected directory for the dentry, where it would
406
   an existing connected directory for the dentry, where it would
407
   previously have added a new alias for it.  As a result the end
407
   previously have added a new alias for it.  As a result the end
408
   user can get EIO errors when accessing any file in a volume
408
   user can get EIO errors when accessing any file in a volume
409
   if the volume was first accessed through a different path (ex:
409
   if the volume was first accessed through a different path (ex:
410
   RO path vs RW path).
410
   RO path vs RW path).
411
   
411
   
412
   This commit just restores the old behaviour, adding the directory
412
   This commit just restores the old behaviour, adding the directory
413
   alias manually in the error case, which is what older versions
413
   alias manually in the error case, which is what older versions
414
   of d_splice_alias used to do.
414
   of d_splice_alias used to do.
415
   
415
   
416
   Reviewed-on: http://gerrit.openafs.org/11492
416
   Reviewed-on: http://gerrit.openafs.org/11492
417
   Tested-by: BuildBot <buildbot@rampaginggeek.com>
417
   Tested-by: BuildBot <buildbot@rampaginggeek.com>
418
   Reviewed-by: Perry Ruiter <pruiter@sinenomine.net>
418
   Reviewed-by: Perry Ruiter <pruiter@sinenomine.net>
419
   Reviewed-by: Andrew Deason <adeason@sinenomine.net>
419
   Reviewed-by: Andrew Deason <adeason@sinenomine.net>
420
   Reviewed-by: D Brashear <shadow@your-file-system.com>
420
   Reviewed-by: D Brashear <shadow@your-file-system.com>
421
   (cherry picked from commit 5815ee92a41cdcf105741d834042a5617dc4c219)
421
   (cherry picked from commit 5815ee92a41cdcf105741d834042a5617dc4c219)
422
   
422
   
423
   Change-Id: Ie86009ede93255c85fcf640af14c598fe1e42ca9
423
   Change-Id: Ie86009ede93255c85fcf640af14c598fe1e42ca9
(-)a/src/afs/LINUX/osi_vnodeops.c (-3 / +12 lines)
Lines 1529-1537 afs_linux_lookup(struct inode *dip, struct dentry *dp) Link Here
1529
    /* It's ok for the file to not be found. That's noted by the caller by
1529
    /* It's ok for the file to not be found. That's noted by the caller by
1530
     * seeing that the dp->d_inode field is NULL.
1530
     * seeing that the dp->d_inode field is NULL.
1531
     */
1531
     */
1532
    if (!code || code == ENOENT)
1532
    if (!code || code == ENOENT) {
1533
	return newdp;
1533
	/*
1534
    else 
1534
	 * d_splice_alias can return an error (EIO) if there is an existing
1535
	 * connected directory alias for this dentry.
1536
	 */
1537
	if (!IS_ERR(newdp))
1538
	    return newdp;
1539
	else {
1540
	    d_add(dp, ip);
1541
	    return NULL;
1542
	}
1543
    } else
1535
	return ERR_PTR(afs_convert_code(code));
1544
	return ERR_PTR(afs_convert_code(code));
1536
}
1545
}
1537
1546

Return to bug 500378