mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-23 02:44:41 +03:00
Linux 2.6.35 compat, fops->fsync()
The fsync() callback in the file_operations structure used to take 3 arguments. The callback now only takes 2 arguments because the dentry argument was determined to be unused by all consumers. To handle this a compatibility prototype was added to ensure the right prototype is used. Our implementation never used the dentry argument either so it's just a matter of using the right prototype.
This commit is contained in:
@@ -53,6 +53,7 @@ am__aclocal_m4_deps = \
|
||||
$(top_srcdir)/config/kernel-blk-rq-pos.m4 \
|
||||
$(top_srcdir)/config/kernel-blk-rq-sectors.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-fsync.m4 \
|
||||
$(top_srcdir)/config/kernel-get-disk-ro.m4 \
|
||||
$(top_srcdir)/config/kernel-invalidate-bdev-args.m4 \
|
||||
$(top_srcdir)/config/kernel-kobj-name-len.m4 \
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
COMMON_H =
|
||||
|
||||
KERNEL_H = \
|
||||
$(top_srcdir)/include/linux/dcache_compat.h
|
||||
$(top_srcdir)/include/linux/xattr_compat.h
|
||||
$(top_srcdir)/include/linux/dcache_compat.h \
|
||||
$(top_srcdir)/include/linux/xattr_compat.h \
|
||||
$(top_srcdir)/include/linux/vfs_compat.h
|
||||
|
||||
USER_H =
|
||||
|
||||
|
||||
@@ -53,6 +53,7 @@ am__aclocal_m4_deps = \
|
||||
$(top_srcdir)/config/kernel-blk-rq-pos.m4 \
|
||||
$(top_srcdir)/config/kernel-blk-rq-sectors.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-fsync.m4 \
|
||||
$(top_srcdir)/config/kernel-get-disk-ro.m4 \
|
||||
$(top_srcdir)/config/kernel-invalidate-bdev-args.m4 \
|
||||
$(top_srcdir)/config/kernel-kobj-name-len.m4 \
|
||||
@@ -85,7 +86,9 @@ am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_at_0 = @
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
am__kernel_HEADERS_DIST = $(top_srcdir)/include/linux/dcache_compat.h
|
||||
am__kernel_HEADERS_DIST = $(top_srcdir)/include/linux/dcache_compat.h \
|
||||
$(top_srcdir)/include/linux/xattr_compat.h \
|
||||
$(top_srcdir)/include/linux/vfs_compat.h
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
@@ -279,7 +282,9 @@ top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
COMMON_H =
|
||||
KERNEL_H = \
|
||||
$(top_srcdir)/include/linux/dcache_compat.h
|
||||
$(top_srcdir)/include/linux/dcache_compat.h \
|
||||
$(top_srcdir)/include/linux/xattr_compat.h \
|
||||
$(top_srcdir)/include/linux/vfs_compat.h
|
||||
|
||||
USER_H =
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
@@ -563,7 +568,6 @@ uninstall-am: uninstall-kernelHEADERS uninstall-libzfsHEADERS
|
||||
ps ps-am tags uninstall uninstall-am uninstall-kernelHEADERS \
|
||||
uninstall-libzfsHEADERS
|
||||
|
||||
$(top_srcdir)/include/linux/xattr_compat.h
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
/*
|
||||
* CDDL HEADER START
|
||||
*
|
||||
* The contents of this file are subject to the terms of the
|
||||
* Common Development and Distribution License (the "License").
|
||||
* You may not use this file except in compliance with the License.
|
||||
*
|
||||
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
|
||||
* or http://www.opensolaris.org/os/licensing.
|
||||
* See the License for the specific language governing permissions
|
||||
* and limitations under the License.
|
||||
*
|
||||
* When distributing Covered Code, include this CDDL HEADER in each
|
||||
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
|
||||
* If applicable, add the following below this CDDL HEADER, with the
|
||||
* fields enclosed by brackets "[]" replaced with your own identifying
|
||||
* information: Portions Copyright [yyyy] [name of copyright owner]
|
||||
*
|
||||
* CDDL HEADER END
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (C) 2011 Lawrence Livermore National Security, LLC.
|
||||
*/
|
||||
|
||||
#ifndef _ZFS_VFS_H
|
||||
#define _ZFS_VFS_H
|
||||
|
||||
/*
|
||||
* 2.6.35 API change,
|
||||
* The dentry argument to the .fsync() vfs hook was deemed unused by
|
||||
* all filesystem consumers and dropped. Add a compatibility prototype
|
||||
* to ensure correct usage when defining this callback.
|
||||
*/
|
||||
#ifdef HAVE_2ARGS_FSYNC
|
||||
#define ZPL_FSYNC_PROTO(fn, x, y, z) static int fn(struct file *x, int z)
|
||||
#else
|
||||
#define ZPL_FSYNC_PROTO(fn, x, y, z) static int fn(struct file *x, \
|
||||
struct dentry *y, int z)
|
||||
#endif
|
||||
|
||||
#endif /* _ZFS_VFS_H */
|
||||
@@ -53,6 +53,7 @@ am__aclocal_m4_deps = \
|
||||
$(top_srcdir)/config/kernel-blk-rq-pos.m4 \
|
||||
$(top_srcdir)/config/kernel-blk-rq-sectors.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-fsync.m4 \
|
||||
$(top_srcdir)/config/kernel-get-disk-ro.m4 \
|
||||
$(top_srcdir)/config/kernel-invalidate-bdev-args.m4 \
|
||||
$(top_srcdir)/config/kernel-kobj-name-len.m4 \
|
||||
|
||||
@@ -53,6 +53,7 @@ am__aclocal_m4_deps = \
|
||||
$(top_srcdir)/config/kernel-blk-rq-pos.m4 \
|
||||
$(top_srcdir)/config/kernel-blk-rq-sectors.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-fsync.m4 \
|
||||
$(top_srcdir)/config/kernel-get-disk-ro.m4 \
|
||||
$(top_srcdir)/config/kernel-invalidate-bdev-args.m4 \
|
||||
$(top_srcdir)/config/kernel-kobj-name-len.m4 \
|
||||
|
||||
@@ -53,6 +53,7 @@ am__aclocal_m4_deps = \
|
||||
$(top_srcdir)/config/kernel-blk-rq-pos.m4 \
|
||||
$(top_srcdir)/config/kernel-blk-rq-sectors.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-fsync.m4 \
|
||||
$(top_srcdir)/config/kernel-get-disk-ro.m4 \
|
||||
$(top_srcdir)/config/kernel-invalidate-bdev-args.m4 \
|
||||
$(top_srcdir)/config/kernel-kobj-name-len.m4 \
|
||||
|
||||
@@ -53,6 +53,7 @@ am__aclocal_m4_deps = \
|
||||
$(top_srcdir)/config/kernel-blk-rq-pos.m4 \
|
||||
$(top_srcdir)/config/kernel-blk-rq-sectors.m4 \
|
||||
$(top_srcdir)/config/kernel-fmode-t.m4 \
|
||||
$(top_srcdir)/config/kernel-fsync.m4 \
|
||||
$(top_srcdir)/config/kernel-get-disk-ro.m4 \
|
||||
$(top_srcdir)/config/kernel-invalidate-bdev-args.m4 \
|
||||
$(top_srcdir)/config/kernel-kobj-name-len.m4 \
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
#define _SYS_ZPL_H
|
||||
|
||||
#include <sys/vfs.h>
|
||||
#include <linux/vfs_compat.h>
|
||||
#include <linux/xattr_compat.h>
|
||||
|
||||
/* zpl_inode.c */
|
||||
|
||||
Reference in New Issue
Block a user