zfs/module/os/linux/spl
szubersk dbbc2f9688 Fix Clang 15 compilation errors
- Clang 15 doesn't support `-fno-ipa-sra` anymore. Do a separate
  check for `-fno-ipa-sra` support by $KERNEL_CC.

- Don't enable `-mgeneral-regs-only` for certain module files.
  Fix #13260

- Scope `GCC diagnostic ignored` statements to GCC only. Clang
  doesn't need them to compile the code.

Porting notes:
- Moved the stanzas removing -mgeneral-regs-only to Makefile.in
  since they wouldn't readily work in Kbuild.in and that did.

Reviewed-by: Richard Yao <richard.yao@alumni.stonybrook.edu>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: szubersk <szuberskidamian@gmail.com>
Closes #13260
Closes #14150

Closes #14624
Ported-by: Rich Ercolani <rincebrain@gmail.com
Signed-off-by: Rich Ercolani <rincebrain@gmail.com>
2023-06-05 18:25:57 -07:00
..
Makefile.in Add zfs_file_* interface, remove vnodes 2019-11-21 09:32:57 -08: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 Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
spl-cred.c Linux 6.3 compat: idmapped mount API changes 2023-06-05 10:59:02 -07:00
spl-err.c Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
spl-generic.c Fix Clang 15 compilation errors 2023-06-05 18:25:57 -07:00
spl-kmem-cache.c Linux 6.4 compat: reclaimed_slab renamed to reclaimed 2023-06-05 10:59:02 -07:00
spl-kmem.c Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
spl-kstat.c Linux 5.17 compat: PDE_DATA() renamed to pde_data() 2022-02-04 08:33:52 -08:00
spl-proc.c linux/spl: proc: use global table_{min,max} values instead of local ones 2021-04-19 15:22:57 -07:00
spl-procfs-list.c Linux 6.1 compat: change order of sys/mutex.h includes 2022-11-01 12:44:56 -07:00
spl-taskq.c Fix cpu hotplug atomic sleep issue 2022-02-15 21:52:45 -08:00
spl-thread.c Linux 5.17 compat: dequeue_signal() takes a 4th argument 2022-02-04 08:33:52 -08:00
spl-trace.c Add tracepoints for taskq entry lifetime events 2019-11-01 13:14:54 -07:00
spl-tsd.c Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
spl-vmem.c Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
spl-xdr.c Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
spl-zlib.c Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07: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