mirror_zfs/module/os/freebsd/zfs
Matthew Ahrens 3c42c9ed84
Clean up OS-specific ARC and kmem code
OS-specific code (e.g. under `module/os/linux`) does not need to share
its code structure with any other operating systems.  In particular, the
ARC and kmem code need not be similar to the code in illumos, because we
won't be syncing this OS-specific code between operating systems.  For
example, if/when illumos support is added to the common repo, we would
add a file `module/os/illumos/zfs/arc_os.c` for the illumos versions of
this code.

Therefore, we can simplify the code in the OS-specific ARC and kmem
routines.

These changes do not impact system behavior, they are purely code
cleanup.  The changes are:

Arenas are not used on Linux or FreeBSD (they are always `NULL`), so
`heap_arena`, `zio_arena`, and `zio_alloc_arena` can be removed, along
with code that uses them.

In `arc_available_memory()`:
 * `desfree` is unused, remove it
 * rename `freemem` to avoid conflict with pre-existing `#define`
 * remove checks related to arenas
 * use units of bytes, rather than converting from bytes to pages and
   then back to bytes

`SPL_KMEM_CACHE_REAP` is unused, remove it.

`skc_reap` is unused, remove it.

The `count` argument to `spl_kmem_cache_reap_now()` is unused, remove
it.

`vmem_size()` and associated type and macros are unused, remove them.

In `arc_memory_throttle()`, use a less confusing variable name to store
the result of `arc_free_memory()`.

Reviewed-by: George Wilson <gwilson@delphix.com>
Reviewed-by: Pavel Zakharov <pavel.zakharov@delphix.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Ryan Moeller <ryan@ixsystems.com>
Signed-off-by: Matthew Ahrens <mahrens@delphix.com>
Closes #10499
2020-06-29 09:01:07 -07:00
..
abd_os.c Add abd_cache_reap_now for abd_chunk_cache users 2020-06-17 21:44:13 -07:00
arc_os.c Clean up OS-specific ARC and kmem code 2020-06-29 09:01:07 -07:00
crypto_os.c Fix crypto build on FreeBSD HEAD 2020-05-30 12:54:57 -07:00
dmu_os.c Use new FreeBSD API to largely eliminate object locking 2020-04-17 09:30:26 -07:00
hkdf.c Add FreeBSD support to OpenZFS 2020-04-14 11:36:28 -07:00
kmod_core.c Add prototypes 2020-06-18 12:21:32 -07:00
spa_os.c Add prototypes 2020-06-18 12:21:32 -07:00
spa_stats.c Add FreeBSD support to OpenZFS 2020-04-14 11:36:28 -07:00
sysctl_os.c Add zfs_multihost_interval tunable handler for FreeBSD 2020-06-23 13:32:42 -07:00
vdev_file.c Add FreeBSD support to OpenZFS 2020-04-14 11:36:28 -07:00
vdev_geom.c Clarify comments in config/*.m4, vdev_geom.c, zfs_allow_*.ksh 2020-06-22 09:46:37 -07:00
vdev_label_os.c Add support for boot environment data to be stored in the label 2020-05-07 09:36:33 -07:00
zfs_acl.c Mark functions as static 2020-06-18 12:20:38 -07:00
zfs_ctldir.c Mark functions as static 2020-06-18 12:20:38 -07:00
zfs_debug.c Add FreeBSD support to OpenZFS 2020-04-14 11:36:28 -07:00
zfs_dir.c Fix typos 2020-06-09 21:24:09 -07:00
zfs_file_os.c Add FreeBSD support to OpenZFS 2020-04-14 11:36:28 -07:00
zfs_fuid_os.c Add FreeBSD support to OpenZFS 2020-04-14 11:36:28 -07:00
zfs_ioctl_os.c Remove redundant includes 2020-06-08 09:57:36 -07:00
zfs_onexit_os.c Add FreeBSD support to OpenZFS 2020-04-14 11:36:28 -07:00
zfs_vfsops.c Fix copy-paste error breaking FreeBSD head 2020-06-19 15:12:34 -07:00
zfs_vnops.c Mark functions as static 2020-06-18 12:20:38 -07:00
zfs_znode.c Mark functions as static 2020-06-18 12:20:38 -07:00
zio_crypt.c Fix typos 2020-06-09 21:24:09 -07:00
zvol_os.c Connect dataset_kstats for FreeBSD 2020-06-05 17:17:02 -07:00