Linux 3.5 compat, eops->encode_fh() takes inodes
The export_operations member ->encode_fh() has been updated to take both the child and parent inodes. This interface used to take the child dentry and a bool describing if the parent is needed. NOTE: While updating this code I noticed that we do not currently cleanly handle the case where we're passed a connectable parent. This code should be audited to make sure we're doing the right thing. Signed-off-by: Richard Yao <ryao@cs.stonybrook.edu> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Issue #784
This commit is contained in:
parent
ed3fc80048
commit
756c3e5a9c
|
@ -90,6 +90,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -67,6 +67,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -70,6 +70,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -70,6 +70,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -70,6 +70,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -70,6 +70,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -70,6 +70,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -70,6 +70,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -70,6 +70,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -70,6 +70,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -0,0 +1,24 @@
|
|||
dnl #
|
||||
dnl # 3.5.0 API change
|
||||
dnl # torvalds/linux@b0b0382bb4904965a9e9fca77ad87514dfda0d1c changed the
|
||||
dnl # ->encode_fh() callback to pass the child inode and its parents inode
|
||||
dnl # rather than a dentry and a boolean saying whether we want the parent.
|
||||
dnl #
|
||||
AC_DEFUN([ZFS_AC_KERNEL_ENCODE_FH_WITH_INODE], [
|
||||
AC_MSG_CHECKING([whether eops->encode_fh() wants inode])
|
||||
ZFS_LINUX_TRY_COMPILE([
|
||||
#include <linux/exportfs.h>
|
||||
int encode_fh(struct inode *inode, __u32 *fh, int *max_len,
|
||||
struct inode *parent) { return 0; }
|
||||
static struct export_operations eops __attribute__ ((unused))={
|
||||
.encode_fh = encode_fh,
|
||||
};
|
||||
],[
|
||||
],[
|
||||
AC_MSG_RESULT(yes)
|
||||
AC_DEFINE(HAVE_ENCODE_FH_WITH_INODE, 1,
|
||||
[eops->encode_fh() wants child and parent inodes])
|
||||
],[
|
||||
AC_MSG_RESULT(no)
|
||||
])
|
||||
])
|
|
@ -49,6 +49,7 @@ AC_DEFUN([ZFS_AC_CONFIG_KERNEL], [
|
|||
ZFS_AC_KERNEL_FALLOCATE
|
||||
ZFS_AC_KERNEL_CREATE_UMODE_T
|
||||
ZFS_AC_KERNEL_AUTOMOUNT
|
||||
ZFS_AC_KERNEL_ENCODE_FH_WITH_INODE
|
||||
ZFS_AC_KERNEL_INSERT_INODE_LOCKED
|
||||
ZFS_AC_KERNEL_D_MAKE_ROOT
|
||||
ZFS_AC_KERNEL_D_OBTAIN_ALIAS
|
||||
|
|
|
@ -16272,6 +16272,75 @@ fi
|
|||
|
||||
|
||||
|
||||
{ $as_echo "$as_me:$LINENO: checking whether eops->encode_fh() wants inode" >&5
|
||||
$as_echo_n "checking whether eops->encode_fh() wants inode... " >&6; }
|
||||
|
||||
|
||||
cat confdefs.h - <<_ACEOF >conftest.c
|
||||
/* confdefs.h. */
|
||||
_ACEOF
|
||||
cat confdefs.h >>conftest.$ac_ext
|
||||
cat >>conftest.$ac_ext <<_ACEOF
|
||||
/* end confdefs.h. */
|
||||
|
||||
|
||||
#include <linux/exportfs.h>
|
||||
int encode_fh(struct inode *inode, __u32 *fh, int *max_len,
|
||||
struct inode *parent) { return 0; }
|
||||
static struct export_operations eops __attribute__ ((unused))={
|
||||
.encode_fh = encode_fh,
|
||||
};
|
||||
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
|
||||
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
|
||||
_ACEOF
|
||||
|
||||
|
||||
rm -Rf build && mkdir -p build
|
||||
echo "obj-m := conftest.o" >build/Makefile
|
||||
if { ac_try='cp conftest.c build && make modules -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $ARCH_UM M=$PWD/build'
|
||||
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||
(eval $ac_try) 2>&5
|
||||
ac_status=$?
|
||||
$as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
|
||||
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||
(eval $ac_try) 2>&5
|
||||
ac_status=$?
|
||||
$as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); }; }; then
|
||||
|
||||
{ $as_echo "$as_me:$LINENO: result: yes" >&5
|
||||
$as_echo "yes" >&6; }
|
||||
|
||||
cat >>confdefs.h <<\_ACEOF
|
||||
#define HAVE_ENCODE_FH_WITH_INODE 1
|
||||
_ACEOF
|
||||
|
||||
|
||||
else
|
||||
$as_echo "$as_me: failed program was:" >&5
|
||||
sed 's/^/| /' conftest.$ac_ext >&5
|
||||
|
||||
{ $as_echo "$as_me:$LINENO: result: no" >&5
|
||||
$as_echo "no" >&6; }
|
||||
|
||||
|
||||
|
||||
fi
|
||||
|
||||
rm -Rf build
|
||||
|
||||
|
||||
|
||||
|
||||
{ $as_echo "$as_me:$LINENO: checking whether symbol insert_inode_locked is exported" >&5
|
||||
$as_echo_n "checking whether symbol insert_inode_locked is exported... " >&6; }
|
||||
grep -q -E '[[:space:]]insert_inode_locked[[:space:]]' \
|
||||
|
@ -22800,6 +22869,75 @@ fi
|
|||
|
||||
|
||||
|
||||
{ $as_echo "$as_me:$LINENO: checking whether eops->encode_fh() wants inode" >&5
|
||||
$as_echo_n "checking whether eops->encode_fh() wants inode... " >&6; }
|
||||
|
||||
|
||||
cat confdefs.h - <<_ACEOF >conftest.c
|
||||
/* confdefs.h. */
|
||||
_ACEOF
|
||||
cat confdefs.h >>conftest.$ac_ext
|
||||
cat >>conftest.$ac_ext <<_ACEOF
|
||||
/* end confdefs.h. */
|
||||
|
||||
|
||||
#include <linux/exportfs.h>
|
||||
int encode_fh(struct inode *inode, __u32 *fh, int *max_len,
|
||||
struct inode *parent) { return 0; }
|
||||
static struct export_operations eops __attribute__ ((unused))={
|
||||
.encode_fh = encode_fh,
|
||||
};
|
||||
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
|
||||
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
|
||||
_ACEOF
|
||||
|
||||
|
||||
rm -Rf build && mkdir -p build
|
||||
echo "obj-m := conftest.o" >build/Makefile
|
||||
if { ac_try='cp conftest.c build && make modules -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $ARCH_UM M=$PWD/build'
|
||||
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||
(eval $ac_try) 2>&5
|
||||
ac_status=$?
|
||||
$as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
|
||||
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||
(eval $ac_try) 2>&5
|
||||
ac_status=$?
|
||||
$as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); }; }; then
|
||||
|
||||
{ $as_echo "$as_me:$LINENO: result: yes" >&5
|
||||
$as_echo "yes" >&6; }
|
||||
|
||||
cat >>confdefs.h <<\_ACEOF
|
||||
#define HAVE_ENCODE_FH_WITH_INODE 1
|
||||
_ACEOF
|
||||
|
||||
|
||||
else
|
||||
$as_echo "$as_me: failed program was:" >&5
|
||||
sed 's/^/| /' conftest.$ac_ext >&5
|
||||
|
||||
{ $as_echo "$as_me:$LINENO: result: no" >&5
|
||||
$as_echo "no" >&6; }
|
||||
|
||||
|
||||
|
||||
fi
|
||||
|
||||
rm -Rf build
|
||||
|
||||
|
||||
|
||||
|
||||
{ $as_echo "$as_me:$LINENO: checking whether symbol insert_inode_locked is exported" >&5
|
||||
$as_echo_n "checking whether symbol insert_inode_locked is exported... " >&6; }
|
||||
grep -q -E '[[:space:]]insert_inode_locked[[:space:]]' \
|
||||
|
|
|
@ -68,6 +68,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -67,6 +67,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -67,6 +67,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -68,6 +68,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -68,6 +68,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -67,6 +67,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -68,6 +68,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -67,6 +67,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -69,6 +69,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -67,6 +67,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -67,6 +67,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -67,6 +67,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -30,10 +30,15 @@
|
|||
|
||||
|
||||
static int
|
||||
#ifdef HAVE_ENCODE_FH_WITH_INODE
|
||||
zpl_encode_fh(struct inode *ip, __u32 *fh, int *max_len, struct inode *parent)
|
||||
{
|
||||
#else
|
||||
zpl_encode_fh(struct dentry *dentry, __u32 *fh, int *max_len, int connectable)
|
||||
{
|
||||
fid_t *fid = (fid_t *)fh;
|
||||
struct inode *ip = dentry->d_inode;
|
||||
#endif /* HAVE_ENCODE_FH_WITH_INODE */
|
||||
fid_t *fid = (fid_t *)fh;
|
||||
int len_bytes, rc;
|
||||
|
||||
len_bytes = *max_len * sizeof (__u32);
|
||||
|
|
|
@ -68,6 +68,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -68,6 +68,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -68,6 +68,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -68,6 +68,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -68,6 +68,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -67,6 +67,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -68,6 +68,7 @@ am__aclocal_m4_deps = \
|
|||
$(top_srcdir)/config/kernel-create-umode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-d-make-root.m4 \
|
||||
$(top_srcdir)/config/kernel-d-obtain-alias.m4 \
|
||||
$(top_srcdir)/config/kernel-encode-fh-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-evict-inode.m4 \
|
||||
$(top_srcdir)/config/kernel-fallocate.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
|
|
|
@ -126,6 +126,9 @@
|
|||
/* d_obtain_alias() is available */
|
||||
#undef HAVE_D_OBTAIN_ALIAS
|
||||
|
||||
/* eops->encode_fh() wants child and parent inodes */
|
||||
#undef HAVE_ENCODE_FH_WITH_INODE
|
||||
|
||||
/* sops->evict_inode() exists */
|
||||
#undef HAVE_EVICT_INODE
|
||||
|
||||
|
|
Loading…
Reference in New Issue