freebsd-skq/sys/sys
Scott Long 316ec49abd Some kernel threads try to do significant work, and the default KSTACK_PAGES
doesn't give them enough stack to do much before blowing away the pcb.
This adds MI and MD code to allow the allocation of an alternate kstack
who's size can be speficied when calling kthread_create.  Passing the
value 0 prevents the alternate kstack from being created.  Note that the
ia64 MD code is missing for now, and PowerPC was only partially written
due to the pmap.c being incomplete there.
Though this patch does not modify anything to make use of the alternate
kstack, acpi and usb are good candidates.

Reviewed by:	jake, peter, jhb
2002-10-02 07:44:29 +00:00
..
_label.h Define 'struct label' in _label.h rather than mac.h, which will permit 2002-08-13 15:54:28 +00:00
_lock.h Renamed the idempotency identifier to match the file name. 2002-06-07 14:37:09 +00:00
_mutex.h Add mtx_ prefixes to the fields used for mutex profiling, and fix a bug 2002-07-03 01:50:27 +00:00
_posix.h Claim to be 1003.1-2001. We're not quite, yet, but that's a more useful 2002-09-21 02:19:03 +00:00
_semaphore.h Add the rest of the kernel support for the sem_ API in kern/uipc_sem.c. 2002-09-19 00:43:32 +00:00
_sigset.h Quick fix for the type of the bitmap in sigset_t. It was an array of 2002-06-20 09:04:33 +00:00
_timespec.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
_types.h Move definition of nl_item type to <sys/_types.h>, so that it can be 2002-09-18 05:51:23 +00:00
aac_ioctl.h Bring the aac driver *much* closer to style(9). 2001-09-05 20:43:02 +00:00
acct.h Remove __P 2002-03-19 20:18:42 +00:00
acl.h More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
agpio.h Fix an off-by-bit error in the AGP_MODE_[GS]ET_RATE() macros. 2001-11-21 08:40:23 +00:00
aio.h o Add missing synchronization (splnet()/splx()) in aio_free_entry(). 2002-01-06 21:03:39 +00:00
alq.h - Export the alq daemon thread pointer. 2002-09-26 07:38:56 +00:00
assym.h
ata.h Cleanup, use the same method to denote parts for endianess. 2002-04-05 18:03:33 +00:00
bio.h Make FreeBSD "struct disklabel" agnostic, step 312 of 723: 2002-09-20 14:14:37 +00:00
bitstring.h
blist.h Move the hideously misnamed type "u_daddr_t" to <sys/blist.h> where it 2002-05-18 09:38:20 +00:00
buf.h Change hw.physmem and hw.usermem to unsigned long like they used to be 2002-08-30 04:04:37 +00:00
bus_dma.h - Moved the bus_dma declarations from bus_{at386,pc98}.h into bus_dma.h. 2001-10-06 16:27:21 +00:00
bus_private.h Style(9) 2001-09-05 01:06:28 +00:00
bus.h Add additional information returned to userland by the device querying 2002-09-14 19:15:12 +00:00
callout.h Remove __P 2002-03-19 20:18:42 +00:00
ccdvar.h Fix some signed/unsigned integer confusion, and add bounds checking of 2001-09-10 11:28:07 +00:00
cdefs.h Alfred got me thinking. Provide stubs for lint, and let the compilers 2002-09-23 06:37:48 +00:00
cdio.h Add endianess kludge code, so that bitfields work on the sparc64 as well. 2002-04-05 13:10:26 +00:00
cdrio.h Add DVD+RW support to the ATA driver and burncd. This also closes 2002-08-08 07:59:24 +00:00
chio.h
clist.h
clock.h Add a generic implementation of inittodr() and resettodr(), as well as 2002-04-04 23:39:10 +00:00
condvar.h Part 1 of KSE-III 2002-06-29 17:26:22 +00:00
conf.h Add a D_NOGIANT flag which can be set in a struct cdevsw to indicate 2002-09-27 19:47:59 +00:00
cons.h Remove __P 2002-03-19 20:18:42 +00:00
consio.h 1. Allow information about current history size be retrieved using ioctl(2); 2002-08-19 16:32:09 +00:00
copyright.h Welcome 2002. Happy new year. 2002-01-01 09:20:52 +00:00
ctype.h
dataacq.h
device_port.h
devicestat.h Un-inline the non-trivial "trivial" bio* functions. 2002-09-14 19:34:11 +00:00
digiio.h Add DIGIIO_SETALTPIN and DIGIIO_GETALTPIN ioctl values 2001-06-20 14:51:58 +00:00
dir.h
dirent.h Fix namespace issues by using the relatively new visibility 2002-09-10 18:12:16 +00:00
disk.h (This commit touches about 15 disk device drivers in a very consistent 2002-09-20 19:36:05 +00:00
disklabel.h Divorce bsd disklabels, IBM PC MBR's and whatever the things are 2002-10-01 19:29:19 +00:00
diskmbr.h Divorce bsd disklabels, IBM PC MBR's and whatever the things are 2002-10-01 19:29:19 +00:00
diskpc98.h Divorce bsd disklabels, IBM PC MBR's and whatever the things are 2002-10-01 19:29:19 +00:00
diskslice.h Fixed some style bugs in the removal of __P(()). The main ones were 2002-03-23 08:46:52 +00:00
dkstat.h
dmap.h
domain.h Remove __P 2002-03-19 20:18:42 +00:00
dvdio.h Update header. 2002-03-04 21:08:35 +00:00
elf32.h Move the definition of ElfN_Hashelt to common headers. The only platform 2002-05-30 08:32:18 +00:00
elf64.h Move the definition of ElfN_Hashelt to common headers. The only platform 2002-05-30 08:32:18 +00:00
elf_common.h - Call a SHT_REL 'relocation section' rather than 2002-08-11 21:07:50 +00:00
elf_generic.h Infrastructure tweaks to allow having both an Elf32 and an Elf64 executable 2002-07-20 02:56:12 +00:00
endian.h Make this header self-reliant with regard to the types it uses. 2002-04-29 16:58:54 +00:00
errno.h s/EDOFUS/EDOOFUS/ 2002-08-21 17:11:00 +00:00
event.h Updated a comment. Namspace pollution in <sys/select.h> is now moot since 2002-06-29 19:14:52 +00:00
eventhandler.h Convert macros with variadic arguments from GNU format to ISO 9X. 2002-07-15 17:15:41 +00:00
eventvar.h
exec.h Remove __P 2002-03-19 20:18:42 +00:00
extattr.h Introduce new extattr_check_cred() function which implements the canonical 2002-09-05 20:38:57 +00:00
fbio.h Turn on TGA support. 2002-04-13 22:34:16 +00:00
fcntl.h o Add typedefs for mode_t, off_t, pid_t rather than including 2002-09-17 22:22:50 +00:00
fdcio.h Long promised major enhancement set for the floppy disk driver: 2001-12-15 19:09:04 +00:00
file.h Include <sys/types.h> directly rather than depending on <sys/fcntl.h> 2002-09-17 05:14:09 +00:00
filedesc.h ISOfy and minor warnsfix. 2002-07-15 13:08:44 +00:00
filio.h
fnv_hash.h Use the same API as the example code. 2001-03-20 02:10:18 +00:00
gmon.h Reserved one of the spare fields in struct gmon to record the history 2002-02-21 05:52:49 +00:00
gpt.h Don't use an incomplete array type to mark the start of the padding 2002-05-31 01:07:13 +00:00
iconv.h Convert GNU variadic macros to the ISO 9X variety. 2002-07-15 13:34:50 +00:00
imgact_aout.h Forward declare struct vnode so that <sys/vnode.h> or some other header 2002-09-05 07:54:03 +00:00
imgact_elf.h Infrastructure tweaks to allow having both an Elf32 and an Elf64 executable 2002-07-20 02:56:12 +00:00
imgact.h Use the fields in the sysentvec and in the vm map header in place of the 2002-09-21 22:07:17 +00:00
inflate.h Forgot one more instance of my old email address. 2002-03-26 08:29:40 +00:00
interrupt.h Remove __P 2002-03-19 20:18:42 +00:00
ioccom.h I've fixed the X11 port, so I can remove the (ioctl) hack. 2002-04-10 04:53:37 +00:00
ioctl_bt848.h
ioctl_compat.h
ioctl_meteor.h
ioctl.h Hide GCCisms in the non-GCC case. 2002-02-26 07:44:03 +00:00
ipc.h Remove __P 2002-03-19 20:18:42 +00:00
jail.h Include <sys/queue.h> so that this file provides its own namespace 2002-05-06 03:13:08 +00:00
joystick.h Fix typo in the BSD copyright: s/withough/without/ 2002-06-02 20:05:59 +00:00
jumbo.h Remove the advertising clause from the Duke BSD copyright on the 2002-07-06 02:44:15 +00:00
kbio.h Implement keyboard paste 2001-03-11 22:51:05 +00:00
kenv.h Rework the kernel environment subsystem. We now convert the static 2002-04-17 13:06:36 +00:00
kernel.h Add a new SYSINIT subsystem for KTRACE. 2002-06-07 05:11:39 +00:00
kerneldump.h Restore the ability to take crashdumps on alpha. This was cut and pasted 2002-05-11 21:53:46 +00:00
kobj.h Convert hit and miss counters to unsigned values. Surely negative values 2002-06-10 22:40:26 +00:00
kse.h Fix spelling error; say what "UTS" stands for. 2002-10-01 17:50:44 +00:00
kthread.h Some kernel threads try to do significant work, and the default KSTACK_PAGES 2002-10-02 07:44:29 +00:00
ktr.h - Add support for logging KTR via ALQ. This is optional and enabled by the 2002-09-22 07:13:45 +00:00
ktrace.h Overhaul the ktrace subsystem a bit. For the most part, the actual vnode 2002-06-07 05:32:59 +00:00
libkern.h Hook up libkern/strlcpy.c and libkern/strlcat.c after repocopy. 2002-09-02 20:16:22 +00:00
linedisc.h Add a D_NOGIANT flag which can be set in a struct cdevsw to indicate 2002-09-27 19:47:59 +00:00
link_aout.h Repo copy link.h to sys/link_elf.h and sys/link_aout.h since they are 2002-08-22 20:35:23 +00:00
link_elf.h Repo copy link.h to sys/link_elf.h and sys/link_aout.h since they are 2002-08-22 20:35:23 +00:00
linker_set.h Add a __section(x) macro as well. Use this in linker_set.h. ie: 2002-09-23 06:11:29 +00:00
linker.h Add a workaround for what seems to be confusion between binutils and the 2002-09-27 23:12:53 +00:00
lock.h Forward declare struct thread so that this header doesn't depend on its 2002-08-28 05:14:55 +00:00
lockf.h Remove __P 2002-03-19 20:18:42 +00:00
lockmgr.h - Remove unused LK_NOOBJ. 2002-09-25 02:49:50 +00:00
mac_policy.h Add a new MAC entry point, mac_thread_userret(td), which permits policy 2002-10-02 02:42:38 +00:00
mac.h Add a new MAC entry point, mac_thread_userret(td), which permits policy 2002-10-02 02:42:38 +00:00
malloc.h Garbage-collected splmem. 2002-09-15 17:10:18 +00:00
mbuf.h more style fixes: 'unsigned' should be 'u_int' in this file. 2002-09-18 22:29:33 +00:00
mchain.h Move m_fixhdr() from "mbchain" to "mbuf" where it belongs. 2002-09-18 13:41:37 +00:00
md4.h Import kernel part of SMB/CIFS requester. 2001-04-10 07:59:06 +00:00
md5.h Oops, this should have been part of my previous commit. 2002-06-24 14:18:39 +00:00
mdioctl.h Actually make use of the md_version field of 'struct mdio'. In order 2001-12-20 06:38:21 +00:00
memrange.h Some BIOSs are using MTRR values that are only documented under NDA 2002-09-15 15:07:55 +00:00
mman.h mlockall() and munlockall() are unimplemented; remove their prototypes. 2002-09-13 18:29:15 +00:00
module.h - Lock down the ``module'' structure by adding an SX lock that is used by 2002-03-18 07:45:30 +00:00
mount.h Keep a copy of the credential used to mount filesystems around so 2002-08-19 06:52:21 +00:00
mouse.h Minor changes: 2002-03-24 03:07:07 +00:00
msg.h fix comment typo: naem -> name 2002-08-16 07:42:18 +00:00
msgbuf.h Fixed some style bugs in the removal of __P(()). The main ones were 2002-03-23 08:46:52 +00:00
mtio.h Make the mtio data structures explicitly sized. 2002-05-14 07:30:13 +00:00
mutex.h Disable optimization of spinlocks on UP kernels w/o debugging for now 2002-07-27 16:54:23 +00:00
namei.h More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
nlist_aout.h Pad after "char *n_name;" in the !_AOUT_INCLUDE_ case so that struct nlist 2002-09-05 08:03:02 +00:00
param.h Increment version number for the addition of getopt_long(3) to libc. 2002-10-01 00:44:11 +00:00
pciio.h style(9) the structure definitions. 2001-09-05 01:22:14 +00:00
pcpu.h Whitespace and style fixes. 2002-08-20 19:50:30 +00:00
pioctl.h Kernel modifications necessary to allow to follow fork()ed children. 2002-08-04 01:07:02 +00:00
pipe.h Move to a nested include of _label.h instead of mac.h in sys/sys/*.h 2002-08-14 01:04:43 +00:00
poll.h Reconnect a comment with its code. 2002-07-10 04:47:25 +00:00
posix4.h Add the rest of the kernel support for the sem_ API in kern/uipc_sem.c. 2002-09-19 00:43:32 +00:00
power.h Very minor warns fix. Add a declaration for an unused parameter. 2002-07-15 14:06:03 +00:00
priority.h style(9) the structure definitions. 2001-09-05 01:22:14 +00:00
proc.h Some kernel threads try to do significant work, and the default KSTACK_PAGES 2002-10-02 07:44:29 +00:00
procfs.h Use explicit sizes for the prpsinfo command length string so that 2001-08-16 08:35:51 +00:00
protosw.h make the strings for tcptimers, tanames and prurequests const to silence 2002-08-16 09:07:59 +00:00
ptio.h
ptrace.h Implement PT_IO (read / write arbitrary amounts of data or text). 2002-03-16 02:40:02 +00:00
queue.h Add a macro for SLIST traversal 'SLIST_FOREACH_PREVPTR', 2002-08-05 05:18:43 +00:00
random.h Provide infrastructure for harvesting SWI entropy. 2002-03-03 20:09:42 +00:00
reboot.h Add new boot flag to i386 boot: -p. 2001-12-10 20:02:22 +00:00
regression.h Remove __P 2002-03-19 20:18:42 +00:00
resource.h Part I of RLIMIT_VMEM implementation. Implement core functionality for 2002-06-26 00:29:28 +00:00
resourcevar.h Change p_cpulimit to be in seconds instead of microseconds. Since 2002-09-30 21:08:38 +00:00
rman.h Add a rman_reserve_resource_bound() function that takes an additional 2001-12-21 21:40:55 +00:00
rtprio.h Remove __P 2002-03-19 20:18:42 +00:00
runq.h Make the run queue parameters machine dependent. Optimize 64 bit 2002-05-25 01:12:23 +00:00
sbuf.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
select.h o Move select() helper macros from <sys/types.h> to <sys/select.h>. 2002-09-23 17:45:51 +00:00
selinfo.h Remove __P 2002-03-19 20:18:42 +00:00
sem.h Remove __P 2002-03-19 20:18:42 +00:00
sema.h Added used includes. <sys/_lock.h> is a prerequisite for <sys/_mutex.h>, 2001-10-10 10:26:07 +00:00
semaphore.h Remove __P. 2002-03-19 22:20:14 +00:00
shm.h Remove __P 2002-03-19 20:18:42 +00:00
signal.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
signalvar.h Part 1 of KSE-III 2002-06-29 17:26:22 +00:00
smp.h Forward declare struct thread. 2002-05-20 16:11:38 +00:00
snoop.h - Spell "these" properly. 2002-09-10 03:58:44 +00:00
socket.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
socketvar.h In continuation of early fileop credential changes, modify fo_ioctl() to 2002-08-17 02:36:16 +00:00
sockio.h Style consistency fix for MAC ioctls added previously. 2002-02-10 16:55:35 +00:00
soundcard.h Remove __P 2002-03-19 20:18:42 +00:00
stat.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
statvfs.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
stdint.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
sun_disklabel.h Add a hack (ported from NetBSD) to support Sun disk labels. 2002-05-09 20:22:59 +00:00
sx.h - Make this compile if INVARIANTS support is not enabled. 2002-04-02 18:18:56 +00:00
syscall.h Regen. 2002-10-01 02:37:35 +00:00
syscall.mk Regen. 2002-10-01 02:37:35 +00:00
syscallsubr.h Split up ptrace() into a wrapper that does the copying to and from 2002-09-05 01:02:50 +00:00
sysctl.h Introduce a new sysctl flag, CTLFLAG_SKIP, which will cause 2002-08-10 19:56:45 +00:00
sysent.h Added fields for VM_MIN_ADDRESS, PS_STRINGS and stack protections to 2002-09-01 21:41:24 +00:00
syslimits.h Claim to be 1003.1-2001. We're not quite, yet, but that's a more useful 2002-09-21 02:19:03 +00:00
syslog.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
sysproto.h Regen. 2002-10-01 02:37:35 +00:00
systm.h Make UAREA_PAGES and KSTACK_PAGES visible to userland via sysctl, like 2002-09-07 22:11:45 +00:00
taskqueue.h Revert the reindentation of struct task's definition from rev 1.4. 2001-10-28 16:19:34 +00:00
termios.h Remove __P 2002-03-19 20:18:42 +00:00
tiio.h At long last, commit the zero copy sockets code. 2002-06-26 03:37:47 +00:00
time.h Fix visibility issues; use <sys/timespec.h>. 2002-06-15 23:37:33 +00:00
timeb.h Remove __P 2002-03-19 20:18:42 +00:00
timepps.h Brucifixion ? Yes, out that door, row on the left, one patch each. 2002-04-30 19:48:45 +00:00
timers.h
times.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
timespec.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
timetc.h Give up on calling tc_ticktock() from a timeout, we have timeout 2002-09-04 10:15:19 +00:00
timex.h Removed unused forward struct declaration. 2002-04-28 09:51:45 +00:00
tree.h Import OpenBSD's <sys/tree.h>, needed by OpenSSH. 2002-06-23 14:38:51 +00:00
tty.h Fixed some style bugs in recent commits. 2002-05-28 15:24:13 +00:00
ttychars.h
ttycom.h
ttydefaults.h
ttydev.h Add B921600 (yes, some serial ports can do this, but generic sio not support 2001-06-20 03:26:41 +00:00
types.h o Update a visibility conditional. 2002-10-02 04:13:32 +00:00
ucontext.h Add kernel support needed for the KSE-aware libpthread: 2002-09-16 19:28:01 +00:00
ucred.h Allow one to grab the definition of struct ucred by defining _WANT_UCRED 2002-08-28 20:39:48 +00:00
uio.h At long last, commit the zero copy sockets code. 2002-06-26 03:37:47 +00:00
un.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
unistd.h Whitespace fixes (mainly for many more messes in the definitions of the 2002-09-21 22:57:52 +00:00
unpcb.h More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
user.h Adjust KINFO_PROC_SIZE due to segsz_t being changed from a 32-bit to 2002-05-03 01:41:37 +00:00
utsname.h Round 1 of Brucification inspired changes. 2001-03-24 08:37:56 +00:00
uuid.h Add uuidgen(2) and uuidgen(1). 2002-05-28 06:16:08 +00:00
vmmeter.h Make a structure definition slightly more style(9) compliant (makes 2002-06-01 03:55:16 +00:00
vnioctl.h
vnode.h Don't use unnamed anonymous structs: give it a name. 2002-09-28 17:33:31 +00:00
wait.h Remove the deprecated 4.2/4.3BSD wait union. 2002-06-05 02:21:01 +00:00
xrpuio.h