freebsd-nq/sys/sys
Alfred Perlstein 3945a96431 Allow KASSERT to log instead of panic.
This is to allow debug images to be used without taking down the
system when non-fatal asserts are hit.

The following sysctls are added:

debug.kassert.warn_only: 1 = log, 0 = panic

debug.kassert.do_ktr: set to a ktr mask for logging via KTR

debug.kassert.do_log: 1 = log, 0 = quiet

debug.kassert.warnings: stats, number of kasserts hit

debug.kassert.log_panic_at:
  number of kasserts before we actually panic, 0 = never

debug.kassert.log_pps_limit: pps limit for log messages

debug.kassert.log_mute_at: stop warning after N kasserts, 0 = never stop

debug.kassert.kassert: set this sysctl to trigger a kassert

Discussed with: scottl, gnn, marcel
Sponsored by: iXsystems
2012-12-07 08:25:08 +00:00
..
_bus_dma.h
_callout.h Implement the delayed task execution extension to the taskqueue 2011-04-26 11:39:56 +00:00
_cpuset.h Post r222812 KTR_CPUMASK started being initialized only as a tunable 2012-08-30 21:22:47 +00:00
_ffcounter.h Core structure and functions to support a feed-forward clock within the kernel. 2011-11-19 14:10:16 +00:00
_iovec.h
_kstack_cache.h Move kstack_cache_entry into the private header, and make the 2011-12-16 10:56:16 +00:00
_lock.h
_lockmgr.h In current code, threads performing an interruptible sleep (on both 2009-12-12 21:31:07 +00:00
_mutex.h Tweak comments. 2012-11-11 23:25:47 +00:00
_null.h Define NULL to nullptr in C++11 mode (not strictly required, but it makes 2011-12-27 21:36:31 +00:00
_pthreadtypes.h Fix the visibility of several prototypes. Also move pthread_kill() and 2009-03-14 20:10:14 +00:00
_rmlock.h Remove namespace pollution in _rmlock.h by defining rm_queue structure 2012-09-18 00:43:15 +00:00
_rwlock.h Tweak comments. 2012-11-11 23:25:47 +00:00
_semaphore.h Use umtx to implement process sharable semaphore, to make this work, 2010-01-05 02:37:59 +00:00
_sigset.h
_sockaddr_storage.h Move the duplicate definition of struct sockaddr_storage to its own 2009-09-08 10:39:38 +00:00
_stack.h
_stdint.h Fix by hand files that aren't added automatically by svn. 2011-05-09 22:13:07 +00:00
_sx.h
_task.h Use a safer mechanism for determining if a task is currently running, 2010-10-13 22:59:04 +00:00
_termios.h Decompose <sys/termios.h>. 2009-11-28 23:50:48 +00:00
_timespec.h Rename st_*timespec fields to st_*tim for POSIX 2008 compliance. 2010-03-28 13:13:22 +00:00
_timeval.h
_types.h Make the wchar_t type machine dependent. 2012-06-24 04:15:58 +00:00
_umtx.h In revision 231989, we pass a 16-bit clock ID into kernel, however 2012-02-25 02:12:17 +00:00
aac_ioctl.h Fix typos - remove duplicate "the". 2011-02-21 09:01:34 +00:00
acct.h
acl.h Make it possible to use permission sets (full_set, modify_set, read_set 2011-04-09 07:42:25 +00:00
agpio.h A rewrite of the i810 bits of the agp(4) driver. New driver supports 2012-05-22 10:59:26 +00:00
aio.h Namespace: aio_waitcomplete() is a BSD extension. 2009-03-14 19:17:00 +00:00
alq.h - Rework the underlying ALQ storage to be a circular buffer, which amongst other 2010-04-26 13:48:22 +00:00
apm.h Add a partition type for nandfs to the apm, bsd, gpt and vtoc8 schemes. 2012-05-25 20:33:34 +00:00
assym.h
ata.h Add and utilize defines for the ATA device register. 2012-07-12 10:09:34 +00:00
bio.h Correct bioq_disksort so that bioq_insert_tail() offers barrier semantic. 2010-09-02 19:40:28 +00:00
bitstring.h
blist.h
buf_ring.h The drbr(9) API appeared to be so unclear, that most drivers in 2012-09-28 18:28:27 +00:00
buf.h Fix two problems that caused instant panic when the device mounted 2012-10-28 18:53:28 +00:00
bufobj.h Remove the support for using non-mpsafe filesystem modules. 2012-10-22 17:50:54 +00:00
bus_dma.h - Change contigmalloc() to use the vm_paddr_t type instead of an unsigned 2012-03-01 19:58:34 +00:00
bus.h Revert r239178 and implement two new functions, namely 2012-08-15 15:42:57 +00:00
callout.h When callout_reset_on() cannot immediately migrate a callout since it 2012-05-03 10:38:02 +00:00
capability.h - Enforce CAP_MKFIFO on mkfifoat(2), not on mknodat(2). Without this change 2012-10-01 05:43:24 +00:00
cdefs.h Add an unified macro to deny ability from the compiler to reorder 2012-10-09 14:32:30 +00:00
cdio.h
cdrio.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00
cfictl.h Add support for frobbing Intel StrataFlash Protection Registers: 2009-02-05 18:12:07 +00:00
chio.h
clock.h The NetBSD Foundation has granted permission to remove clause 3 and 4 from 2010-03-03 17:55:51 +00:00
condvar.h
conf.h Provide a device name in the sysctl tree for programs to query the 2012-11-01 17:01:05 +00:00
cons.h move GETS_*ECHO* defintions from libkern.h to cons.h 2011-12-17 15:39:14 +00:00
consio.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00
copyright.h Happy 2012 to FreeBSD users in Samoa. 2011-12-31 04:38:04 +00:00
cpu.h Provide a new CPU device driver ivar to report the nominal speed of the 2009-05-31 08:59:15 +00:00
cpuctl.h - Add support to atomically set/clear individual bits of a MSR register 2009-06-30 12:35:47 +00:00
cpuset.h Tune cpuset macros to optimize cases when CPU_SETSIZE fits into single 2012-03-12 07:02:16 +00:00
ctype.h
dataacq.h
devicestat.h
digiio.h
dir.h
dirent.h
disk.h Plumb device physical path reporting from CAM devices, through GEOM and 2011-06-14 17:10:32 +00:00
disklabel.h Add a partition type for nandfs to the apm, bsd, gpt and vtoc8 schemes. 2012-05-25 20:33:34 +00:00
diskmbr.h VMware environments are not unusual now. Add VMware partitions recognition 2012-04-18 11:59:03 +00:00
diskpc98.h Fix clang warnings. 2011-06-18 13:56:33 +00:00
dkstat.h
domain.h Introduce and use a sysinit-based initialization scheme for virtual 2009-07-23 20:46:49 +00:00
dtrace_bsd.h Initial commit of an I/O provider for DTrace on FreeBSD. 2012-07-11 16:27:02 +00:00
dvdio.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00
elf32.h
elf64.h style(9) 2009-01-01 02:08:56 +00:00
elf_common.h Add definition for the -z nodefaultlib flag. 2012-05-06 18:34:31 +00:00
elf_generic.h style(9) 2009-01-01 02:08:56 +00:00
elf.h
endian.h Fix some way-past-brucification complaints from FlexeLint. 2010-05-20 06:16:13 +00:00
errno.h errno.h: fix couple of whitespace nits 2011-04-04 17:39:30 +00:00
eui64.h
event.h - Add knlist_init_rw_reader() function to kqueue(9). 2012-03-26 09:34:17 +00:00
eventhandler.h Base the mbuf related limits on the available physical memory or 2012-11-27 21:19:58 +00:00
eventvar.h
exec.h Add macro DECLARE_MODULE_TIED to denote a module as requiring the 2010-10-12 09:18:17 +00:00
extattr.h
fail.h Initialize fp_location for explicitly managed fail points, and push 2010-12-21 18:23:03 +00:00
fbio.h Yet another attempt to make palette loading more safer: 2010-02-23 21:51:14 +00:00
fcntl.h Add F_DUP2FD_CLOEXEC. Apparently Solaris 11 already did this. 2012-07-27 10:41:10 +00:00
fdcio.h
file.h Unbreak handling of descriptors opened with O_EXEC by fexecve(2). 2012-07-08 00:51:38 +00:00
filedesc.h Explicitly assert that the filedesc lock is held when the fget_locked() 2012-06-14 16:24:03 +00:00
filio.h Add FIONSPACE from NetBSD. FIONSPACE is provided so that programs may 2009-06-30 13:38:49 +00:00
firmware.h
fnv_hash.h
gmon.h
gpio.h Initial GPIO bus support. Includes: 2010-09-28 03:24:53 +00:00
gpt.h Add a partition type for nandfs to the apm, bsd, gpt and vtoc8 schemes. 2012-05-25 20:33:34 +00:00
hash.h - Move jenkins.h to jenkins_hash.c 2012-09-04 12:07:33 +00:00
hhook.h Use the full and proper company name for Swinburne University of Technology 2011-04-12 08:13:18 +00:00
iconv.h Fix improper handling of variadic args with ICDEBUG 2012-05-21 02:30:22 +00:00
imgact_aout.h Turns out the emulators still need/want a_magic, so put it back here. 2012-06-28 07:37:46 +00:00
imgact_elf.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00
imgact.h Create shared (readonly) page. Each ABI may specify the use of page by 2011-01-08 16:13:44 +00:00
inflate.h
interrupt.h - Remove the eintrcnt/eintrnames usage and introduce the concept of 2011-07-18 15:19:40 +00:00
ioccom.h IOCPARM_MAX defines maximum size of a structure that can be passed 2010-04-01 16:21:35 +00:00
ioctl_compat.h Perform cleanups to the TTY headers: 2009-09-06 09:39:40 +00:00
ioctl.h Clean up <sys/ioctl.h>. 2009-05-09 19:01:24 +00:00
ipc.h Fix build if COMPAT_43 is defined without one of 2012-10-22 02:59:55 +00:00
ipmi.h
jail.h Add procfs to jail-mountable filesystems. 2012-02-29 00:30:18 +00:00
joystick.h
kbio.h Restore binary compatibility for GIO_KEYMAP and PIO_KEYMAP. 2011-07-17 08:19:19 +00:00
kdb.h - Extend the KDB interface to add a per-debugger callback to print a 2012-04-12 17:43:59 +00:00
kenv.h
kernel.h Remove splimp() comment from sysinit table and attribute SI_SUB_PROTO_BEGIN 2012-10-19 10:04:43 +00:00
kerneldump.h - Add minidump support for FreeBSD/mips 2010-11-07 03:09:02 +00:00
khelp.h Use the full and proper company name for Swinburne University of Technology 2011-04-12 08:13:18 +00:00
kobj.h As it turns out, r186347 actually is insufficient to avoid the use of the 2011-11-15 20:11:03 +00:00
ksem.h
ksyms.h Add the ksyms(4) pseudo driver. The ksyms driver allows a process to 2009-05-26 21:39:09 +00:00
kthread.h Remove spurious '/*-' marks and fix some other style problems. 2010-07-22 05:42:29 +00:00
ktr.h - Implement run-time expansion of the KTR buffer via sysctl. 2012-11-15 00:51:57 +00:00
ktrace.h Include the associated wait channel message for context switch ktrace 2012-04-20 15:32:36 +00:00
libkern.h Remove second consts in r233288 in order to appease C++ compilers. 2012-03-26 18:22:04 +00:00
limits.h POSIX.1-2008 moved some constants from the XSI option to the Base. 2011-03-04 19:28:27 +00:00
link_aout.h
link_elf.h In rtld, read the initial stack access mode from AT_STACKPROT as set 2011-01-08 17:11:49 +00:00
linker_set.h After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
linker.h Provide convenience function for obtaining MODINFO_ADDR and MODINFO_SIZE 2011-02-09 19:08:21 +00:00
lock_profile.h In non-debugging mode make this define (void)0 instead of nothing. This 2009-06-21 09:01:12 +00:00
lock.h Remove unused/obsolete macros. 2012-11-13 18:24:47 +00:00
lockf.h The advisory lock may be activated or activated and removed during the 2009-05-24 12:39:38 +00:00
lockmgr.h Constify arguments for locking KPIs where possible. 2011-11-16 21:51:17 +00:00
lockstat.h Revert the approach for skipping lockstat_probe_func call when doing 2011-12-12 23:29:32 +00:00
loginclass.h Add racct. It's an API to keep per-process, per-jail, per-loginclass 2011-03-29 17:47:25 +00:00
mac.h
malloc.h - Change contigmalloc() to use the vm_paddr_t type instead of an unsigned 2012-03-01 19:58:34 +00:00
mbpool.h
mbuf.h Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
mchain.h Add unicode support to msdosfs and smbfs; original pathes from imura, 2011-11-18 03:05:20 +00:00
md4.h
md5.h
mdioctl.h Make it possible to resize md(4) devices. 2012-07-07 20:32:21 +00:00
memrange.h Add reader/writer lock around mem_range_attr_get() and mem_range_attr_set(). 2011-01-17 22:58:28 +00:00
mman.h Export some more useful info about shared memory objects to userland 2012-04-01 18:22:48 +00:00
module_khelp.h Use the full and proper company name for Swinburne University of Technology 2011-04-12 08:13:18 +00:00
module.h Add macro DECLARE_MODULE_TIED to denote a module as requiring the 2010-10-12 09:18:17 +00:00
mount.h Complete MPSAFE VFS interface and remove MNTK_MPSAFE flag. 2012-11-09 18:02:25 +00:00
mouse.h
mpt_ioctl.h
mqueue.h
msg.h Add ucred pointer to the SysV-related memory structures. This is required 2011-04-06 16:59:54 +00:00
msgbuf.h - Clean up timestamps in msgbuf code. The timestamps should now be 2012-03-19 00:36:32 +00:00
mtio.h
mutex.h Tweak comment to make more clear why it will fail. 2012-11-02 16:31:01 +00:00
namei.h - Add NOCAPCHECK flag to namei that allows lookup to work even if the process 2012-11-27 10:32:35 +00:00
nlist_aout.h Make the char *n_name member of struct nlist 'const'. 2010-06-10 14:19:51 +00:00
osd.h - Introduce the Hhook (Helper Hook) KPI. The KPI is closely modelled on pfil(9), 2010-12-21 13:45:29 +00:00
param.h Document sin6_scope_id handling change and bump FreeBSD_version to 1000025. 2012-11-23 12:12:06 +00:00
pciio.h - Add a new ioctl to /dev/pci to fetch details on an individual BAR of a 2009-02-02 22:04:40 +00:00
pcpu.h Remove namespace pollution in _rmlock.h by defining rm_queue structure 2012-09-18 00:43:15 +00:00
pioctl.h Fix typo. 2011-01-23 12:44:17 +00:00
pipe.h I am comparing current pipe code with the one in 8.3-STABLE r236165, 2012-07-31 05:48:35 +00:00
pmc.h Update hwpmc to support the Xeon class of Sandybridge processors. 2012-10-19 17:01:27 +00:00
pmckern.h Remove unncessary atomic operation when reading process flags in 2012-08-22 20:22:55 +00:00
pmclog.h Add software PMC support. 2012-03-28 20:58:30 +00:00
poll.h
posix4.h In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
power.h
priority.h Use a name instead of a magic number for kern_yield(9) when the priority 2011-05-13 05:27:58 +00:00
priv.h Add infrastructure to allow all frames/packets received on an interface 2011-07-03 12:22:02 +00:00
proc.h In pget(9), if PGET_NOTWEXIT flag is not specified, also search the 2012-11-16 08:25:06 +00:00
procdesc.h Add experimental support for process descriptors 2011-08-18 22:51:30 +00:00
procfs.h Add the ability for GDB to printout the thread name along with other 2010-11-22 14:42:13 +00:00
protosw.h - according to POSIX, make socket(2) return EAFNOSUPPORT rather than 2012-12-07 02:22:48 +00:00
ptio.h
ptrace.h The PTRACESTOP() macro is used only once. Inline the only use and remove 2012-02-11 14:49:25 +00:00
queue.h Rename __member2struct() to __containerof(). 2012-09-13 08:13:01 +00:00
racct.h Add CPU percentage limit enforcement to RCTL. The resouce name is "pcpu". 2012-10-26 16:01:08 +00:00
random.h
rangelock.h Add a rangelock implementation, intended to be used to range-locking 2012-05-30 16:06:38 +00:00
rctl.h Add CPU percentage limit enforcement to RCTL. The resouce name is "pcpu". 2012-10-26 16:01:08 +00:00
reboot.h
refcount.h Add assertion for refcount overflow. 2012-07-27 09:16:48 +00:00
regression.h
resource.h Add the wait6(2) system call. It takes POSIX waitid()-like process 2012-11-13 12:52:31 +00:00
resourcevar.h Change kern.proc.rlimit sysctl to: 2012-01-22 20:25:00 +00:00
rman.h Typo. 2012-02-27 18:28:31 +00:00
rmlock.h Constify arguments for locking KPIs where possible. 2011-11-16 21:51:17 +00:00
rtprio.h
runq.h
rwlock.h Merge r242395,242483 from mutex implementation: 2012-11-03 15:57:37 +00:00
sbuf.h Change the length quantities of sbufs to be ssize_t rather than int. 2011-05-16 16:18:40 +00:00
sched.h Compiler have a precise knowledge of the content of sched_pin() and 2012-10-29 01:35:17 +00:00
sdt.h Implement the DTrace sched provider. This implementation aims to be 2012-05-15 01:30:25 +00:00
select.h
selinfo.h Fix a deficiency in the selinfo interface: 2011-08-25 15:51:54 +00:00
sem.h Remove semaphore map entry count "semmap" field and its tuning 2011-07-14 14:18:14 +00:00
sema.h
serial.h
sf_buf.h
sglist.h Change the 'resid' parameter to sglist_consume_uio() from an int to a 2009-08-20 19:23:58 +00:00
shm.h Add ucred pointer to the SysV-related memory structures. This is required 2011-04-06 16:59:54 +00:00
sigio.h
signal.h Register signal 33 explicitly as reserved by real-time library, and 2012-03-26 19:12:09 +00:00
signalvar.h In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
sleepqueue.h Tighten up some of the comments describing turnstiles and sleepqueues. 2010-12-13 23:53:55 +00:00
slicer.h Add a new geom class which allows to divide NAND Flash chip 2012-05-22 08:33:14 +00:00
smp.h - Implement run-time expansion of the KTR buffer via sysctl. 2012-11-15 00:51:57 +00:00
snoop.h
sockbuf.h Increase the defaults for the maximum socket buffer limit, 2011-08-25 09:20:13 +00:00
socket.h Add SO_PROTOCOL/SO_PROTOTYPE socket SOL_SOCKET-level option to get the 2012-02-26 13:55:43 +00:00
socketvar.h Disconnect non-MPSAFE SMBFS from the build in preparation for dropping 2012-10-18 12:04:56 +00:00
sockio.h Provide ABI compatibility shim to enable configuring of addresses 2011-12-21 12:39:08 +00:00
sockopt.h
sockstate.h
soundcard.h add SNDCTL_DSP_HALT specified by OSS 2011-06-29 08:32:37 +00:00
stack.h Constify stack argument for functions that don't modify it. 2011-11-16 19:06:55 +00:00
stat.h Put struct ostat and struct nstat under #ifdef _KERNEL. The 2012-07-22 20:08:38 +00:00
statvfs.h
stddef.h Guard ptrdiff_t. 2011-05-05 02:35:25 +00:00
stdint.h Make the wchar_t type machine dependent. 2012-06-24 04:15:58 +00:00
sun_disklabel.h
sx.h Introduce the same mutex-wise fix in r227758 for sx locks. 2011-11-21 12:59:52 +00:00
syscall.h Regen 2012-11-13 12:53:41 +00:00
syscall.mk Regen 2012-11-13 12:53:41 +00:00
syscallsubr.h Move the definition of the idtype_t from sys/types.h to sys/wait.h. 2012-11-16 06:29:52 +00:00
sysctl.h Add a sysctl to set and retrieve binary osreldate of another process. 2012-03-23 20:05:41 +00:00
sysent.h Remove no longer needed forward declaration for struct sf_buf. 2012-06-23 10:14:51 +00:00
syslimits.h Rework the credential code to support larger values of NGROUPS and 2009-06-19 17:10:35 +00:00
syslog.h Namespace: vsyslog() is a BSD extension. 2009-03-14 19:07:25 +00:00
sysproto.h Regen 2012-11-13 12:53:41 +00:00
systm.h Allow KASSERT to log instead of panic. 2012-12-07 08:25:08 +00:00
taskqueue.h Add a TASK_INITIALIZER() macro that can be used to statically 2011-12-19 18:55:13 +00:00
termios.h Decompose <sys/termios.h>. 2009-11-28 23:50:48 +00:00
thr.h Make this file more C++ friendly. 2010-04-20 17:57:43 +00:00
tiio.h
time.h While there, remove an unneeded blank line. 2012-09-01 08:45:58 +00:00
timeb.h Add warnings to <regexp.h> and <sys/timeb.h>. 2010-03-09 21:01:12 +00:00
timeet.h Refactor timer management code with priority to one-shot operation mode. 2010-09-13 07:25:35 +00:00
timeffc.h Introduce the sysclock_getsnapshot() and sysclock_snap2bintime() KPIs. The 2011-12-24 01:32:01 +00:00
timepps.h - Add Pulse-Per-Second timestamping using raw ffcounter and corresponding 2011-11-21 13:34:29 +00:00
timers.h
times.h
timespec.h Rename st_*timespec fields to st_*tim for POSIX 2008 compliance. 2010-03-28 13:13:22 +00:00
timetc.h Prefer uint64_t over u_int64_t. 2011-07-14 21:02:15 +00:00
timex.h
tree.h In sys/tree.h: 2009-03-01 04:57:23 +00:00
tty.h Add tty_set_winsize(). 2012-11-03 22:21:37 +00:00
ttycom.h Fix whitespace inconsistencies in TTY code. 2012-02-06 18:15:46 +00:00
ttydefaults.h Fix whitespace inconsistencies in TTY code. 2012-02-06 18:15:46 +00:00
ttydevsw.h Reintroduce the cioctl() hook in the TTY layer for digi(4). 2011-07-02 13:54:20 +00:00
ttydisc.h Add ttydisc_rint_simple(). 2009-08-23 08:04:40 +00:00
ttyhook.h Change ttyhook_register() second argument from thread to process pointer. 2008-12-13 21:17:46 +00:00
ttyqueue.h Properly set the low watermarks when reducing the baud rate. 2009-10-19 07:17:37 +00:00
turnstile.h Tighten up some of the comments describing turnstiles and sleepqueues. 2010-12-13 23:53:55 +00:00
types.h Move the definition of the idtype_t from sys/types.h to sys/wait.h. 2012-11-16 06:29:52 +00:00
ucontext.h Add a convenience macro for the returns_twice attribute, and apply it to 2012-04-29 11:04:31 +00:00
ucred.h Add two new system calls, setloginclass(2) and getloginclass(2). This makes 2011-03-05 12:40:35 +00:00
uio.h Constify args to copyiniov and copyinuio. 2011-11-14 07:12:10 +00:00
umtx.h umtx operation UMTX_OP_MUTEX_WAKE has a side-effect that it accesses 2012-04-05 02:24:08 +00:00
un.h
unistd.h Implement syscall clock_getcpuclockid2, so we can get a clock id 2012-08-17 02:26:31 +00:00
unpcb.h
user.h Missing one in r239505. 2012-08-21 17:06:36 +00:00
utsname.h
uuid.h
vdso.h Stop updating the struct vdso_timehands from even handler executed in 2012-06-23 09:33:06 +00:00
vmmeter.h Replace the single, global page queues lock with per-queue locks on the 2012-11-13 02:50:39 +00:00
vnode.h - Add NOCAPCHECK flag to namei that allows lookup to work even if the process 2012-11-27 10:32:35 +00:00
vtoc.h Add a partition type for nandfs to the apm, bsd, gpt and vtoc8 schemes. 2012-05-25 20:33:34 +00:00
wait.h Move the definition of the idtype_t from sys/types.h to sys/wait.h. 2012-11-16 06:29:52 +00:00
watchdog.h - Add the possibility to reuse the already last used timeout when patting 2011-04-27 16:43:03 +00:00