freebsd-dev/sys/kern
Mark Johnston 36bd49ac4d fd: Avoid truncating output buffers for KERN_PROC_{CWD,FILEDESC}
These sysctls failed to return an error if the caller had provided too
short an output buffer.  Change them to return ENOMEM instead, to ensure
that callers can detect truncation in the face of a concurrently
changing fd table.

PR:		228432
Discussed with:	cem, jhb
MFC after:	1 month
Differential Revision:	https://reviews.freebsd.org/D15607
2021-12-17 13:10:23 -05:00
..
bus_if.m bus: Make BUS_TRANSLATE_RESOURCE behave more like other bus methods 2021-11-15 13:01:30 -05:00
clock_if.m
cpufreq_if.m
device_if.m
firmw.S Use a template assembly file for firmware object files. 2020-12-17 20:31:17 +00:00
genassym.sh genassym.sh: Fix two minor issues found by shellcheck 2021-07-28 13:49:16 -06:00
genoffset.c
genoffset.sh genoffset.sh: Use 10 X's instead of 5 for pick mkdtemp implementations 2021-09-07 10:08:51 -06:00
imgact_aout.c vdso for ia32 on amd64 2021-12-06 20:46:49 +02:00
imgact_binmisc.c imgact_binmisc: limit the extent of match on incoming entries 2020-11-08 04:24:29 +00:00
imgact_elf32.c
imgact_elf64.c
imgact_elf.c imgact_elf: Disable the stack gap for now 2021-12-14 16:19:40 -05:00
imgact_shell.c
init_main.c start_init: use 'p' 2021-11-15 02:33:01 +02:00
init_sysent.c Regen 2021-12-09 02:49:10 +02:00
kern_acct.c vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
kern_alq.c vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
kern_clock.c clock: Group the "clocks" SYSINIT with the function definition 2021-11-15 16:13:24 -05:00
kern_clocksource.c
kern_condvar.c Use sleepq_signal(SLEEPQ_DROP) in cv_signal(). 2021-07-09 20:57:58 -04:00
kern_conf.c Fix handling of D_GIANTOK 2021-06-07 16:45:50 -04:00
kern_cons.c sysbeep: Adjust interface to take a duration as a sbt 2021-11-03 16:03:51 -06:00
kern_context.c
kern_cpu.c Fix "set but not used" in kern_cpu.c 2021-12-05 15:33:04 -07:00
kern_cpuset.c domainset: Define additional global policies 2021-04-14 13:03:33 -04:00
kern_ctf.c vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
kern_descrip.c fd: Avoid truncating output buffers for KERN_PROC_{CWD,FILEDESC} 2021-12-17 13:10:23 -05:00
kern_dtrace.c dtrace: stop using eventhandlers for the part compiled into the kernel 2020-11-23 18:27:21 +00:00
kern_dump.c Allow minidumps to be performed on the live system 2021-11-19 15:05:53 -04:00
kern_environment.c kenv: allow listing of static kernel environments 2021-07-18 23:06:19 -05:00
kern_et.c Remove NO_EVENTTIMERS support 2020-11-19 02:50:48 +00:00
kern_event.c struct kevent_freebsd11 -> struct freebsd11_kevent 2021-11-15 18:34:27 +00:00
kern_exec.c vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
kern_exit.c syscalls: normalize exit 2021-11-29 22:04:43 +00:00
kern_fail.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
kern_ffclock.c Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
kern_fork.c exec: store parent directory and hardlink name of the binary in struct proc 2021-10-28 20:49:56 +03:00
kern_hhook.c Remove duplicated empty lines from kern/*.c 2020-01-30 20:05:05 +00:00
kern_idle.c
kern_intr.c hwpmc: fix performance issues 2021-09-23 07:15:42 +02:00
kern_jail.c vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
kern_kcov.c kcov: Disable address and memory sanitizers in get_kinfo() 2021-09-17 14:19:05 -04:00
kern_khelp.c
kern_kthread.c umtx: Split umtx.h on two counterparts. 2021-07-29 12:41:29 +03:00
kern_ktr.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
kern_ktrace.c vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
kern_linker.c kernel linker: do not read debug symbol tables for non-debug symbols 2021-12-08 23:32:29 +02:00
kern_lock.c lockmgr: fix lock profiling of face adaptive spinning 2021-09-18 10:16:58 +00:00
kern_lockf.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
kern_lockstat.c
kern_loginclass.c Drop "All rights reserved" from all my stuff. This includes 2020-10-28 13:46:11 +00:00
kern_malloc.c malloc: Unmark KASAN redzones if the full allocation size was requested 2021-10-06 16:09:41 -04:00
kern_mbuf.c mbuf: plug set-but-not-used vars 2021-12-09 17:59:11 +00:00
kern_mib.c jail: Consistently handle the pr_allow bitmask 2020-12-26 20:25:02 -08:00
kern_module.c modules: increase MAXMODNAME and provide backward compat 2021-12-09 18:09:53 +00:00
kern_mtxpool.c Remove duplicated empty lines from kern/*.c 2020-01-30 20:05:05 +00:00
kern_mutex.c callout(9): Allow spin locks use with callout_init_mtx(). 2021-09-02 21:16:46 -04:00
kern_ntptime.c Add kern_ntp_adjtime(9). 2020-12-04 18:56:44 +00:00
kern_osd.c osd: Fix racy assertions 2021-09-09 10:11:02 -04:00
kern_physio.c Minor style tidy: if( -> if ( 2021-04-18 11:19:15 -06:00
kern_pmc.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
kern_poll.c Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
kern_priv.c jail: Consistently handle the pr_allow bitmask 2020-12-26 20:25:02 -08:00
kern_proc.c amd64: wrap 64bit sigtramp into vdso 2021-12-06 20:46:49 +02:00
kern_procctl.c procctl: stop using SA_*LOCKED, define local enum 2021-10-20 00:25:19 +03:00
kern_prot.c kern: fail getgroup and setgroup with negative int 2021-06-02 13:22:57 -06:00
kern_racct.c umtx: Split umtx.h on two counterparts. 2021-07-29 12:41:29 +03:00
kern_rangelock.c
kern_rctl.c rctl(4): support throttling resource usage to 0 2021-01-11 15:36:57 -08:00
kern_resource.c Add idle priority scheduling privilege group to MAC/priority 2021-12-10 04:54:48 +02:00
kern_rmlock.c rmslock: Update td_locks during lock and unlock operations 2021-10-27 11:18:13 -04:00
kern_rwlock.c lockprof: pass lock type as an argument instead of reading the spin flag 2021-05-23 17:55:27 +00:00
kern_sdt.c
kern_sema.c
kern_sendfile.c Don't require the socket lock for sorele(). 2021-11-09 10:50:12 -08:00
kern_sharedpage.c Fix assert check for SV_DSO_SIG in exec_sysvec_init_secondary() 2021-12-08 22:54:07 -06:00
kern_shutdown.c boot(9): update to match reality 2021-09-28 11:36:09 -03:00
kern_sig.c vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
kern_switch.c Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
kern_sx.c lockprof: pass lock type as an argument instead of reading the spin flag 2021-05-23 17:55:27 +00:00
kern_synch.c Add sched_getcpu() 2021-11-10 21:18:54 +02:00
kern_syscalls.c Move syscall_thread_{enter,exit}() into the slow path. This is only 2020-11-08 15:54:59 +00:00
kern_sysctl.c sys___sysctl: regularize argument struct 2021-11-22 22:36:54 +00:00
kern_tc.c kern_tc: unify timecounter to bintime delta conversion 2021-11-30 15:23:23 +02:00
kern_thr.c umtx: Split umtx.h on two counterparts. 2021-07-29 12:41:29 +03:00
kern_thread.c i386: fix struct proc layout asserts after 351d5f7fc5 2021-10-28 21:56:21 +03:00
kern_time.c itimer: Serialize access to the p_itimers array 2021-08-31 16:38:05 -04:00
kern_timeout.c callout(9): Allow spin locks use with callout_init_mtx(). 2021-09-02 21:16:46 -04:00
kern_tslog.c TSLOG: Report final execname, not first 2021-10-17 13:36:38 -07:00
kern_ubsan.c ubsan: Fix a typo in an error message 2021-09-25 11:47:24 +02:00
kern_umtx.c freebsd32: add _'s to _umtx_(un)lock 2021-11-22 22:36:55 +00:00
kern_uuid.c validate_uuid: absorb the rest of parse_uuid with a flags arg 2020-04-15 18:39:12 +00:00
kern_xxx.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
ksched.c
link_elf_obj.c Kernel linkers: add emergency sysctl to restore old behavior 2021-12-08 23:32:30 +02:00
link_elf.c Kernel linkers: add emergency sysctl to restore old behavior 2021-12-08 23:32:30 +02:00
linker_if.m kernel linker: do not read debug symbol tables for non-debug symbols 2021-12-08 23:32:29 +02:00
Make.tags.inc Bring the tags and links entries for amd64 up to date. 2021-09-27 20:04:51 -07:00
Makefile syscalls.master: switch to CAPENABLED flags 2021-09-01 21:58:16 +01:00
md4c.c
md5c.c
msi_if.m Remove "All Rights Reserved" from FreeBSD Foundation sys/ copyrights 2021-08-08 10:42:24 -04:00
p1003_1b.c
pic_if.m
posix4_mib.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
sched_4bsd.c sched: split sched_ap_entry() out of sched_throw() 2021-11-05 15:45:51 -05:00
sched_ule.c sched_ule(4): Fix two typo in source code comments 2021-11-19 19:13:28 +01:00
serdev_if.m
stack_protector.c
subr_acl_nfs4.c Drop "All rights reserved" from all my stuff. This includes 2020-10-28 13:46:11 +00:00
subr_acl_posix1e.c vfs: remove the obsolete privused argument from vaccess 2020-08-05 09:27:03 +00:00
subr_asan.c amd64: Deduplicate routines for expanding KASAN/KMSAN shadow maps 2021-11-03 12:36:02 -04:00
subr_atomic64.c
subr_autoconf.c Add run_interrupt_driven_config_hooks to TSLOG 2021-09-05 12:45:29 -07:00
subr_blist.c blist: Correct the node count computed in blist_create() 2021-07-13 17:47:27 -04:00
subr_boot.c
subr_bufring.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_bus_dma.c busdma: Add KMSAN integration 2021-08-10 21:27:54 -04:00
subr_bus.c newbus: add bus_topo_assert 2021-12-09 17:04:57 -07:00
subr_busdma_bufalloc.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_capability.c Remove "All Rights Reserved" from FreeBSD Foundation sys/ copyrights 2021-08-08 10:42:24 -04:00
subr_clock.c Remove duplicated empty lines from kern/*.c 2020-01-30 20:05:05 +00:00
subr_compressor.c clamp kernel dump compression level when using gzip 2020-02-20 23:53:48 +00:00
subr_counter.c Rationalize per-cpu zones. 2020-11-05 15:08:56 +00:00
subr_coverage.c kcov: Integrate with KMSAN 2021-09-14 14:29:27 -04:00
subr_csan.c Simplify kernel sanitizer interceptors 2021-07-29 21:13:32 -04:00
subr_devmap.c riscv: Implement pmap_mapdev_attr 2021-10-17 15:31:35 +01:00
subr_devstat.c Speed up geom_stats_resync in the presence of many devices 2021-03-02 18:33:45 -07:00
subr_disk.c Enable bioq 'car limit' added at r335066 at 128 bios. 2020-10-26 04:04:06 +00:00
subr_dummy_vdso_tc.c
subr_early.c
subr_epoch.c Revert "wpa: Import wpa_supplicant/hostapd commit 14ab4a816" 2021-12-02 14:45:04 -08:00
subr_eventhandler.c
subr_fattime.c Remove duplicated empty lines from kern/*.c 2020-01-30 20:05:05 +00:00
subr_filter.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_firmware.c subr_firmware.c::unloadentry(): remote write-only variable 2021-10-21 21:40:46 +03:00
subr_gtaskqueue.c Import kernel WireGuard support 2020-11-29 19:38:03 +00:00
subr_hash.c
subr_hints.c Optimize res_find(). 2021-08-08 21:54:49 -04:00
subr_intr.c intrng: remove now redundant shadow variable. 2021-07-08 08:46:41 +02:00
subr_kdb.c kdb: Handle process enumeration before procinit() 2021-08-11 14:44:22 -03:00
subr_kobj.c kobj: plug set-but-not-used vars 2021-12-14 14:52:25 +00:00
subr_lock.c lockprof: move panic check after inspecting the state 2021-05-23 17:55:27 +00:00
subr_log.c Document kern.log_wakeups_per_second. 2021-08-04 11:50:34 -07:00
subr_mchain.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_module.c sysctl debug.dump_modinfo should recognize font module 2021-01-08 09:24:49 +02:00
subr_msan.c amd64: Deduplicate routines for expanding KASAN/KMSAN shadow maps 2021-11-03 12:36:02 -04:00
subr_msgbuf.c Make msgbuf_peekbytes() not return leading zeroes. 2021-12-10 23:35:53 -05:00
subr_param.c Move mips and arm to 1000Hz by default. 2021-06-16 20:00:14 -06:00
subr_pcpu.c Add more per-cpu zones. 2020-11-09 00:34:23 +00:00
subr_pctrie.c Use SMR to provide safe unlocked lookup for pctries from SMR zones 2020-07-24 17:32:10 +00:00
subr_physmem.c kern: physmem: improve region coalescing logic 2021-11-03 02:32:46 -05:00
subr_pidctrl.c
subr_power.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_prf.c Unify console output. 2021-09-03 23:13:42 -04:00
subr_prng.c Add prng(9) API 2020-08-13 20:48:14 +00:00
subr_prof.c x86: remove gcov kernel support 2021-04-02 15:41:51 +03:00
subr_rangeset.c Remove "All Rights Reserved" from FreeBSD Foundation sys/ copyrights 2021-08-08 10:42:24 -04:00
subr_rman.c rman: fix overflow in rman_reserve_resource_bound() 2021-09-27 14:38:26 -03:00
subr_rtc.c Address whitespace nits in subr_rtc.c 2020-09-28 17:19:57 +00:00
subr_sbuf.c sbuf(9): Microoptimize sbuf_put_byte() 2021-10-05 14:47:38 -04:00
subr_scanf.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_sfbuf.c
subr_sglist.c sglist: Add sglist_append_single_mbuf(). 2021-05-25 16:59:18 -07:00
subr_sleepqueue.c When queuing ignored signal, only abort target thread' sleep if it is inside sigwait() 2021-10-06 17:05:22 +03:00
subr_smp.c Refactor/optimize cpu_search_*(). 2021-07-28 22:00:29 -04:00
subr_smr.c Use COUNTER_U64_DEFINE_EARLY() in places where it simplifies things. 2020-03-06 19:10:00 +00:00
subr_stack.c kern.tty_info_kstacks: add a compact format 2020-07-06 16:33:28 +00:00
subr_stats.c stats(3): Improve t-digest merging of samples which result in mu adjustment underflow. 2021-04-02 13:17:53 +11:00
subr_syscall.c linux: Add additional ptracestop only if the debugger is Linux 2021-10-30 09:54:17 +01:00
subr_taskqueue.c callout(9): Allow spin locks use with callout_init_mtx(). 2021-09-02 21:16:46 -04:00
subr_terminal.c Remove "All Rights Reserved" from FreeBSD Foundation sys/ copyrights 2021-08-08 10:42:24 -04:00
subr_trap.c kqueue: drain kqueue taskqueue if syscall tickled it 2021-09-07 02:43:34 +03:00
subr_turnstile.c Use atomic loads/stores when updating td->td_state 2021-02-18 14:02:48 +00:00
subr_uio.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_unit.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_vmem.c vmem: disable debug.vmem_check by default 2021-09-02 18:28:45 +00:00
subr_witness.c Revert "wpa: Import wpa_supplicant/hostapd commit 14ab4a816" 2021-12-02 14:45:04 -08:00
sys_capability.c Enter a write sequence when updating rights. 2020-03-19 15:39:45 +00:00
sys_eventfd.c vfs: remove thread argument from VOP_STAT 2021-10-11 13:22:32 +00:00
sys_generic.c selsocket: handle sopoll() errors correctly 2021-10-14 00:43:48 +01:00
sys_getrandom.c
sys_pipe.c fifos: delegate unhandled kqueue filters to underlying filesystem 2021-10-12 02:43:07 -05:00
sys_procdesc.c vfs: remove thread argument from VOP_STAT 2021-10-11 13:22:32 +00:00
sys_process.c Remove PT_GET_SC_ARGS_ALL 2021-09-16 20:11:27 +03:00
sys_socket.c socket: plug set-but-not-used vars 2021-12-14 17:12:53 +00:00
syscalls.c Regen 2021-12-09 02:49:10 +02:00
syscalls.master swapoff: add one more variant of the syscall 2021-12-09 02:48:46 +02:00
systrace_args.c Regen 2021-12-09 02:49:10 +02:00
sysv_ipc.c freebsd32: rename old SysV IPC types 2021-11-17 20:12:23 +00:00
sysv_msg.c freebsd32: rename old SysV IPC types 2021-11-17 20:12:23 +00:00
sysv_sem.c freebsd32: include __ in semctl names 2021-11-17 20:12:24 +00:00
sysv_shm.c freebsd32: rename old SysV IPC types 2021-11-17 20:12:23 +00:00
tty_compat.c
tty_info.c kern.tty_info_kstacks: set compact format as default 2020-07-06 16:34:15 +00:00
tty_inq.c
tty_outq.c Minor style cleanup 2021-04-18 11:14:17 -06:00
tty_pts.c vfs: remove thread argument from VOP_STAT 2021-10-11 13:22:32 +00:00
tty_tty.c
tty_ttydisc.c Implement FLUSHO 2020-08-27 05:11:15 +00:00
tty.c Re-implement virtual console (constty). 2021-09-03 22:18:51 -04:00
uipc_accf.c Consistently use the SOLISTENING() macro 2021-06-14 17:32:27 -04:00
uipc_debug.c
uipc_domain.c net: Enter a net epoch around protocol if_up/down notifications 2021-09-10 09:07:40 -04:00
uipc_ktls.c ktls: Support for TLS 1.3 receive offload. 2021-12-14 11:01:05 -08:00
uipc_mbuf2.c
uipc_mbuf.c mbuf: plug set-but-not-used vars 2021-12-14 14:54:02 +00:00
uipc_mbufhash.c Implement mbuf hashing routines for IP over infiniband, IPoIB. 2020-10-22 09:17:56 +00:00
uipc_mqueue.c Change VOP_READDIR's cookies argument to a **uint64_t 2021-12-15 20:54:57 -07:00
uipc_sem.c freebsd32: semid_t -> int32_t 2021-11-17 20:12:26 +00:00
uipc_shm.c uipc_shm: silent warnings about write-only variables in largepage code 2021-10-21 21:40:46 +03:00
uipc_sockbuf.c socket: Rename sb(un)lock() and interlock with listen(2) 2021-09-07 15:06:48 -04:00
uipc_socket.c Don't require the socket lock for sorele(). 2021-11-09 10:50:12 -08:00
uipc_syscalls.c syscalls: normalize orecvfrom and ogetsockname 2021-11-29 22:04:42 +00:00
uipc_usrreq.c unix: Increase the default datagram recv buffer size 2021-12-17 13:09:49 -05:00
vfs_acl.c vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
vfs_aio.c aio: whack "set but not used" warnings 2021-11-14 16:59:53 +00:00
vfs_bio.c Expand comment explaining reasons for automatic swapoff on shutdown 2021-12-03 10:42:21 +02:00
vfs_cache.c vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
vfs_cluster.c cluster_write(): do not access buffer after it is released 2021-09-02 21:36:33 +03:00
vfs_default.c vfs: fully lockless v_writecount adjustment 2021-11-27 23:07:26 +00:00
vfs_export.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
vfs_extattr.c vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
vfs_hash.c vfs_hash_rehash(): require the vnode to be exclusively locked 2021-08-27 18:39:45 +03:00
vfs_init.c VFS_QUOTACTL(9): allow implementation to indicate busy state changes 2021-05-30 14:53:47 -07:00
vfs_lookup.c vfs: plug a set-but-not-used var in kern_alternate_path 2021-11-26 12:22:09 +00:00
vfs_mount.c vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
vfs_mountroot.c vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
vfs_subr.c Change VOP_READDIR's cookies argument to a **uint64_t 2021-12-15 20:54:57 -07:00
vfs_syscalls.c vfs: remove the unused thread argument from NDINIT* 2021-11-25 22:50:42 +00:00
vfs_vnops.c vm: Add a mode to vm_object_page_remove() which skips invalid pages 2021-11-15 13:01:30 -05:00
vnode_if.src Change VOP_READDIR's cookies argument to a **uint64_t 2021-12-15 20:54:57 -07:00