diff options
author | davidxu <davidxu@FreeBSD.org> | 2004-12-18 12:52:44 +0000 |
---|---|---|
committer | davidxu <davidxu@FreeBSD.org> | 2004-12-18 12:52:44 +0000 |
commit | 395ea4c2e2af05ed29a6da44bc4a81c58dd7aafc (patch) | |
tree | 14adfa0728612cadcbe3d5c74e0f336cd2f60fd4 /sys/kern/init_sysent.c | |
parent | d4138a03c5a8ffac7cc65a1c6960d14f7a16623c (diff) | |
download | FreeBSD-src-395ea4c2e2af05ed29a6da44bc4a81c58dd7aafc.zip FreeBSD-src-395ea4c2e2af05ed29a6da44bc4a81c58dd7aafc.tar.gz |
1. make umtx sharable between processes, the way is two or more processes
call mmap() to create a shared space, and then initialize umtx on it,
after that, each thread in different processes can use the umtx same
as threads in same process.
2. introduce a new syscall _umtx_op to support timed lock and condition
variable semantics. also, orignal umtx_lock and umtx_unlock inline
functions now are reimplemented by using _umtx_op, the _umtx_op can
use arbitrary id not just a thread id.
Diffstat (limited to 'sys/kern/init_sysent.c')
-rw-r--r-- | sys/kern/init_sysent.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/kern/init_sysent.c b/sys/kern/init_sysent.c index 8f15ecf..5ebbec8 100644 --- a/sys/kern/init_sysent.c +++ b/sys/kern/init_sysent.c @@ -482,4 +482,5 @@ struct sysent sysent[] = { { SYF_MPSAFE | AS(getaudit_addr_args), (sy_call_t *)lkmressys }, /* 451 = getaudit_addr */ { SYF_MPSAFE | AS(setaudit_addr_args), (sy_call_t *)lkmressys }, /* 452 = setaudit_addr */ { SYF_MPSAFE | AS(auditctl_args), (sy_call_t *)lkmressys }, /* 453 = auditctl */ + { SYF_MPSAFE | AS(_umtx_op_args), (sy_call_t *)_umtx_op }, /* 454 = _umtx_op */ }; |