freebsd-skq/sys/kern
julian a7b385889e Changes to the LINUX_THREADS support to only allocate extra memory for
shared signal handling when there is shared signal handling being
used.

This removes the main objection to making the shared signal handling
a standard ability in rfork() and friends and 'unconditionalising'
this code. (i.e. the allocation of an extra 328 bytes per process).

Signal handling information remains in the U area until such a time as
it's reference count would be incremented to > 1. At that point a new
struct is malloc'd and maintained in KVM so that it can be shared between
the processes (threads) using it.

A function to check the reference count and move the struct back to the U
area when it drops back to 1 is also supplied. Signal information is
therefore now swapable for all processes that are not sharing that
information with other processes. THis should addres the concerns raised
by Garrett and others.

Submitted by:	"Richard Seaman, Jr." <dick@tar.com>
1999-01-07 21:23:50 +00:00
..
bus_if.m My changes to the new device interface: 1998-11-14 21:58:51 +00:00
device_if.m My changes to the new device interface: 1998-11-14 21:58:51 +00:00
imgact_aout.c Fixed bitrot in a comment. Fixed some style bugs. 1999-01-01 14:41:51 +00:00
imgact_elf.c Reviewed by: Luoqi Chen, Jordan Hubbard 1998-12-19 02:55:34 +00:00
imgact_gzip.c *gulp*. Jordan specifically OK'ed this.. 1998-10-16 03:55:01 +00:00
imgact_shell.c *gulp*. Jordan specifically OK'ed this.. 1998-10-16 03:55:01 +00:00
inflate.c kzipboot uses kern/inflate.c outside the kernel by providing its own 1998-11-10 09:08:49 +00:00
init_main.c Changes to the LINUX_THREADS support to only allocate extra memory for 1999-01-07 21:23:50 +00:00
init_sysent.c regenerate (+kldsym) 1998-11-11 12:57:05 +00:00
kern_acct.c Moved limit frobbing (and the resulting limcopy()) that occurs for 1998-06-05 21:44:20 +00:00
kern_clock.c Make the previous behaviour the default, add a sysctl which you 1998-11-29 20:31:02 +00:00
kern_conf.c My changes to the new device interface: 1998-11-14 21:58:51 +00:00
kern_descrip.c I got another batch of suggestions for cosmetic changes from bde. 1998-11-11 10:56:07 +00:00
kern_environment.c Don't try to initialise the environment out of a sysinit, it's handled 1998-10-09 21:21:34 +00:00
kern_exec.c Add (but don't activate) code for a special VM option to make 1999-01-06 23:05:42 +00:00
kern_exit.c Changes to the LINUX_THREADS support to only allocate extra memory for 1999-01-07 21:23:50 +00:00
kern_fork.c Changes to the LINUX_THREADS support to only allocate extra memory for 1999-01-07 21:23:50 +00:00
kern_intr.c add #include <sys/kernel.h> where it's needed by MALLOC_DEFINE() 1998-11-10 09:16:29 +00:00
kern_ktrace.c In ktrwrite, use uio_procp = curproc vs 0 1998-12-10 01:47:41 +00:00
kern_linker.c Don't allow more than one module with the same name to be loaded. 1999-01-05 20:24:28 +00:00
kern_lkm.c Register and unregister vnodeops the new way rather than leaking on 1998-11-10 09:12:40 +00:00
kern_lock.c Staticize. 1998-11-26 18:50:24 +00:00
kern_lockf.c add #include <sys/kernel.h> where it's needed by MALLOC_DEFINE() 1998-11-10 09:16:29 +00:00
kern_malloc.c Have MALLOC_DECLARE() initialize malloc types explicitly, and have them 1998-11-10 08:46:24 +00:00
kern_mib.c - hw.machine_arch returns cpu architecture type. 1998-08-31 08:41:58 +00:00
kern_module.c put a \n on an error message printf 1998-11-06 02:18:57 +00:00
kern_ntptime.c Introduce std_pps_ioctl() to automagically DTRT. 1998-06-13 09:30:26 +00:00
kern_physio.c Nitpicking and dusting performed on a train. Removes trivial warnings 1998-10-25 17:44:59 +00:00
kern_proc.c I got another batch of suggestions for cosmetic changes from bde. 1998-11-11 10:56:07 +00:00
kern_prot.c getpgid() and getsid() were doing a comparision rather than an assignment, 1998-12-13 07:07:51 +00:00
kern_random.c Converted add_interrupt_randomness() to take a `void *' arg. Rewrote 1998-06-21 11:33:32 +00:00
kern_resource.c Fixed double counting of runtime after a process exits. The last 1998-07-27 19:16:21 +00:00
kern_shutdown.c Improved DDB_UNATTENDED behaviour. From the submitter: 1998-12-28 23:03:00 +00:00
kern_sig.c Reviewed by: Luoqi Chen, Jordan Hubbard 1998-12-19 02:55:34 +00:00
kern_subr.c remove nonsense code. 1998-08-04 09:21:04 +00:00
kern_synch.c Add asleep() and await() support. Currently highly experimental. A 1998-12-21 07:41:51 +00:00
kern_sysctl.c Fix some 64bit truncation problems which crept into SYSCTL_LONG() with the 1998-12-27 18:03:29 +00:00
kern_tc.c Make the previous behaviour the default, add a sysctl which you 1998-11-29 20:31:02 +00:00
kern_threads.c Wrap two macros into do { ... } while (0), and fix the way they're used 1998-12-15 17:38:33 +00:00
kern_time.c Nitpicking and dusting performed on a train. Removes trivial warnings 1998-10-25 17:44:59 +00:00
kern_timeout.c Fixed stale references to hzto() in comments. 1998-05-17 20:08:05 +00:00
kern_xxx.c Change various syscalls to use size_t arguments instead of u_int. 1998-08-24 08:39:39 +00:00
ksched.c 1. Add new defs for mins and maxs for the POSIX flavor priorities. They 1998-05-19 21:11:53 +00:00
link_aout.c The handle for the kernel is common. With this fix, ELF kernels can load 1998-11-04 15:20:58 +00:00
link_elf_obj.c When loading something that has undefined symbols, it would be helpful to 1998-12-31 09:17:20 +00:00
link_elf.c When loading something that has undefined symbols, it would be helpful to 1998-12-31 09:17:20 +00:00
Make.tags.inc
makedevops.pl "Here is the most recent version of makedevops.pl. I've made the parsing 1998-11-08 18:33:11 +00:00
makedevops.sh Use the interface name as well as the method name when creating the method 1998-10-15 09:50:45 +00:00
Makefile
makesyscalls.sh Add trailing newline to sys/syscall.mk so that diff doesn't choke on it. 1998-06-28 10:01:52 +00:00
md5c.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
p1003_1b.c Set PAGE_SIZE for _SC_PAGESIZE sysconf(). 1998-06-01 21:54:43 +00:00
posix4_mib.c Finish _POSIX_PRIORITY_SCHEDULING. Needs P1003_1B and 1998-03-28 11:51:01 +00:00
subr_autoconf.c Examine all occurrences of sprintf(), strcat(), and str[n]cpy() 1998-12-04 22:54:57 +00:00
subr_bus.c When no driver was found for a device, the message 'not probed' appeared 1998-12-12 11:30:04 +00:00
subr_clist.c Cast pointers to uintptr_t/intptr_t instead of to u_long/long, 1998-07-15 02:32:35 +00:00
subr_devstat.c Fix some 64bit truncation problems which crept into SYSCTL_LONG() with the 1998-12-27 18:03:29 +00:00
subr_disklabel.c Fix -Wuninitialized warning regarding zero-length var-args ctl element. 1998-12-14 05:37:37 +00:00
subr_diskmbr.c Examine all occurrences of sprintf(), strcat(), and str[n]cpy() 1998-12-04 22:54:57 +00:00
subr_diskslice.c Rename one of the two devfs_link's to devfs_makelink. 1998-12-10 19:57:01 +00:00
subr_dkbad.c
subr_log.c The "easy" fixes for compiling the kernel -Wunused: remove unreferenced static 1998-12-07 21:58:50 +00:00
subr_module.c Align to sizeof(long) rather than sizeof(int32_t). It needs to be 1998-10-14 05:07:23 +00:00
subr_param.c Fixed problems with kernel config file overrides of sysv semaphore 1998-12-14 08:34:55 +00:00
subr_prf.c Add snprintf(3) and vsnprintf(3) capability to the kernel. 1998-12-03 04:45:57 +00:00
subr_prof.c Fixed bogotification of pseudocode for syscall args by rev.1.53 of 1998-09-05 14:30:11 +00:00
subr_rlist.c Move assignment of cur_rlp to after the acquisition of the list lock. 1998-08-05 14:06:04 +00:00
subr_rman.c Ifdefed conditionally used simplock variables. 1999-01-02 11:34:57 +00:00
subr_smp.c The "easy" fixes for compiling the kernel -Wunused: remove unreferenced static 1998-12-07 21:58:50 +00:00
subr_trap.c Add (but don't activate) code for a special VM option to make 1999-01-06 23:05:42 +00:00
subr_xxx.c * Fix a couple of places in the device pager where an address was 1998-11-08 12:39:07 +00:00
sys_generic.c poll(2) sets POLLNVAL for descriptors passed in that are less than 1998-12-10 01:53:26 +00:00
sys_pipe.c The "easy" fixes for compiling the kernel -Wunused: remove unreferenced static 1998-12-07 21:58:50 +00:00
sys_process.c Tweak ptrace(PT_READ_U) so that the last alpha register can be read. 1998-12-26 17:14:37 +00:00
sys_socket.c Installed the second patch attached to kern/7899 with some changes suggested 1998-11-11 10:04:13 +00:00
syscalls.c regenerate (+kldsym) 1998-11-11 12:57:05 +00:00
syscalls.master A kldsym(2) syscall prototype for extracting information from the in-kernel 1998-11-11 12:45:14 +00:00
sysv_ipc.c
sysv_msg.c Eradicate the variable "time" from the kernel, using various measures. 1998-03-30 09:56:58 +00:00
sysv_sem.c Fixed problems with kernel config file overrides of sysv semaphore 1998-12-14 08:34:55 +00:00
sysv_shm.c Fixed two potentially serious classes of bugs: 1998-10-13 08:24:45 +00:00
tty_compat.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
tty_conf.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
tty_cons.c Remove a hard-coded table of kernel console I/O functions exported 1999-01-07 14:14:24 +00:00
tty_pty.c Added D_TTY to the cdevswitch flags for all tty drivers. This is required 1998-08-23 08:26:42 +00:00
tty_snoop.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
tty_subr.c Cast pointers to uintptr_t/intptr_t instead of to u_long/long, 1998-07-15 02:32:35 +00:00
tty_tb.c
tty_tty.c Added D_TTY to the cdevswitch flags for all tty drivers. This is required 1998-08-23 08:26:42 +00:00
tty.c Backed out the FIOASYNC fix in rev.1.108. fcntl(fd, F_SETFL, flags) 1998-12-08 10:22:07 +00:00
uipc_domain.c Convert socket structures to be type-stable and add a version number. 1998-05-15 20:11:40 +00:00
uipc_mbuf.c Only call m_reclaim() if M_WAIT since calling it from an interrupt can 1998-07-27 03:59:48 +00:00
uipc_proto.c Yow! Completely change the way socket options are handled, eliminating 1998-08-23 03:07:17 +00:00
uipc_sockbuf.c The "easy" fixes for compiling the kernel -Wunused: remove unreferenced static 1998-12-07 21:58:50 +00:00
uipc_socket2.c The "easy" fixes for compiling the kernel -Wunused: remove unreferenced static 1998-12-07 21:58:50 +00:00
uipc_socket.c The "easy" fixes for compiling the kernel -Wunused: remove unreferenced static 1998-12-07 21:58:50 +00:00
uipc_syscalls.c The "easy" fixes for compiling the kernel -Wunused: remove unreferenced static 1998-12-07 21:58:50 +00:00
uipc_usrreq.c Nitpicking and dusting performed on a train. Removes trivial warnings 1998-10-25 17:44:59 +00:00
vfs_aio.c Wrap two macros into do { ... } while (0), and fix the way they're used 1998-12-15 17:38:33 +00:00
vfs_bio.c Adjust some comments to prevent future confusion on the implementation. 1998-12-22 18:57:30 +00:00
vfs_cache.c Don't use CTL_VFS at the wrong level. This caused loops in the sysctl 1998-09-09 07:41:41 +00:00
vfs_cluster.c Even the most recently allocated buffer may not have its b_blkno 1998-12-05 06:12:14 +00:00
vfs_conf.c Remove the SLICE code. 1998-09-14 19:56:42 +00:00
vfs_default.c Make the vnode opv vector construction fully dynamic. Previously we 1998-11-10 09:04:09 +00:00
vfs_export.c Remove the 'waslocked' parameter to vfs_object_create(). 1999-01-05 18:50:03 +00:00
vfs_extattr.c Remove the 'waslocked' parameter to vfs_object_create(). 1999-01-05 18:50:03 +00:00
vfs_init.c The "easy" fixes for compiling the kernel -Wunused: remove unreferenced static 1998-12-07 21:58:50 +00:00
vfs_lookup.c Remove the 'waslocked' parameter to vfs_object_create(). 1999-01-05 18:50:03 +00:00
vfs_mount.c Remove the SLICE code. 1998-09-14 19:56:42 +00:00
vfs_subr.c Remove the 'waslocked' parameter to vfs_object_create(). 1999-01-05 18:50:03 +00:00
vfs_syscalls.c Remove the 'waslocked' parameter to vfs_object_create(). 1999-01-05 18:50:03 +00:00
vfs_vnops.c Remove the 'waslocked' parameter to vfs_object_create(). 1999-01-05 18:50:03 +00:00
vnode_if.pl Make the vnode opv vector construction fully dynamic. Previously we 1998-11-10 09:04:09 +00:00
vnode_if.sh Make the vnode opv vector construction fully dynamic. Previously we 1998-11-10 09:04:09 +00:00
vnode_if.src Add a new vnode op, VOP_FREEBLKS(), which filesystems can use to inform 1998-09-05 14:13:12 +00:00