@@ -2,7 +2,7 @@ Meta: 1
Name: zfs
Branch: 1.0
Version: 0.6.5.11
-Release: 1ubuntu3.2
+Release: 1ubuntu3.3
Release-Tags: relext
License: CDDL
Author: OpenZFS on Linux
@@ -184,6 +184,7 @@ am__aclocal_m4_deps = $(top_srcdir)/config/always-no-bool-compare.m4 \
$(top_srcdir)/config/user-arch.m4 \
$(top_srcdir)/config/user-dracut.m4 \
$(top_srcdir)/config/user-frame-larger-than.m4 \
+ $(top_srcdir)/config/user-libaio.m4 \
$(top_srcdir)/config/user-libblkid.m4 \
$(top_srcdir)/config/user-libuuid.m4 \
$(top_srcdir)/config/user-makedev.m4 \
@@ -412,6 +413,7 @@ KERNELCPPFLAGS = @KERNELCPPFLAGS@
KERNELMAKE_PARAMS = @KERNELMAKE_PARAMS@
LD = @LD@
LDFLAGS = @LDFLAGS@
+LIBAIO = @LIBAIO@
LIBBLKID = @LIBBLKID@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
@@ -1292,6 +1292,7 @@ m4_include([config/mount-helper.m4])
m4_include([config/user-arch.m4])
m4_include([config/user-dracut.m4])
m4_include([config/user-frame-larger-than.m4])
+m4_include([config/user-libaio.m4])
m4_include([config/user-libblkid.m4])
m4_include([config/user-libuuid.m4])
m4_include([config/user-makedev.m4])
new file mode 100644
@@ -0,0 +1,14 @@
+dnl #
+dnl # Check for libaio - only used for libaiot test cases.
+dnl #
+AC_DEFUN([ZFS_AC_CONFIG_USER_LIBAIO], [
+ LIBAIO=
+
+ AC_CHECK_HEADER([libaio.h], [
+ user_libaio=yes
+ AC_SUBST([LIBAIO], ["-laio"])
+ AC_DEFINE([HAVE_LIBAIO], 1, [Define if you have libaio])
+ ], [
+ user_libaio=no
+ ])
+])
@@ -5,6 +5,7 @@ AC_DEFUN([ZFS_AC_CONFIG_USER], [
ZFS_AC_DKMS_INHIBIT
ZFS_AC_CONFIG_USER_MOUNT_HELPER
ZFS_AC_CONFIG_USER_UDEV
+ ZFS_AC_CONFIG_USER_LIBAIO
ZFS_AC_CONFIG_USER_SYSTEMD
ZFS_AC_CONFIG_USER_SYSVINIT
ZFS_AC_CONFIG_USER_DRACUT
@@ -103,6 +103,8 @@ AC_DEFUN([ZFS_AC_CONFIG], [
AM_CONDITIONAL([CONFIG_KERNEL],
[test "$ZFS_CONFIG" = kernel -o "$ZFS_CONFIG" = all] &&
[test "x$enable_linux_builtin" != xyes ])
+ AM_CONDITIONAL([WANT_DEVNAME2DEVID], [test "x$user_libudev" = xyes ])
+ AM_CONDITIONAL([WANT_MMAP_LIBAIO], [test "x$user_libaio" = xyes ])
])
dnl #
@@ -636,6 +636,10 @@ DEBUG_DMU_TX
DEBUG_ZFS
DEBUG_STACKFLAGS
DEBUG_CFLAGS
+WANT_MMAP_LIBAIO_FALSE
+WANT_MMAP_LIBAIO_TRUE
+WANT_DEVNAME2DEVID_FALSE
+WANT_DEVNAME2DEVID_TRUE
CONFIG_KERNEL_FALSE
CONFIG_KERNEL_TRUE
CONFIG_USER_FALSE
@@ -662,6 +666,7 @@ systemdpresetdir
systemdunitdir
ZFS_MODULE_LOAD
ZFS_INIT_SYSTEMD
+LIBAIO
udevruledir
udevdir
mounthelperdir
@@ -12901,6 +12906,27 @@ fi
$as_echo "$udevdir;$udevruledir" >&6; }
+ LIBAIO=
+
+ ac_fn_c_check_header_mongrel "$LINENO" "libaio.h" "ac_cv_header_libaio_h" "$ac_includes_default"
+if test "x$ac_cv_header_libaio_h" = xyes; then :
+
+ user_libaio=yes
+ LIBAIO="-laio"
+
+
+$as_echo "#define HAVE_LIBAIO 1" >>confdefs.h
+
+
+else
+
+ user_libaio=no
+
+fi
+
+
+
+
# Check whether --enable-systemd was given.
if test "${enable_systemd+set}" = set; then :
enableval=$enable_systemd;
@@ -37116,6 +37142,27 @@ fi
$as_echo "$udevdir;$udevruledir" >&6; }
+ LIBAIO=
+
+ ac_fn_c_check_header_mongrel "$LINENO" "libaio.h" "ac_cv_header_libaio_h" "$ac_includes_default"
+if test "x$ac_cv_header_libaio_h" = xyes; then :
+
+ user_libaio=yes
+ LIBAIO="-laio"
+
+
+$as_echo "#define HAVE_LIBAIO 1" >>confdefs.h
+
+
+else
+
+ user_libaio=no
+
+fi
+
+
+
+
# Check whether --enable-systemd was given.
if test "${enable_systemd+set}" = set; then :
enableval=$enable_systemd;
@@ -37899,6 +37946,22 @@ else
CONFIG_KERNEL_FALSE=
fi
+ if test "x$user_libudev" = xyes ; then
+ WANT_DEVNAME2DEVID_TRUE=
+ WANT_DEVNAME2DEVID_FALSE='#'
+else
+ WANT_DEVNAME2DEVID_TRUE='#'
+ WANT_DEVNAME2DEVID_FALSE=
+fi
+
+ if test "x$user_libaio" = xyes ; then
+ WANT_MMAP_LIBAIO_TRUE=
+ WANT_MMAP_LIBAIO_FALSE='#'
+else
+ WANT_MMAP_LIBAIO_TRUE='#'
+ WANT_MMAP_LIBAIO_FALSE=
+fi
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether debugging is enabled" >&5
@@ -38120,6 +38183,14 @@ if test -z "${CONFIG_KERNEL_TRUE}" && test -z "${CONFIG_KERNEL_FALSE}"; then
as_fn_error $? "conditional \"CONFIG_KERNEL\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
+if test -z "${WANT_DEVNAME2DEVID_TRUE}" && test -z "${WANT_DEVNAME2DEVID_FALSE}"; then
+ as_fn_error $? "conditional \"WANT_DEVNAME2DEVID\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${WANT_MMAP_LIBAIO_TRUE}" && test -z "${WANT_MMAP_LIBAIO_FALSE}"; then
+ as_fn_error $? "conditional \"WANT_MMAP_LIBAIO\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
: "${CONFIG_STATUS=./config.status}"
ac_write_fail=0
@@ -176,6 +176,7 @@ am__aclocal_m4_deps = $(top_srcdir)/config/always-no-bool-compare.m4 \
$(top_srcdir)/config/user-arch.m4 \
$(top_srcdir)/config/user-dracut.m4 \
$(top_srcdir)/config/user-frame-larger-than.m4 \
+ $(top_srcdir)/config/user-libaio.m4 \
$(top_srcdir)/config/user-libblkid.m4 \
$(top_srcdir)/config/user-libuuid.m4 \
$(top_srcdir)/config/user-makedev.m4 \
@@ -387,6 +388,7 @@ KERNELCPPFLAGS = @KERNELCPPFLAGS@
KERNELMAKE_PARAMS = @KERNELMAKE_PARAMS@
LD = @LD@
LDFLAGS = @LDFLAGS@
+LIBAIO = @LIBAIO@
LIBBLKID = @LIBBLKID@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
@@ -176,6 +176,7 @@ am__aclocal_m4_deps = $(top_srcdir)/config/always-no-bool-compare.m4 \
$(top_srcdir)/config/user-arch.m4 \
$(top_srcdir)/config/user-dracut.m4 \
$(top_srcdir)/config/user-frame-larger-than.m4 \
+ $(top_srcdir)/config/user-libaio.m4 \
$(top_srcdir)/config/user-libblkid.m4 \
$(top_srcdir)/config/user-libuuid.m4 \
$(top_srcdir)/config/user-makedev.m4 \
@@ -329,6 +330,7 @@ KERNELCPPFLAGS = @KERNELCPPFLAGS@
KERNELMAKE_PARAMS = @KERNELMAKE_PARAMS@
LD = @LD@
LDFLAGS = @LDFLAGS@
+LIBAIO = @LIBAIO@
LIBBLKID = @LIBBLKID@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
@@ -176,6 +176,7 @@ am__aclocal_m4_deps = $(top_srcdir)/config/always-no-bool-compare.m4 \
$(top_srcdir)/config/user-arch.m4 \
$(top_srcdir)/config/user-dracut.m4 \
$(top_srcdir)/config/user-frame-larger-than.m4 \
+ $(top_srcdir)/config/user-libaio.m4 \
$(top_srcdir)/config/user-libblkid.m4 \
$(top_srcdir)/config/user-libuuid.m4 \
$(top_srcdir)/config/user-makedev.m4 \
@@ -561,6 +562,7 @@ KERNELCPPFLAGS = @KERNELCPPFLAGS@
KERNELMAKE_PARAMS = @KERNELMAKE_PARAMS@
LD = @LD@
LDFLAGS = @LDFLAGS@
+LIBAIO = @LIBAIO@
LIBBLKID = @LIBBLKID@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
@@ -176,6 +176,7 @@ am__aclocal_m4_deps = $(top_srcdir)/config/always-no-bool-compare.m4 \
$(top_srcdir)/config/user-arch.m4 \
$(top_srcdir)/config/user-dracut.m4 \
$(top_srcdir)/config/user-frame-larger-than.m4 \
+ $(top_srcdir)/config/user-libaio.m4 \
$(top_srcdir)/config/user-libblkid.m4 \
$(top_srcdir)/config/user-libuuid.m4 \
$(top_srcdir)/config/user-makedev.m4 \
@@ -369,6 +370,7 @@ KERNELCPPFLAGS = @KERNELCPPFLAGS@
KERNELMAKE_PARAMS = @KERNELMAKE_PARAMS@
LD = @LD@
LDFLAGS = @LDFLAGS@
+LIBAIO = @LIBAIO@
LIBBLKID = @LIBBLKID@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
@@ -176,6 +176,7 @@ am__aclocal_m4_deps = $(top_srcdir)/config/always-no-bool-compare.m4 \
$(top_srcdir)/config/user-arch.m4 \
$(top_srcdir)/config/user-dracut.m4 \
$(top_srcdir)/config/user-frame-larger-than.m4 \
+ $(top_srcdir)/config/user-libaio.m4 \
$(top_srcdir)/config/user-libblkid.m4 \
$(top_srcdir)/config/user-libuuid.m4 \
$(top_srcdir)/config/user-makedev.m4 \
@@ -325,6 +326,7 @@ KERNELCPPFLAGS = @KERNELCPPFLAGS@
KERNELMAKE_PARAMS = @KERNELMAKE_PARAMS@
LD = @LD@
LDFLAGS = @LDFLAGS@
+LIBAIO = @LIBAIO@
LIBBLKID = @LIBBLKID@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
@@ -176,6 +176,7 @@ am__aclocal_m4_deps = $(top_srcdir)/config/always-no-bool-compare.m4 \
$(top_srcdir)/config/user-arch.m4 \
$(top_srcdir)/config/user-dracut.m4 \
$(top_srcdir)/config/user-frame-larger-than.m4 \
+ $(top_srcdir)/config/user-libaio.m4 \
$(top_srcdir)/config/user-libblkid.m4 \
$(top_srcdir)/config/user-libuuid.m4 \
$(top_srcdir)/config/user-makedev.m4 \
@@ -325,6 +326,7 @@ KERNELCPPFLAGS = @KERNELCPPFLAGS@
KERNELMAKE_PARAMS = @KERNELMAKE_PARAMS@
LD = @LD@
LDFLAGS = @LDFLAGS@
+LIBAIO = @LIBAIO@
LIBBLKID = @LIBBLKID@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
@@ -391,6 +391,7 @@ mappedread(struct inode *ip, int nbytes, uio_t *uio)
pp = find_lock_page(mp, start >> PAGE_SHIFT);
if (pp) {
ASSERT(PageUptodate(pp));
+ unlock_page(pp);
pb = kmap(pp);
error = uiomove(pb + off, bytes, UIO_READ, uio);
@@ -400,7 +401,6 @@ mappedread(struct inode *ip, int nbytes, uio_t *uio)
flush_dcache_page(pp);
mark_page_accessed(pp);
- unlock_page(pp);
put_page(pp);
} else {
error = dmu_read_uio_dbuf(sa_get_db(zp->z_sa_hdl),
@@ -258,6 +258,9 @@
/* kernel has large stacks */
#undef HAVE_LARGE_STACKS
+/* Define if you have libaio */
+#undef HAVE_LIBAIO
+
/* Define if you have libblkid */
#undef HAVE_LIBBLKID