OpenZFS on OS X/spl 45a67cainclude/osx mutex.h, include/sys sysmacros.h types.h

Compile fixes for Catalina / Xcode 11

OpenZFS on OS X/spl 5298e88. META

spl-1.9.2
DeltaFile
+1-1META
+1-11 files

OpenZFS on OS X/spl d7a26c0. META

spl-1.9.1
DeltaFile
+1-1META
+1-11 files

OpenZFS on OS X/spl dab6cc4module/spl spl-condvar.c

spl_cv_timedwait() timeout of zero blocks.

sec==0, nsec==0 is not a poll request in XNU kernel. Ensure it
never is all zero, preferring sleep over fast-return.

OpenZFS on OS X/spl dc70a3einclude/sys simd_x86.h

Compile fixes for pre-10.13

OpenZFS on OS X/spl d5e5938. META

spl-1.9.1-rc1
DeltaFile
+2-2META
+2-21 files

OpenZFS on OS X/spl 37d47c6module/spl spl-condvar.c

Clean up spl_cv_timedwait()

Handle partial second delays as well, even though hires timer should be
used for that.
DeltaFile
+14-11module/spl/spl-condvar.c
+14-111 files

OpenZFS on OS X/spl 7fb322d. META

spl-1.9.1-rc1
DeltaFile
+2-2META
+2-21 files

OpenZFS on OS X/spl c1ee357module/spl spl-condvar.c

Clean up spl_cv_timedwait()

Handle partial second delays as well, even though hires timer should be
used for that.
DeltaFile
+14-11module/spl/spl-condvar.c
+14-111 files

OpenZFS on OS X/spl 95cbaecinclude/sys simd_x86.h, module/spl spl-processor.c

ZOL cpuid_features header file

simd_x86.h is the header file used to detect CPU features, like AVX, SSE etc.

We have moved it from linux/simd_x86.h to just sys/simd_x86.h

To get at the CPU features, we need to add "cpuid_info()" to zfs.exports.

Handle kernel/userland ZFS_ASM_BUG macro

OpenZFS on OS X/spl 3825006include/sys simd_x86.h

Handle kernel/userland ZFS_ASM_BUG macro

OpenZFS on OS X/spl 5dd55e1module/spl spl-processor.c

Correct type

OpenZFS on OS X/spl be5b061include/sys simd_x86.h, module/spl spl-processor.c

ZOL cpuid_features header file

simd_x86.h is the header file used to detect CPU features, like AVX, SSE etc.

We have moved it from linux/simd_x86.h to just sys/simd_x86.h

To get at the CPU features, we need to add "cpuid_info()" to zfs.exports.

OpenZFS on OS X/spl ef440eb. META

spl-1.9.0
DeltaFile
+1-1META
+1-11 files

OpenZFS on OS X/spl e9fdc61. META

spl-1.9.0-rc3
DeltaFile
+1-1META
+1-11 files

OpenZFS on OS X/spl 5707fdb. configure.ac

Change default compile to -O2 -g
DeltaFile
+0-4configure.ac
+0-41 files

OpenZFS on OS X/spl 91b9885module/spl spl-kmem.c spl-vmem.c

Memory leak detection

Record all allocs inside a allocation size range, and remove on free. Dump
any remaining records on kext unload.

Record stack inside vmem like illumos does. Nothing uses it though.

Alert about size==0 and kmem_free(NULL)

Use the stack-recording instead of macro wrapping - which gives better
location information, and recompile of ZFS not required.

OpenZFS on OS X/spl 810e19dmodule/spl spl-vmem.c spl-seg_kmem.c

zfs_qcache_ appears to leak memory

OpenZFS on OS X/spl 6620e0f. META

spl-1.9.0
DeltaFile
+1-1META
+1-11 files

OpenZFS on OS X/spl 93c40a8include/sys kmem.h, module/spl spl-kmem.c spl-vmem.c

Memory leak detection

Record all allocs inside a allocation size range, and remove on free. Dump
any remaining records on kext unload.

Record stack inside vmem like illumos does. Nothing uses it though.

Alert about size==0 and kmem_free(NULL)

OpenZFS on OS X/spl e2afee7module/spl spl-vmem.c spl-seg_kmem.c

zfs_qcache_ appears to leak memory

OpenZFS on OS X/spl cb56533module/spl spl-rwlock.c

Additional rwlock checks.

Verify rwlock is not already initialised in rw_init() and confirm it
has been initialised in rw_destroy().

OpenZFS on OS X/spl 24fd79dinclude/sys taskq.h, module/spl spl-taskq.c

Add template for taskq_wait_id()

Until taskq_wait_id() can be properly implemented, it uses taskq_wait() to
wait for all taskqs in that group.

OpenZFS on OS X/spl 133a66dinclude/sys kmem.h, module/spl spl-kmem.c spl-vmem.c

Memory leak detection

Record all allocs inside a allocation size range, and remove on free. Dump
any remaining records on kext unload.

Record stack inside vmem like illumos does. Nothing uses it though.

Alert about size==0 and kmem_free(NULL)

OpenZFS on OS X/spl 03d34d6module/spl spl-vmem.c spl-seg_kmem.c

zfs_qcache_ appears to leak memory

OpenZFS on OS X/spl 9801fe1module/spl spl-vmem.c spl-seg_kmem.c

zfs_qcache_ appears to leak memory

OpenZFS on OS X/spl 37a1a76include/sys kmem_impl.h, module/spl spl-kmem.c

Handle alloc of size==0 with more grace

OpenZFS on OS X/spl 70a1f16include/sys kmem_impl.h, module/spl spl-kmem.c

Handle alloc of size==0 with more grace

OpenZFS on OS X/spl b72e4beinclude/sys kmem.h, module/spl spl-kmem.c spl-vmem.c

Memory leak detection

Record all allocs inside a allocation size range, and remove on free. Dump
any remaining records on kext unload.

Record stack inside vmem like illumos does. Nothing uses it though.

OpenZFS on OS X/spl 4018831include/sys kmem.h, module/spl spl-kmem.c spl-vmem.c

Memory leak detection

Record all allocs inside a allocation size range, and remove on free. Dump
any remaining records on kext unload.

Record stack inside vmem like illumos does. Nothing uses it though.

OpenZFS on OS X/spl 935fbe2include/sys types.h

Define FRSYNC and FOFFMAX as zero

To avoid #ifdef everywhere

OpenZFS on OS X/spl 2884ed0include/sys types.h

fix FSYNC and FDSYNC, don't define FRSYNC or FOFFMAX

OpenZFS on OS X/spl 9cf6d5einclude/sys rwlock.h, module/spl spl-rwlock.c

Debug rwlock leak code

Should the
ASSERT3U(zfs_active_rwlock, ==, 0);

trigger, enable SPL_DEBUG_RWLOCK to dump leaked rwlocks on unloading SPL.

OpenZFS on OS X/spl e8d0d17. README.markdown, config spl-meta.m4

Merge branch 'master' of github.com:openzfsonosx/spl

OpenZFS on OS X/spl 1c86639include/sys debug.h avl.h

Correct CTASSERT to clang style

OpenZFS on OS X/spl ad28494. README.markdown

Remove install instructions from Readme

As outlined here https://github.com/openzfsonosx/zfs/pull/630#issuecomment-374067475 and 
proposed in https://github.com/openzfsonosx/zfs/pull/688 - removes the installation 
instructions from the Readme
DeltaFile
+4-8README.markdown
+4-81 files

OpenZFS on OS X/spl 0ef05b6. README.markdown

Remove install instructions from Readme

As outlined here https://github.com/openzfsonosx/zfs/pull/630#issuecomment-374067475 and 
proposed in https://github.com/openzfsonosx/zfs/pull/688 - removes the installation 
instructions from the Readme
DeltaFile
+4-8README.markdown
+4-81 files

OpenZFS on OS X/spl 344806amodule/spl spl-kmem.c spl-vm_monitor.c

Use OS callbacks to trigger kmem pressure accounting

OpenZFS on OS X/spl 7ea2f56include/vm vm_monitor.h, module/spl spl-vm_monitor.c spl-osx.c

fix header file typos.

Fix header file typos

OpenZFS on OS X/spl 343cfe2module/spl/KernelExports zfs.exports

Update zfs.exports

Experimental branch looking into whether _fs_buffer_cache_gc_register, and 
_fs_buffer_cache_gc_unregister do actually provide timely pressure indications out of the 
VM allowing us to free memory in concert with the rest of the OS.

OpenZFS on OS X/spl 9fb091econfig spl-meta.m4

fix git hash not showing up in kext_version

git describe only sees annotated tags by default, and as we match the name anyway, we can 
as well drop the requirement of annotation
DeltaFile
+1-1config/spl-meta.m4
+1-11 files

OpenZFS on OS X/spl 85a50c6module/spl spl-kmem.c

We must still allow kmem_free(NULL)

Unsure why yet - should probably address this some time in the future

OpenZFS on OS X/spl 45484eamodule/spl spl-kmem.c

Allow kmem_alloc(len == 0)

Previously we would return NULL for zero length allocation requrests but
this invalidates KM_SLEEP. There is no easy way to check flags used at
allocation when we free, so the simplest solution is to now allow
zero length allocations.

Precedent set by ZOL.

OpenZFS on OS X/spl 16b66b0module/spl spl-kmem.c

Refresh memory_leak check code

It gets tricky when wanting to check size 4096 and above.
DeltaFile
+1-11module/spl/spl-kmem.c
+1-111 files

OpenZFS on OS X/spl e3c366emodule/spl spl-kmem.c

More verbose progress when memory leak is enabled

OpenZFS on OS X/spl 021f2e4module/spl spl-kmem.c

Memory leak accounting

Allow for a slab-size to be tracked, by growing its allocations to fit
"keep_t" struct, which stores filename and line number, plus, list_node.
Store keep in linked_list, and remove on kmem_free. At kextunload,
dump any elements still in the list.
DeltaFile
+10-1module/spl/spl-kmem.c
+10-11 files

OpenZFS on OS X/spl 43e0bcemodule/spl spl-kmem.c

More verbose progress when memory leak is enabled

OpenZFS on OS X/spl 2254686include/sys kmem.h, module/spl spl-kmem.c

Memory leak accounting

Allow for a slab-size to be tracked, by growing its allocations to fit
"keep_t" struct, which stores filename and line number, plus, list_node.
Store keep in linked_list, and remove on kmem_free. At kextunload,
dump any elements still in the list.

OpenZFS on OS X/spl d770fc4include/osx mutex.h, module/spl spl-kmem.c

Refresh memory_leak check code

It gets tricky when wanting to check size 4096 and above.

OpenZFS on OS X/spl c3a671bmodule/spl spl-osx.c

Move all init into delay thread
DeltaFile
+23-19module/spl/spl-osx.c
+23-191 files