]> git.proxmox.com Git - mirror_spl-debian.git/blame - config/kernel-rw.m4
dch: close a bug and refresh timestamp.
[mirror_spl-debian.git] / config / kernel-rw.m4
CommitLineData
34ee731f
AX
1dnl #
2dnl # 4.14 API change
3dnl # kernel_write() which was introduced in 3.9 was updated to take
4dnl # the offset as a pointer which is needed by vn_rdwr().
5dnl #
6AC_DEFUN([SPL_AC_KERNEL_WRITE], [
7 AC_MSG_CHECKING([whether kernel_write() takes loff_t pointer])
8 tmp_flags="$EXTRA_KCFLAGS"
9 EXTRA_KCFLAGS="-Werror"
10 SPL_LINUX_TRY_COMPILE([
11 #include <linux/fs.h>
12 ],[
13 struct file *file = NULL;
14 const void *buf = NULL;
15 size_t count = 0;
16 loff_t *pos = NULL;
17 ssize_t ret;
18
19 ret = kernel_write(file, buf, count, pos);
20 ],[
21 AC_MSG_RESULT(yes)
22 AC_DEFINE(HAVE_KERNEL_WRITE_PPOS, 1,
23 [kernel_write() take loff_t pointer])
24 ],[
25 AC_MSG_RESULT(no)
26 ])
27 EXTRA_KCFLAGS="$tmp_flags"
28])
29
30dnl #
31dnl # 4.14 API change
32dnl # kernel_read() which has existed for forever was updated to take
33dnl # the offset as a pointer which is needed by vn_rdwr().
34dnl #
35AC_DEFUN([SPL_AC_KERNEL_READ], [
36 AC_MSG_CHECKING([whether kernel_read() takes loff_t pointer])
37 tmp_flags="$EXTRA_KCFLAGS"
38 EXTRA_KCFLAGS="-Werror"
39 SPL_LINUX_TRY_COMPILE([
40 #include <linux/fs.h>
41 ],[
42 struct file *file = NULL;
43 void *buf = NULL;
44 size_t count = 0;
45 loff_t *pos = NULL;
46 ssize_t ret;
47
48 ret = kernel_read(file, buf, count, pos);
49 ],[
50 AC_MSG_RESULT(yes)
51 AC_DEFINE(HAVE_KERNEL_READ_PPOS, 1,
52 [kernel_read() take loff_t pointer])
53 ],[
54 AC_MSG_RESULT(no)
55 ])
56 EXTRA_KCFLAGS="$tmp_flags"
57])