]> git.michaelhowe.org Git - packages/o/openafs.git/commit
Linux: d_splice_alias may drop inode reference on error
authorMarc Dionne <marc.dionne@your-file-system.com>
Thu, 18 Dec 2014 13:43:22 +0000 (08:43 -0500)
committerStephan Wiesand <stephan.wiesand@desy.de>
Fri, 13 Feb 2015 10:17:36 +0000 (05:17 -0500)
commita2603d4dd02194a05a550a5759970515b9aa2f08
tree359db62fd5785c32971e18be26f724cdf694506f
parent3995ad443eca54542651003d4fc5a7e594833bad
Linux: d_splice_alias may drop inode reference on error

d_splice_alias now drops the inode reference on error, so we
need to grab an extra one to make sure that the inode doesn't
go away, and release it when done if there was no error.

For kernels that may not drop the reference, provide an
additional iput() within an ifdef.  This could be hooked up
to a configure option to allow building a module for a kernel
that is known not to drop the reference on error.  That hook
is not provided here.  Affected kernels should be the early
3.17 ones (3.17 - 3.17.2); 3.16 and older kernels should not
return errors here.

[kaduk@mit.edu add configure option to control behavior, which
is mandatory on non-buildbot linux systems]

Reviewed-on: http://gerrit.openafs.org/11643
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Michael Laß <lass@mail.uni-paderborn.de>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
(cherry picked from commit 15260c7fdc5ac8fe9fb1797c8e383c665e9e0ccd)

Change-Id: I288eb66c38386fcd6bae0da111d97e211cc5c995
Reviewed-on: http://gerrit.openafs.org/11694
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
acinclude.m4
src/afs/LINUX/osi_vnodeops.c