xref: /freebsd/sys/contrib/openzfs/config/kernel-sb-wb-err.m4 (revision 3a8960711f4319f9b894ea2453c89065ee1b3a10)
1*3a896071SMartin Matuska# dnl
2*3a896071SMartin Matuska# dnl 5.8 (735e4ae5ba28) introduced a superblock scoped errseq_t to use to
3*3a896071SMartin Matuska# dnl record writeback errors for syncfs() to return. Up until 5.17, when
4*3a896071SMartin Matuska# dnl sync_fs errors were returned directly, this is the only way for us to
5*3a896071SMartin Matuska# dnl report an error from syncfs().
6*3a896071SMartin Matuska# dnl
7*3a896071SMartin MatuskaAC_DEFUN([ZFS_AC_KERNEL_SRC_SUPER_BLOCK_S_WB_ERR], [
8*3a896071SMartin Matuska	ZFS_LINUX_TEST_SRC([super_block_s_wb_err], [
9*3a896071SMartin Matuska		#include <linux/fs.h>
10*3a896071SMartin Matuska
11*3a896071SMartin Matuska		static const struct super_block
12*3a896071SMartin Matuska		    sb __attribute__ ((unused)) = {
13*3a896071SMartin Matuska			.s_wb_err = 0,
14*3a896071SMartin Matuska		};
15*3a896071SMartin Matuska	],[])
16*3a896071SMartin Matuska])
17*3a896071SMartin Matuska
18*3a896071SMartin MatuskaAC_DEFUN([ZFS_AC_KERNEL_SUPER_BLOCK_S_WB_ERR], [
19*3a896071SMartin Matuska	AC_MSG_CHECKING([whether super_block has s_wb_err])
20*3a896071SMartin Matuska	ZFS_LINUX_TEST_RESULT([super_block_s_wb_err], [
21*3a896071SMartin Matuska		AC_MSG_RESULT(yes)
22*3a896071SMartin Matuska		AC_DEFINE(HAVE_SUPER_BLOCK_S_WB_ERR, 1,
23*3a896071SMartin Matuska			[have super_block s_wb_err])
24*3a896071SMartin Matuska	],[
25*3a896071SMartin Matuska		AC_MSG_RESULT(no)
26*3a896071SMartin Matuska	])
27*3a896071SMartin Matuska])
28