zfs/module/os/linux/spl
Rob Norris e31ed02433 linux/kstat: replace existing kstat if name is reused
Previously, if a kstat proc name already existed, the old one would be
kept. This makes it so the old one is discarded and the new one kept.

Arguably, a collision like this shouldn't ever happen, but during
import multiple vdev_t (and so vdev_queue_t, and so vdev_queue stats)
can exist at the same time for the same guid. There's no real way to
tell which is which without substantial refactoring in the import and
vdev init codepaths, whch is probably worthwhile but not for today.

Sponsored-by: Klara, Inc.
Sponsored-by: Syneto
Signed-off-by: Rob Norris <rob.norris@klarasystems.com>
2024-05-22 09:42:20 +10:00
..
README.md Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
THIRDPARTYLICENSE.gplv2 OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
THIRDPARTYLICENSE.gplv2.descrip OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
spl-atomic.c Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
spl-condvar.c linux spl: fix typo in top comment of spl-condvar.c 2024-01-17 09:05:12 -08:00
spl-cred.c Linux 6.3 compat: idmapped mount API changes 2023-04-10 14:15:36 -07:00
spl-err.c Fix declarations of non-global variables 2022-10-18 11:05:32 -07:00
spl-generic.c Linux: Fix octal detection in define_ddi_strtox() 2023-03-08 13:52:09 -08:00
spl-kmem-cache.c Linux 6.8 compat: implement strlcpy fallback 2024-01-29 11:36:07 -08:00
spl-kmem.c Clean up CSTYLEDs 2022-01-26 11:38:52 -08:00
spl-kstat.c linux/kstat: replace existing kstat if name is reused 2024-05-22 09:42:20 +10:00
spl-proc.c Linux 6.5 compat: spl: properly unregister sysctl entries 2023-09-07 14:36:32 -07:00
spl-procfs-list.c Linux: disable lockdep for a couple of locks 2024-05-13 15:12:07 -07:00
spl-shrinker.c Linux 6.7 compat: rework shrinker setup for heap allocations 2023-12-20 11:47:55 -08:00
spl-taskq.c Replace usage of schedule_timeout with schedule_timeout_interruptible (#16150) 2024-05-09 07:30:28 -07:00
spl-thread.c Linux 6.8 compat: implement strlcpy fallback 2024-01-29 11:36:07 -08:00
spl-trace.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
spl-tsd.c Linux SPL module init: Handle memory allocation failures correctly 2022-09-08 10:28:20 -07:00
spl-vmem.c Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
spl-xdr.c xdr: header cleanup 2024-04-03 15:13:27 -07:00
spl-zlib.c Linux SPL module init: Handle memory allocation failures correctly 2022-09-08 10:28:20 -07:00
spl-zone.c Linux 6.8 compat: implement strlcpy fallback 2024-01-29 11:36:07 -08:00

README.md

The Solaris Porting Layer, SPL, is a Linux kernel module which provides a compatibility layer used by the OpenZFS project.

Installation

The latest version of the SPL is maintained as part of this repository. Only when building ZFS version 0.7.x or earlier must an external SPL release be used. These releases can be found at:

Release

The SPL is released under a GPLv2 license.
For more details see the NOTICE and THIRDPARTYLICENSE files; UCRL-CODE-235197