12a58b312SMartin Matuskadnl # 22a58b312SMartin Matuskadnl # Starting from Linux 5.13, flush_dcache_page() becomes an inline 3*3494f7c0SMartin Matuskadnl # function and may indirectly referencing GPL-only symbols: 4*3494f7c0SMartin Matuskadnl # on powerpc: cpu_feature_keys 5*3494f7c0SMartin Matuskadnl # on riscv: PageHuge (added from 6.2) 62a58b312SMartin Matuskadnl # 72a58b312SMartin Matuska 82a58b312SMartin Matuskadnl # 92a58b312SMartin Matuskadnl # Checking if flush_dcache_page is exported GPL-only 102a58b312SMartin Matuskadnl # 112a58b312SMartin MatuskaAC_DEFUN([ZFS_AC_KERNEL_SRC_FLUSH_DCACHE_PAGE], [ 122a58b312SMartin Matuska ZFS_LINUX_TEST_SRC([flush_dcache_page], [ 132a58b312SMartin Matuska #include <asm/cacheflush.h> 142a58b312SMartin Matuska ], [ 152a58b312SMartin Matuska flush_dcache_page(0); 162a58b312SMartin Matuska ], [], [ZFS_META_LICENSE]) 172a58b312SMartin Matuska]) 182a58b312SMartin MatuskaAC_DEFUN([ZFS_AC_KERNEL_FLUSH_DCACHE_PAGE], [ 192a58b312SMartin Matuska AC_MSG_CHECKING([whether flush_dcache_page() is GPL-only]) 202a58b312SMartin Matuska ZFS_LINUX_TEST_RESULT([flush_dcache_page_license], [ 212a58b312SMartin Matuska AC_MSG_RESULT(no) 222a58b312SMartin Matuska ], [ 232a58b312SMartin Matuska AC_MSG_RESULT(yes) 242a58b312SMartin Matuska AC_DEFINE(HAVE_FLUSH_DCACHE_PAGE_GPL_ONLY, 1, 252a58b312SMartin Matuska [flush_dcache_page() is GPL-only]) 262a58b312SMartin Matuska ]) 272a58b312SMartin Matuska]) 28