xref: /freebsd-src/sys/contrib/openzfs/config/kernel-generic_fadvise.m4 (revision c7046f76c2c027b00c0e6ba57cfd28f1a78f5e23)
1*c7046f76SMartin Matuskadnl #
2*c7046f76SMartin Matuskadnl # 5.3 API change
3*c7046f76SMartin Matuskadnl # The generic_fadvise() function is present since 4.19 kernel
4*c7046f76SMartin Matuskadnl # but it was not exported until Linux 5.3.
5*c7046f76SMartin Matuskadnl #
6*c7046f76SMartin MatuskaAC_DEFUN([ZFS_AC_KERNEL_SRC_GENERIC_FADVISE], [
7*c7046f76SMartin Matuska	ZFS_LINUX_TEST_SRC([generic_fadvise], [
8*c7046f76SMartin Matuska		#include <linux/fs.h>
9*c7046f76SMartin Matuska	], [
10*c7046f76SMartin Matuska		struct file *fp __attribute__ ((unused)) = NULL;
11*c7046f76SMartin Matuska		loff_t offset __attribute__ ((unused)) = 0;
12*c7046f76SMartin Matuska		loff_t len __attribute__ ((unused)) = 0;
13*c7046f76SMartin Matuska		int advise __attribute__ ((unused)) = 0;
14*c7046f76SMartin Matuska		generic_fadvise(fp, offset, len, advise);
15*c7046f76SMartin Matuska	])
16*c7046f76SMartin Matuska])
17*c7046f76SMartin Matuska
18*c7046f76SMartin MatuskaAC_DEFUN([ZFS_AC_KERNEL_GENERIC_FADVISE], [
19*c7046f76SMartin Matuska	AC_MSG_CHECKING([whether generic_fadvise() is available])
20*c7046f76SMartin Matuska	ZFS_LINUX_TEST_RESULT_SYMBOL([generic_fadvise],
21*c7046f76SMartin Matuska	[generic_fadvise], [mm/fadvise.c], [
22*c7046f76SMartin Matuska		AC_MSG_RESULT(yes)
23*c7046f76SMartin Matuska		AC_DEFINE(HAVE_GENERIC_FADVISE, 1, [yes])
24*c7046f76SMartin Matuska	],[
25*c7046f76SMartin Matuska		AC_MSG_RESULT(no)
26*c7046f76SMartin Matuska	])
27*c7046f76SMartin Matuska])
28