freebsd-dev/sys/kern
Julian Elischer dc9c271aa1 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
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
kern_module.c put a \n on an error message printf 1998-11-06 02:18:57 +00:00
kern_ntptime.c
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
kern_resource.c
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
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
kern_xxx.c
ksched.c
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
md5c.c
p1003_1b.c
posix4_mib.c
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
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
subr_rlist.c
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
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
tty_conf.c
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
tty_snoop.c
tty_subr.c
tty_tb.c
tty_tty.c
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
uipc_mbuf.c
uipc_proto.c
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
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
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
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