HomeFreeBSD

compact: workaround for GPL-only symbols on riscv from Linux 6.2

Description

compact: workaround for GPL-only symbols on riscv from Linux 6.2

Since Linux 6.2, the implementation of flush_dcache_page on riscv
references GPL-only symbol PageHuge, breaking the build of zfs.

This patch uses existing mechanism to override flush_dcache_page,
removing the call to PageHuge. According to comments in kernel,
it is only used to do some check against HugeTLB pages, which only
exist in userspace. ZFS uses flush_dcache_page only on kernel pages,
thus this patch will not introduce any behaviour change.

See also: torvalds/linux@d33deda, openzfs/zfs@589f59b

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Shengqi Chen <harry-chen@outlook.com>
Closes #14974
Closes #15627

Details

Provenance
Shengqi Chen <harry-chen@outlook.com>Authored on Dec 6 2023, 8:37 PM
GitHub <noreply@github.com>Committed on Dec 6 2023, 8:37 PM
Parents
rG687e4d7f9cad: Extend import_progress kstat with a notes field
Branches
Unknown
Tags
Unknown

Event Timeline

GitHub <noreply@github.com> committed rG86239a5b9c54: compact: workaround for GPL-only symbols on riscv from Linux 6.2 (authored by Shengqi Chen <harry-chen@outlook.com>).Dec 6 2023, 8:37 PM