xref: /freebsd/sys/contrib/openzfs/config/kernel-vfs-filemap_dirty_folio.m4 (revision e3aa18ad71782a73d3dd9dd3d526bbd2b607ca16)
1716fd348SMartin Matuskadnl #
2716fd348SMartin Matuskadnl # Linux 5.18 uses filemap_dirty_folio in lieu of
3716fd348SMartin Matuskadnl # ___set_page_dirty_nobuffers
4716fd348SMartin Matuskadnl #
5716fd348SMartin MatuskaAC_DEFUN([ZFS_AC_KERNEL_SRC_VFS_FILEMAP_DIRTY_FOLIO], [
6716fd348SMartin Matuska	ZFS_LINUX_TEST_SRC([vfs_has_filemap_dirty_folio], [
7716fd348SMartin Matuska		#include <linux/pagemap.h>
8716fd348SMartin Matuska		#include <linux/writeback.h>
9716fd348SMartin Matuska
10716fd348SMartin Matuska		static const struct address_space_operations
11716fd348SMartin Matuska		    aops __attribute__ ((unused)) = {
12716fd348SMartin Matuska			.dirty_folio	= filemap_dirty_folio,
13716fd348SMartin Matuska		};
14716fd348SMartin Matuska	],[])
15716fd348SMartin Matuska])
16716fd348SMartin Matuska
17716fd348SMartin MatuskaAC_DEFUN([ZFS_AC_KERNEL_VFS_FILEMAP_DIRTY_FOLIO], [
18716fd348SMartin Matuska	dnl #
19716fd348SMartin Matuska	dnl # Linux 5.18 uses filemap_dirty_folio in lieu of
20716fd348SMartin Matuska	dnl # ___set_page_dirty_nobuffers
21716fd348SMartin Matuska	dnl #
22*e3aa18adSMartin Matuska	AC_MSG_CHECKING([whether filemap_dirty_folio exists])
23716fd348SMartin Matuska	ZFS_LINUX_TEST_RESULT([vfs_has_filemap_dirty_folio], [
24716fd348SMartin Matuska		AC_MSG_RESULT([yes])
25716fd348SMartin Matuska		AC_DEFINE(HAVE_VFS_FILEMAP_DIRTY_FOLIO, 1,
26716fd348SMartin Matuska			[filemap_dirty_folio exists])
27716fd348SMartin Matuska	],[
28716fd348SMartin Matuska		AC_MSG_RESULT([no])
29716fd348SMartin Matuska	])
30716fd348SMartin Matuska])
31