freebsd-dev/sys/kern
Konstantin Belousov 52f3524cfd Do not use waitable allocation of pbuf when creating cluster for write.
Previously just ensuring that we do not sleep when clustering for
md(4) vnode was enough.  Now, with the switch of the pbuf allocator to
uma and completely broken per-subsystem pbuf limits, it might cause
unbounded sleep even for non-md(4) vnodes.

Reported and tested by:	pho
Reviewed by:	markj
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D22899
2019-12-23 20:15:19 +00:00
..
bus_if.m
capabilities.conf Add a shm_open2 syscall to support upcoming memfd_create 2019-09-25 17:59:15 +00:00
clock_if.m
cpufreq_if.m
device_if.m
genassym.sh
genoffset.c Merge td_epochnest with td_no_sleeping. 2019-10-29 17:28:25 +00:00
genoffset.sh
imgact_aout.c Use uintptr_t instead of register_t * for the stack base. 2019-12-03 23:17:54 +00:00
imgact_binmisc.c
imgact_elf32.c
imgact_elf64.c
imgact_elf.c Copy out aux args after the argument and environment vectors. 2019-12-09 19:17:28 +00:00
imgact_shell.c
init_main.c schedlock 1/4 2019-12-15 21:11:15 +00:00
init_sysent.c Jail and capability mode for shm_rename; add audit support for shm_rename 2019-11-18 13:31:16 +00:00
kern_acct.c
kern_alq.c
kern_clock.c schedlock 1/4 2019-12-15 21:11:15 +00:00
kern_clocksource.c
kern_condvar.c
kern_conf.c devfs: introduce a per-dev lock to protect ->si_devsw 2019-11-30 16:46:19 +00:00
kern_cons.c
kern_context.c
kern_cpu.c
kern_cpuset.c bitset: rename confusing macro NAND to ANDNOT 2019-12-13 09:32:16 +00:00
kern_ctf.c
kern_descrip.c fd: static-ize and devolatile openfiles 2019-12-11 23:09:12 +00:00
kern_dtrace.c
kern_dump.c [PPC64] Initial kernel minidump implementation 2019-10-14 13:04:04 +00:00
kern_environment.c Follow up r352244: kenv: tighten up assertions 2019-09-12 14:34:46 +00:00
kern_et.c
kern_event.c
kern_exec.c Handle pagein clustering in vm_page_grab_valid() so that it can be used by 2019-12-15 02:00:32 +00:00
kern_exit.c procdesc: allow to collect status through wait(1) if process is traced 2019-11-25 18:33:21 +00:00
kern_fail.c Use callout(9) instead of deprecated timeout(9) for fail points. 2019-12-13 19:26:04 +00:00
kern_ffclock.c
kern_fork.c schedlock 1/4 2019-12-15 21:11:15 +00:00
kern_hhook.c
kern_idle.c
kern_intr.c schedlock 4/4 2019-12-15 21:26:50 +00:00
kern_jail.c
kern_kcov.c Change synchonization rules for vm_page reference counting. 2019-09-09 21:32:42 +00:00
kern_khelp.c
kern_kthread.c schedlock 1/4 2019-12-15 21:11:15 +00:00
kern_ktr.c
kern_ktrace.c
kern_linker.c Rewrite arm kernel stack unwind code to work when unwinding through modules. 2019-12-15 21:16:35 +00:00
kern_lock.c vfs: locking primitives which elide ->v_vnlock and shared locking disablement 2019-12-11 23:11:21 +00:00
kern_lockf.c vfs: introduce v_irflag and make v_type smaller 2019-12-08 21:30:04 +00:00
kern_lockstat.c
kern_loginclass.c
kern_malloc.c Handle large mallocs by going directly to kmem. Taking a detour through 2019-11-29 03:14:10 +00:00
kern_mbuf.c mbuf zones: take out the trash 2019-12-04 18:21:29 +00:00
kern_mib.c Create a new sysctl subtree, machdep.mitigations. Its purpose is to organize 2019-11-15 23:27:17 +00:00
kern_module.c
kern_mtxpool.c Mark some more hot global variables with __read_mostly. 2019-12-04 21:26:03 +00:00
kern_mutex.c mtx: eliminate recursion support from thread lock 2019-12-16 00:04:33 +00:00
kern_ntptime.c
kern_osd.c
kern_physio.c
kern_pmc.c
kern_poll.c schedlock 4/4 2019-12-15 21:26:50 +00:00
kern_priv.c
kern_proc.c Remove page locking from pmap_mincore(). 2019-10-16 22:03:27 +00:00
kern_procctl.c Add procctl(PROC_STACKGAP_CTL) 2019-09-03 18:56:25 +00:00
kern_prot.c Remove the useless return value from proc_set_cred 2019-12-14 00:43:17 +00:00
kern_racct.c
kern_rangelock.c rangelock: add rangelock_cookie_assert 2019-09-15 02:59:53 +00:00
kern_rctl.c
kern_resource.c schedlock 1/4 2019-12-15 21:11:15 +00:00
kern_rmlock.c bitset: rename confusing macro NAND to ANDNOT 2019-12-13 09:32:16 +00:00
kern_rwlock.c
kern_sdt.c
kern_sema.c
kern_sendfile.c Record part of the owner struct thread pointer into busy_lock. 2019-11-24 19:12:23 +00:00
kern_sharedpage.c Fix the last few cases that grab without busy or valid. The grab functions must 2019-12-02 22:38:25 +00:00
kern_shutdown.c vfs: introduce v_irflag and make v_type smaller 2019-12-08 21:30:04 +00:00
kern_sig.c schedlock 1/4 2019-12-15 21:11:15 +00:00
kern_switch.c schedlock 4/4 2019-12-15 21:26:50 +00:00
kern_sx.c sx: check for SX_LOCK_SHARED | SX_LOCK_WRITE_SPINNER when exclusive-locking 2019-12-05 13:43:44 +00:00
kern_synch.c schedlock 4/4 2019-12-15 21:26:50 +00:00
kern_syscalls.c add a sanity check to the system call registration code 2019-12-11 15:52:29 +00:00
kern_sysctl.c sysctl sysctls: wire old buf before output with sysctl lock 2019-11-25 07:38:27 +00:00
kern_tc.c Initialize timehands linkage much earlier. 2019-09-09 12:42:48 +00:00
kern_thr.c schedlock 1/4 2019-12-15 21:11:15 +00:00
kern_thread.c schedlock 4/4 2019-12-15 21:26:50 +00:00
kern_time.c
kern_timeout.c Remove the deprecated timeout(9) interface. 2019-12-13 21:03:12 +00:00
kern_tslog.c
kern_ubsan.c
kern_umtx.c
kern_uuid.c
kern_xxx.c
ksched.c
link_elf_obj.c Apply mapping protections to preloaded kernel modules on amd64. 2019-10-18 13:56:45 +00:00
link_elf.c Rewrite arm kernel stack unwind code to work when unwinding through modules. 2019-12-15 21:16:35 +00:00
linker_if.m
Make.tags.inc
Makefile sysent: Reduce duplication and improve readability. 2019-12-06 23:59:23 +00:00
makesyscalls.sh Restore the ability to set capenabled directly in syscalls.conf. 2019-09-30 20:58:29 +00:00
md4c.c
md5c.c
msi_if.m
p1003_1b.c
pic_if.m
posix4_mib.c
sched_4bsd.c schedlock 4/4 2019-12-15 21:26:50 +00:00
sched_ule.c Fix a bug in r355784. I missed a sched_add() call that needed to reacquire 2019-12-19 18:22:11 +00:00
serdev_if.m
stack_protector.c
subr_acl_nfs4.c
subr_acl_posix1e.c
subr_autoconf.c
subr_blist.c Simplify the processing a leaf mask to find big-enough ranges of set 2019-12-14 19:44:42 +00:00
subr_boot.c
subr_bufring.c
subr_bus_dma.c
subr_bus.c Create new wrapper function: bus_delayed_attach_children() 2019-12-13 19:39:33 +00:00
subr_busdma_bufalloc.c
subr_capability.c
subr_clock.c
subr_compressor.c
subr_counter.c
subr_coverage.c
subr_csan.c Disable KCSAN within a panic. 2019-11-21 13:59:01 +00:00
subr_devmap.c Print upper 32 bits in devmap table entries 2019-12-20 03:40:53 +00:00
subr_devstat.c Make devstat_end_transaction_bio() count BIO_ORDERED. 2019-12-06 18:39:05 +00:00
subr_disk.c
subr_dummy_vdso_tc.c
subr_early.c
subr_epoch.c Restore important comment in RCU/EPOCH support in FreeBSD after r355784. 2019-12-18 09:30:32 +00:00
subr_eventhandler.c
subr_fattime.c
subr_filter.c This commit adds BBR (Bottleneck Bandwidth and RTT) congestion control. This 2019-09-24 18:18:11 +00:00
subr_firmware.c Factor out check for mounted root file system. 2019-11-28 08:47:36 +00:00
subr_gtaskqueue.c schedlock 1/4 2019-12-15 21:11:15 +00:00
subr_hash.c
subr_hints.c
subr_intr.c
subr_kdb.c bitset: rename confusing macro NAND to ANDNOT 2019-12-13 09:32:16 +00:00
subr_kobj.c
subr_lock.c lockprof: use IPI-injecetd fences to fix hangs on stat dump and reset 2019-11-30 17:24:42 +00:00
subr_log.c
subr_mchain.c
subr_module.c
subr_msgbuf.c
subr_param.c riscv: restore default HZ=1000, keep QEMU at HZ=100 2019-09-07 05:13:31 +00:00
subr_pcpu.c schedlock 1/4 2019-12-15 21:11:15 +00:00
subr_pctrie.c
subr_pidctrl.c
subr_power.c
subr_prf.c
subr_prof.c
subr_rangeset.c
subr_rman.c
subr_rtc.c
subr_sbuf.c
subr_scanf.c
subr_sfbuf.c
subr_sglist.c
subr_sleepqueue.c schedlock 4/4 2019-12-15 21:26:50 +00:00
subr_smp.c smp: cast the read in quiesce_all_critical through void * 2019-11-30 19:33:02 +00:00
subr_stack.c Add debugging facility EPOCH_TRACE that checks that epochs entered are 2019-09-25 18:26:31 +00:00
subr_stats.c libstats: Improve ABI assertion. 2019-11-06 19:44:44 +00:00
subr_syscall.c
subr_taskqueue.c schedlock 1/4 2019-12-15 21:11:15 +00:00
subr_terminal.c kernel terminal should initialize fg and bg variables before calling TUNABLE_INT_FETCH 2019-09-26 07:19:26 +00:00
subr_trap.c schedlock 4/4 2019-12-15 21:26:50 +00:00
subr_turnstile.c schedlock 4/4 2019-12-15 21:26:50 +00:00
subr_uio.c
subr_unit.c kern/subr_unit: Rip srandomdev, random(3) out of dead code 2019-12-13 04:48:20 +00:00
subr_vmem.c Use a precise bit count for the slab free items in UMA. This significantly 2019-12-02 22:44:34 +00:00
subr_witness.c devfs: introduce a per-dev lock to protect ->si_devsw 2019-11-30 16:46:19 +00:00
sys_capability.c
sys_generic.c devfs: plug redundant bwillwrite avoidance 2019-10-05 17:44:33 +00:00
sys_getrandom.c
sys_pipe.c Fix handling of PIPE_EOF in the direct write path. 2019-11-11 20:44:30 +00:00
sys_procdesc.c procdesc: allow to collect status through wait(1) if process is traced 2019-11-25 18:33:21 +00:00
sys_process.c Define macro VM_MAP_ENTRY_FOREACH for enumerating the entries in a vm_map. 2019-10-08 07:14:21 +00:00
sys_socket.c
syscalls.c sysent: regenerate after r352747. 2019-09-26 15:41:10 +00:00
syscalls.master Jail and capability mode for shm_rename; add audit support for shm_rename 2019-11-18 13:31:16 +00:00
systrace_args.c sysent: regenerate after r354835 2019-11-18 23:31:12 +00:00
sysv_ipc.c
sysv_msg.c
sysv_sem.c
sysv_shm.c Simplify anonymous memory handling with an OBJ_ANON flag. This eliminates 2019-11-19 23:19:43 +00:00
tty_compat.c
tty_info.c Fix SIGINFO stack collection to ignore threads with swapped-out stacks. 2019-12-19 19:34:25 +00:00
tty_inq.c
tty_outq.c
tty_pts.c tty_pts: don't rely on tty header pollution for sys/mutex.h 2019-11-29 03:56:01 +00:00
tty_tty.c
tty_ttydisc.c
tty.c vfs: introduce v_irflag and make v_type smaller 2019-12-08 21:30:04 +00:00
uipc_accf.c
uipc_debug.c
uipc_domain.c Remove pfctlinput2(). It came from KAME and had never ever been in use. 2019-10-15 15:40:03 +00:00
uipc_ktls.c ktls_session zone: don't need to specify uma trash 2019-11-29 06:25:03 +00:00
uipc_mbuf2.c m_pulldown(): Change an if () panic() into a KASSERT(). 2019-11-06 22:40:19 +00:00
uipc_mbuf.c kTLS: Fix a bug where we would not encrypt anon data inplace. 2019-09-27 20:08:19 +00:00
uipc_mbufhash.c
uipc_mqueue.c vfs: flatten vop vectors 2019-12-16 00:06:22 +00:00
uipc_sem.c
uipc_shm.c Fix a mistake in r355765. We need to activate the page if it is not yet 2019-12-15 06:26:47 +00:00
uipc_sockbuf.c
uipc_socket.c Cleanup unneeded includes that crept in with r353292. 2019-10-09 16:59:42 +00:00
uipc_syscalls.c
uipc_usrreq.c Fix handling of empty SCM_RIGHTS messages. 2019-10-08 23:34:48 +00:00
vfs_acl.c
vfs_aio.c Port the NetBSD KCSAN runtime to FreeBSD. 2019-11-21 11:22:08 +00:00
vfs_bio.c schedlock 4/4 2019-12-15 21:26:50 +00:00
vfs_cache.c vfs: introduce v_irflag and make v_type smaller 2019-12-08 21:30:04 +00:00
vfs_cluster.c Do not use waitable allocation of pbuf when creating cluster for write. 2019-12-23 20:15:19 +00:00
vfs_default.c vfs: flatten vop vectors 2019-12-16 00:06:22 +00:00
vfs_export.c
vfs_extattr.c
vfs_hash.c vfs: implement usecount implying holdcnt 2019-09-03 15:42:11 +00:00
vfs_init.c vfs: add optional root vnode caching 2019-10-06 22:14:32 +00:00
vfs_lookup.c vfs: flatten vop vectors 2019-12-16 00:06:22 +00:00
vfs_mount.c vfs: add optional root vnode caching 2019-10-06 22:14:32 +00:00
vfs_mountroot.c Add variant of root_mount_hold() without allocation. 2019-11-21 21:59:35 +00:00
vfs_subr.c vfs: flatten vop vectors 2019-12-16 00:06:22 +00:00
vfs_syscalls.c Add kern_sync(9), and make kernel code call it instead of going 2019-12-12 18:45:31 +00:00
vfs_vnops.c vfs: introduce v_irflag and make v_type smaller 2019-12-08 21:30:04 +00:00
vnode_if.src vfs: add VOP_NEED_INACTIVE 2019-08-28 20:34:24 +00:00