The branch stable/13 has been updated by mjg:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=8ea3f6a3e45473bcd494c385b8614a8cc88b1356

commit 8ea3f6a3e45473bcd494c385b8614a8cc88b1356
Author:     Mateusz Guzik <[email protected]>
AuthorDate: 2021-04-11 04:49:24 +0000
Commit:     Mateusz Guzik <[email protected]>
CommitDate: 2021-05-22 18:37:23 +0000

    zfs: make vnlru_free_vfsops use conditional on version
    
    Diff reduction against upstream.
    
    (cherry picked from commit feea35bed0dd7a029b70b700cc3c0d2139e3deb8)
---
 sys/contrib/openzfs/module/os/freebsd/zfs/arc_os.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/sys/contrib/openzfs/module/os/freebsd/zfs/arc_os.c 
b/sys/contrib/openzfs/module/os/freebsd/zfs/arc_os.c
index 0d5cffbe8d1e..201dbc423336 100644
--- a/sys/contrib/openzfs/module/os/freebsd/zfs/arc_os.c
+++ b/sys/contrib/openzfs/module/os/freebsd/zfs/arc_os.c
@@ -51,8 +51,10 @@
 #include <sys/vm.h>
 #include <sys/vmmeter.h>
 
+#if __FreeBSD_version >= 1300139
 static struct sx arc_vnlru_lock;
 static struct vnode *arc_vnlru_marker;
+#endif
 
 extern struct vfsops zfs_vfsops;
 
@@ -160,9 +162,13 @@ arc_prune_task(void *arg)
 
        arc_reduce_target_size(ptob(nr_scan));
        free(arg, M_TEMP);
+#if __FreeBSD_version >= 1300139
        sx_xlock(&arc_vnlru_lock);
        vnlru_free_vfsops(nr_scan, &zfs_vfsops, arc_vnlru_marker);
        sx_xunlock(&arc_vnlru_lock);
+#else
+       vnlru_free(nr_scan, &zfs_vfsops);
+#endif
 }
 
 /*
@@ -239,8 +245,10 @@ arc_lowmem_init(void)
 {
        arc_event_lowmem = EVENTHANDLER_REGISTER(vm_lowmem, arc_lowmem, NULL,
            EVENTHANDLER_PRI_FIRST);
+#if __FreeBSD_version >= 1300139
        arc_vnlru_marker = vnlru_alloc_marker();
        sx_init(&arc_vnlru_lock, "arc vnlru lock");
+#endif
 }
 
 void
@@ -248,10 +256,12 @@ arc_lowmem_fini(void)
 {
        if (arc_event_lowmem != NULL)
                EVENTHANDLER_DEREGISTER(vm_lowmem, arc_event_lowmem);
+#if __FreeBSD_version >= 1300139
        if (arc_vnlru_marker != NULL) {
                vnlru_free_marker(arc_vnlru_marker);
                sx_destroy(&arc_vnlru_lock);
        }
+#endif
 }
 
 void
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/dev-commits-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to