mirror_zfs/include/os/linux/spl/sys
khoang98 3a8e23d0f8 Skip dbuf_evict_one() from dbuf_evict_notify() for reclaim thread
Avoid calling dbuf_evict_one() from memory reclaim contexts (e.g. Linux
kswapd, FreeBSD pagedaemon). This prevents deadlock caused by reclaim
threads waiting for the dbuf hash lock in the call sequence:
dbuf_evict_one -> dbuf_destroy -> arc_buf_destroy

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Alexander Motin <alexander.motin@TrueNAS.com>
Signed-off-by: Kaitlin Hoang <kthoang@amazon.com>
Closes #17561
2025-10-16 17:03:47 -07:00
..
ia32
acl.h
atomic.h
byteorder.h
callb.h
callo.h
cmn_err.h spl: cmn_err_once() should be usable in brace-less if else statements 2023-03-15 11:13:25 -07:00
condvar.h config: remove HAVE_WAIT_QUEUE_* 2024-11-15 10:15:00 -08:00
cred.h config: remove HAVE_SUPER_USER_NS 2024-11-15 10:14:59 -08:00
ctype.h
debug.h Add custom debug printing for your asserts 2024-11-18 11:44:05 -08:00
disp.h
dkio.h
errno.h
fcntl.h
file.h config: remove HAVE_INODE_LOCK_SHARED 2024-11-15 10:14:59 -08:00
inttypes.h
isa_defs.h Add loongarch64 support 2023-04-25 16:05:45 -07:00
kmem_cache.h Linux 6.12: avoid kmem_cache_create redefinition 2024-11-15 10:15:01 -08:00
kmem.h Use __attribute__((malloc)) on memory allocation functions 2023-05-26 15:47:52 -07:00
kstat.h
list.h
misc.h Skip dbuf_evict_one() from dbuf_evict_notify() for reclaim thread 2025-10-16 17:03:47 -07:00
mod_os.h
mutex.h Add mutex_enter_interruptible() for interruptible sleeping IOCTLs 2023-11-06 16:47:41 -08:00
param.h
proc.h
processor.h
procfs_list.h
random.h
rwlock.h
shrinker.h linux 6.7 compat: rework shrinker setup for heap allocations 2023-12-21 11:03:08 -08:00
sid.h
signal.h config: remove HAVE_SCHED_SIGNAL_HEADER 2024-11-15 10:15:00 -08:00
simd.h
stat.h
string.h config: remove HAVE_KERNEL_STRSCPY 2024-11-15 10:14:58 -08:00
sunddi.h
sysmacros.h Replace P2ALIGN with P2ALIGN_TYPED and delete P2ALIGN. 2024-05-13 10:27:38 -05:00
systeminfo.h
taskq.h Fix compile-time warnings caused by duplicate struct typedefs (#16880) 2024-12-18 15:54:54 -08:00
thread.h config: remove HAVE_SET_SPECIAL_STATE 2024-11-15 10:15:00 -08:00
time.h config: remove HAVE_KTIME_GET_RAW_TS64 2024-11-15 10:15:00 -08:00
timer.h config: remove HAVE_KERNEL_TIMER_SETUP 2024-11-15 10:14:59 -08:00
trace_spl.h
trace_taskq.h
trace.h
tsd.h
types32.h
types.h Linux 6.10 compat: Fix tracepoints definitions 2024-11-13 10:17:07 -08:00
uio.h linux/uio: remove "skip" offset for UIO_ITER 2025-05-27 14:41:45 -07:00
user.h
vfs.h
vmem.h Use __attribute__((malloc)) on memory allocation functions 2023-05-26 15:47:52 -07:00
vmsystm.h
vnode.h
wait.h config: remove HAVE_WAIT_QUEUE_* 2024-11-15 10:15:00 -08:00
wmsum.h config: remove HAVE_PERCPU_COUNTER_ADD_BATCH 2024-11-15 10:15:00 -08:00
zmod.h
zone.h