diff options
author | Martin Matuška <[email protected]> | 2022-09-20 02:21:45 +0200 |
---|---|---|
committer | GitHub <[email protected]> | 2022-09-19 17:21:45 -0700 |
commit | 042d43a1ddf114ea72d83fd45cc926724f74f5fc (patch) | |
tree | 951d4c939c28fc47a5d31100c1bdfb71eab51da3 | |
parent | 9a671fe7ecbc5f6ca07d96869207720a37b088e4 (diff) |
FreeBSD: fix static module build broken in 7bb707ffa
param_set_arc_free_target(SYSCTL_HANDLER_ARGS) and
param_set_arc_no_grow_shift(SYSCTL_HANDLER_ARGS) defined in
sysctl_os.c must be made available to arc_os.c.
Reviewed-by: Alexander Motin <[email protected]>
Reviewed-by: Ryan Moeller <[email protected]>
Signed-off-by: Martin Matuska <[email protected]>
Closes #13915
-rw-r--r-- | include/os/freebsd/zfs/sys/arc_os.h | 34 | ||||
-rw-r--r-- | module/os/freebsd/zfs/arc_os.c | 3 | ||||
-rw-r--r-- | module/os/freebsd/zfs/sysctl_os.c | 5 |
3 files changed, 38 insertions, 4 deletions
diff --git a/include/os/freebsd/zfs/sys/arc_os.h b/include/os/freebsd/zfs/sys/arc_os.h new file mode 100644 index 000000000..a95618b91 --- /dev/null +++ b/include/os/freebsd/zfs/sys/arc_os.h @@ -0,0 +1,34 @@ +/* + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2022 Martin Matuska + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _SYS_ARC_OS_H +#define _SYS_ARC_OS_H + +int param_set_arc_free_target(SYSCTL_HANDLER_ARGS); +int param_set_arc_no_grow_shift(SYSCTL_HANDLER_ARGS); + +#endif diff --git a/module/os/freebsd/zfs/arc_os.c b/module/os/freebsd/zfs/arc_os.c index f1a3a0faf..30e96a889 100644 --- a/module/os/freebsd/zfs/arc_os.c +++ b/module/os/freebsd/zfs/arc_os.c @@ -27,6 +27,7 @@ #include <sys/zio_checksum.h> #include <sys/zfs_context.h> #include <sys/arc.h> +#include <sys/arc_os.h> #include <sys/zfs_refcount.h> #include <sys/vdev.h> #include <sys/vdev_trim.h> @@ -72,11 +73,9 @@ SYSINIT(arc_free_target_init, SI_SUB_KTHREAD_PAGE, SI_ORDER_ANY, * We don't have a tunable for arc_free_target due to the dependency on * pagedaemon initialisation. */ -int param_set_arc_free_target(SYSCTL_HANDLER_ARGS); ZFS_MODULE_PARAM_CALL(zfs_arc, zfs_arc_, free_target, param_set_arc_free_target, 0, CTLFLAG_RW, "Desired number of free pages below which ARC triggers reclaim"); -int param_set_arc_no_grow_shift(SYSCTL_HANDLER_ARGS); ZFS_MODULE_PARAM_CALL(zfs_arc, zfs_arc_, no_grow_shift, param_set_arc_no_grow_shift, 0, ZMOD_RW, "log2(fraction of ARC which must be free to allow growing)"); diff --git a/module/os/freebsd/zfs/sysctl_os.c b/module/os/freebsd/zfs/sysctl_os.c index cd384c205..4d908381c 100644 --- a/module/os/freebsd/zfs/sysctl_os.c +++ b/module/os/freebsd/zfs/sysctl_os.c @@ -53,6 +53,7 @@ __FBSDID("$FreeBSD$"); #include <sys/spa_impl.h> #include <sys/vdev.h> #include <sys/vdev_impl.h> +#include <sys/arc_os.h> #include <sys/dmu.h> #include <sys/dsl_dir.h> #include <sys/dsl_dataset.h> @@ -228,7 +229,7 @@ SYSCTL_PROC(_vfs_zfs, OID_AUTO, arc_min, extern uint_t zfs_arc_free_target; -static int +int param_set_arc_free_target(SYSCTL_HANDLER_ARGS) { uint_t val; @@ -261,7 +262,7 @@ SYSCTL_PROC(_vfs_zfs, OID_AUTO, arc_free_target, " (LEGACY)"); /* END CSTYLED */ -static int +int param_set_arc_no_grow_shift(SYSCTL_HANDLER_ARGS) { int err, val; |