1
0
mirror of https://git.FreeBSD.org/src.git synced 2025-01-11 14:10:34 +00:00
freebsd/sys/kern
Marcel Moolenaar cd28f17da2 Change the thread ID (thr_id_t) used for 1:1 threading from being a
pointer to the corresponding struct thread to the thread ID (lwpid_t)
assigned to that thread. The primary reason for this change is that
libthr now internally uses the same ID as the debugger and the kernel
when referencing to a kernel thread. This allows us to implement the
support for debugging without additional translations and/or mappings.

To preserve the ABI, the 1:1 threading syscalls, including the umtx
locking API have not been changed to work on a lwpid_t. Instead the
1:1 threading syscalls operate on long and the umtx locking API has
not been changed except for the contested bit. Previously this was
the least significant bit. Now it's the most significant bit. Since
the contested bit should not be tested by userland, this change is
not expected to be visible. Just to be sure, UMTX_CONTESTED has been
removed from <sys/umtx.h>.

Reviewed by: mtm@
ABI preservation tested on: i386, ia64
2004-07-02 00:40:07 +00:00
..
bus_if.m Introduce BUS_CONFIG_INTR(). The method allows devices to tell parents 2003-09-10 21:37:10 +00:00
clock_if.m
device_if.m
genassym.sh
imgact_aout.c Change the types of vn_rdwr_inchunks()'s len and aresid arguments to 2004-06-05 02:18:28 +00:00
imgact_elf32.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
imgact_elf64.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
imgact_elf.c Allocate TIDs in thread_init() and deallocate them in thread_fini(). 2004-06-26 18:58:22 +00:00
imgact_gzip.c Locking for the per-process resource limits structure. 2004-02-04 21:52:57 +00:00
imgact_shell.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
inflate.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
init_main.c Nice, is a property of a process as a whole.. 2004-06-16 00:26:31 +00:00
init_sysent.c Regen. 2004-07-02 00:38:56 +00:00
kern_acct.c Second half of the dev_t cleanup. 2004-06-17 17:16:53 +00:00
kern_acl.c Update my personal copyrights and NETA copyrights in the kernel 2004-02-22 00:33:12 +00:00
kern_alq.c Allow MAC policies to block/revoke kern_alq write access to a file. 2003-10-25 16:10:41 +00:00
kern_clock.c Nice, is a property of a process as a whole.. 2004-06-16 00:26:31 +00:00
kern_condvar.c Remove the signal_caught argument from sleepq_timedwait() as it was 2004-06-28 18:57:06 +00:00
kern_conf.c Fix a few spelling mistakes in comments and clean them up a bit. 2004-06-22 20:22:24 +00:00
kern_context.c Change the clear_ret argument of get_mcontext() to be a flags argument. 2003-11-09 20:31:04 +00:00
kern_descrip.c Explicitly initialize f_data and f_vnode to NULL. 2004-06-19 11:40:08 +00:00
kern_environment.c If the buffer supplied to kenv(KENV_DUMP, ...) isn't big enough, 2004-04-28 01:27:33 +00:00
kern_event.c Add GIANT_REQUIRED to kqueue_close(), since kqueue currently requires 2004-06-01 18:05:41 +00:00
kern_exec.c Move TDF_SA from td_flags to td_pflags (and rename it accordingly) 2004-06-02 07:52:36 +00:00
kern_exit.c (1) Removed the bogus condition "p->p_pid != 1" on calling sched_exit() 2004-06-21 14:49:50 +00:00
kern_fork.c Allocate TIDs in thread_init() and deallocate them in thread_fini(). 2004-06-26 18:58:22 +00:00
kern_idle.c Adjust the priority of the idle threads to be the lowest possible 2004-06-28 16:19:50 +00:00
kern_intr.c Detect interrupt storms better. The storm detection didn't work at all 2004-06-05 18:27:28 +00:00
kern_jail.c Add two missing includes and remove two uneeded. 2004-06-27 09:03:22 +00:00
kern_kse.c Allocate TIDs in thread_init() and deallocate them in thread_fini(). 2004-06-26 18:58:22 +00:00
kern_kthread.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
kern_ktr.c Update the license on this file to be a bit more sane. 2003-09-10 01:09:32 +00:00
kern_ktrace.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
kern_linker.c Trim a few things from the dmesg output and stick them under bootverbose to 2004-07-01 07:46:29 +00:00
kern_lock.c Move TDF_DEADLKTREAT into td_pflags (and rename it accordingly) to avoid 2004-06-03 01:47:37 +00:00
kern_lockf.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
kern_mac.c Add /* !MAC */ to final #endif. 2004-05-03 22:54:46 +00:00
kern_malloc.c Bring in mbuma to replace mballoc. 2004-05-31 21:46:06 +00:00
kern_mbuf.c Fix a couple of bugs in the mbuf and packet ctors. In the latter case, 2004-06-01 16:17:10 +00:00
kern_mib.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
kern_module.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
kern_mtxpool.c Rearrange the SYSINIT order to call lockmgr_init() earlier so that 2003-07-16 01:00:39 +00:00
kern_mutex.c Add a new kernel option MUTEX_WAKE_ALL that changes the mutex unlock code 2004-04-06 19:12:24 +00:00
kern_ntptime.c Annual NTP kernel code spring-cleaning: 2004-03-14 15:23:05 +00:00
kern_physio.c Do the dreaded s/dev_t/struct cdev */ 2004-06-16 09:47:26 +00:00
kern_poll.c Ensure that the poll_burst <= poll_burst_max constraint really holds. 2004-04-15 07:38:44 +00:00
kern_proc.c Fill in the values for the ki_tid and ki_numthreads which have been 2004-06-20 22:17:22 +00:00
kern_prot.c Socket MAC labels so_label and so_peerlabel are now protected by 2004-06-13 02:50:07 +00:00
kern_resource.c Turned off the "calcru: negative time" warning for certain SMP cases 2004-06-21 17:46:27 +00:00
kern_sema.c Change the return value of sema_timedwait() so it returns 0 on 2004-06-14 18:19:05 +00:00
kern_shutdown.c Second half of the dev_t cleanup. 2004-06-17 17:16:53 +00:00
kern_sig.c Deorbit COMPAT_SUNOS. 2004-06-11 11:16:26 +00:00
kern_subr.c Remove checks for curthread == NULL - it can't happen. 2004-06-03 10:22:47 +00:00
kern_switch.c - style fixes to the critical_exit() KASSERT(). 2004-02-02 08:13:27 +00:00
kern_sx.c Fix _sx_assert() to panic() rather than printf() when an assertion fails 2004-02-27 16:13:44 +00:00
kern_synch.c Remove the signal_caught argument from sleepq_timedwait() as it was 2004-06-28 18:57:06 +00:00
kern_syscalls.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
kern_sysctl.c Make sysctl_wire_old_buffer() respect ENOMEM from vslock() by marking 2004-06-11 02:20:37 +00:00
kern_tc.c Just because the timecounter reads the same value on two samples 2004-03-04 14:14:23 +00:00
kern_thr.c Change the thread ID (thr_id_t) used for 1:1 threading from being a 2004-07-02 00:40:07 +00:00
kern_thread.c Allocate TIDs in thread_init() and deallocate them in thread_fini(). 2004-06-26 18:58:22 +00:00
kern_time.c Update previous commit to: 2004-06-21 22:34:57 +00:00
kern_timeout.c The paper "Hashed Timers and Hierarchical Wheels: Data Structures for the 2004-04-25 04:10:17 +00:00
kern_umtx.c Change the thread ID (thr_id_t) used for 1:1 threading from being a 2004-07-02 00:40:07 +00:00
kern_uuid.c Fix generation of random multicast MAC address. 2004-01-22 13:34:11 +00:00
kern_xxx.c Deorbit COMPAT_SUNOS. 2004-06-11 11:16:26 +00:00
ksched.c sched_setscheduler: Return EINVAL when a invalid policy is specified, 2003-09-13 18:46:24 +00:00
link_elf_obj.c Wrap long line. 2004-06-29 03:13:54 +00:00
link_elf.c Include <sys/gmon.h> instead of <machine/profile.h> for the declaration 2004-05-19 14:36:38 +00:00
linker_if.m The method link_preload_finish is not static. 2003-09-20 17:39:32 +00:00
Make.tags.inc Finish driving a stake through the heart of netns and the associated 2003-03-05 19:24:24 +00:00
Makefile Finish driving a stake through the heart of netns and the associated 2003-03-05 19:24:24 +00:00
makesyscalls.sh Remove the namespace column from the syscalls tables. We don't actually 2003-12-23 03:50:43 +00:00
md4c.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
md5c.c Revert stuff which accidentally ended up in the previous commit. 2003-07-22 10:36:36 +00:00
p1003_1b.c Use __FBSDID(). 2003-06-11 06:34:30 +00:00
posix4_mib.c Use __FBSDID(). 2003-06-11 06:34:30 +00:00
sched_4bsd.c Fix another typo in the previous commit. 2004-06-21 23:47:47 +00:00
sched_ule.c Add the sysctl node 'kern.sched.name' that has the name of the scheduler 2004-06-21 22:05:46 +00:00
subr_acl_posix1e.c Update my personal copyrights and NETA copyrights in the kernel 2004-02-22 00:33:12 +00:00
subr_autoconf.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
subr_blist.c Move the definitions of SWAPBLK_NONE and SWAPBLK_MASK from vm_page.h to 2004-06-04 04:03:26 +00:00
subr_bus.c Hide struct resource and struct rman. You must define 2004-06-30 16:54:10 +00:00
subr_clist.c Revert stuff which accidentally ended up in the previous commit. 2003-07-22 10:36:36 +00:00
subr_clock.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
subr_devstat.c Do the dreaded s/dev_t/struct cdev */ 2004-06-16 09:47:26 +00:00
subr_disk.c Report bio_pblkbo instead of bio_blkno. 2003-10-18 17:27:10 +00:00
subr_eventhandler.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
subr_hints.c Add a resource_disabled() helper function that returns true (non-zero) if 2003-07-02 16:01:38 +00:00
subr_kobj.c * Add multiple inheritance to kobj. Each class can have zero or more base 2003-10-16 09:16:28 +00:00
subr_log.c Do the dreaded s/dev_t/struct cdev */ 2004-06-16 09:47:26 +00:00
subr_mbpool.c Pass MTX_DEF as the last argument to mtx_init() instead of 0. This 2003-12-07 21:53:41 +00:00
subr_mchain.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
subr_module.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
subr_msgbuf.c Put the message about msgbuf cksum mismatch under bootverbose and tell 2003-09-05 11:12:00 +00:00
subr_param.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
subr_pcpu.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
subr_power.c Move the kernel power change printf under bootverbose since the 2004-01-02 18:24:13 +00:00
subr_prf.c Add a sysctl/tunable, "kern.always_console_output", that lets you set 2004-06-18 20:12:42 +00:00
subr_prof.c Enable MI bits for gcc -ftest-coverage -fprofile-arcs on amd64. 2004-05-29 01:18:14 +00:00
subr_rman.c Add ability to set start/end for rman 2004-07-01 16:22:10 +00:00
subr_rtc.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
subr_sbuf.c Mechanical whistespace cleanup. 2004-02-17 10:21:03 +00:00
subr_scanf.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
subr_sleepqueue.c Add two new kernel options to allow rudimentary profiling of the internal 2004-06-29 02:30:12 +00:00
subr_smp.c Move the CPU newbus attachment to i386 legacy. The acpi_cpu device will 2004-05-06 15:54:02 +00:00
subr_taskqueue.c - Execute all of the tasks on the taskqueue during taskqueue_free() after 2004-06-28 16:28:23 +00:00
subr_trap.c Remove unused variable. 2004-03-31 08:20:44 +00:00
subr_turnstile.c Oops, this didn't make it into my submit before I committed: Defer 2004-06-29 03:48:49 +00:00
subr_witness.c Introduce socket and UNIX domain socket locks into hard-coded lock 2004-06-13 00:23:03 +00:00
sys_generic.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
sys_pipe.c Revise the direct or optimized case to use uiomove_fromphys() by the reader 2004-03-27 19:50:23 +00:00
sys_process.c Finish fixing up Alpha to work with an MP safe ptrace(): 2004-04-01 20:56:44 +00:00
sys_socket.c Annotate two intentionally unlocked reads with comments. 2004-06-20 17:35:50 +00:00
syscalls.c Regen. 2004-07-02 00:38:56 +00:00
syscalls.master Change the thread ID (thr_id_t) used for 1:1 threading from being a 2004-07-02 00:40:07 +00:00
sysv_ipc.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
sysv_msg.c Add missing #include <sys/module.h> 2004-05-30 20:34:58 +00:00
sysv_sem.c Add missing #include <sys/module.h> 2004-05-30 20:34:58 +00:00
sysv_shm.c When no fixed address is given in a shmat() request, pass a hint address 2004-06-19 14:46:13 +00:00
tty_compat.c Put the pre FreeBSD-2.x tty compat code under BURN_BRIDGES. 2004-06-21 22:57:16 +00:00
tty_conf.c Do the dreaded s/dev_t/struct cdev */ 2004-06-16 09:47:26 +00:00
tty_cons.c Second half of the dev_t cleanup. 2004-06-17 17:16:53 +00:00
tty_pty.c Gah! commit from wrong tree. 2004-06-25 22:10:20 +00:00
tty_subr.c Revert stuff which accidentally ended up in the previous commit. 2003-07-22 10:36:36 +00:00
tty_tty.c Second half of the dev_t cleanup. 2004-06-17 17:16:53 +00:00
tty.c Pick the hotchar out of the tty structure instead of caching private 2004-06-26 09:20:07 +00:00
uipc_accf.c Add a global mutex, accept_filter_mtx, to protect the global list of 2004-06-01 04:08:48 +00:00
uipc_cow.c In some cases, sf_buf_alloc() should sleep with pri PCATCH; in others, it 2004-04-03 09:16:27 +00:00
uipc_domain.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
uipc_jumbo.c Lock the vm object when removing a page. 2003-06-11 21:23:04 +00:00
uipc_mbuf2.c Bring in mbuma to replace mballoc. 2004-05-31 21:46:06 +00:00
uipc_mbuf.c Gah! Plug a mbuf leak I introduced in the last commit. 2004-06-11 18:17:25 +00:00
uipc_proto.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
uipc_sem.c Add missing #include <sys/module.h> 2004-05-30 20:34:58 +00:00
uipc_sockbuf.c Reduce the number of unnecessary unlock-relocks on socket buffer mutexes 2004-06-26 19:10:39 +00:00
uipc_socket2.c Reduce the number of unnecessary unlock-relocks on socket buffer mutexes 2004-06-26 19:10:39 +00:00
uipc_socket.c Add a new global mutex, so_global_mtx, which protects the global variables 2004-06-27 03:22:15 +00:00
uipc_syscalls.c Acquire socket lock in the "waiting for connection" loop in 2004-06-24 01:43:23 +00:00
uipc_usrreq.c Acquire the socket buffer lock when calling unp_scan() on 2004-06-27 03:29:25 +00:00
vfs_acl.c Update my personal copyrights and NETA copyrights in the kernel 2004-02-22 00:33:12 +00:00
vfs_aio.c Merge additional socket buffer locking from rwatson_netperf: 2004-06-17 22:48:11 +00:00
vfs_bio.c Second half of the dev_t cleanup. 2004-06-17 17:16:53 +00:00
vfs_cache.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
vfs_cluster.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
vfs_default.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
vfs_export.c Include <sys/mutex.h> and its prerequisite <sys/lock.h> instesd of depending 2004-04-21 12:10:30 +00:00
vfs_extattr.c Don't cuddle else's so much as we removed additional parts of each 2004-06-24 17:22:29 +00:00
vfs_init.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
vfs_lookup.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
vfs_mount.c Initialize ni_cnd.cn_cred before calling lookup() (this is normally done 2004-06-20 17:31:01 +00:00
vfs_subr.c When shutting down the syncer kernel thread, first tell it to run 2004-07-01 23:59:19 +00:00
vfs_syscalls.c Don't cuddle else's so much as we removed additional parts of each 2004-06-24 17:22:29 +00:00
vfs_vnops.c Change the types of vn_rdwr_inchunks()'s len and aresid arguments to 2004-06-05 02:18:28 +00:00
vnode_if.src Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00