Commit Graph

108227 Commits

Author SHA1 Message Date
wiz
69ffc10a99 Switch soft and hard, per PR 20135. 2003-01-31 12:53:32 +00:00
tron
8cf036775b Add a missing bracket to make this compile. 2003-01-31 12:27:19 +00:00
pk
453f6b99a3 Include <sys/types.h>
Remove v9 register defs.
2003-01-31 12:06:27 +00:00
kleink
0592d14111 Provide _XOPEN_SHM. 2003-01-31 11:54:48 +00:00
lukem
2c589141ff Implement start_cmd as:
start_cmd="${name} "'${rc_arg}'
and stop_cmd & reload_cmd as:
	stop_cmd=$start_cmd
	reload_cmd=$start_cmd
(Just to be tricky)
2003-01-31 06:47:16 +00:00
thorpej
12eeed2f38 Use aprint_*(). 2003-01-31 05:25:57 +00:00
thorpej
da5ba38dbf Use M_VMPMAP instead of M_HTABLE. 2003-01-31 05:24:31 +00:00
thorpej
515d52e9e7 Change ext_size to a size_t, and update the signature of ext_free. 2003-01-31 05:00:24 +00:00
nathanw
96b5a26db2 Use pthread__sched_sleepers() instead of iterating over sleep queues
ourself.
2003-01-31 04:59:40 +00:00
nathanw
029982e17b Add a new internal function, pthread__sched_sleepers(), which iterates
over a sleep queue and puts everything on the run queue. This permits
the iteration to be inside the acquisition of the run queue spinlock,
avoiding repetitive acquire/release cycles.
2003-01-31 04:58:57 +00:00
thorpej
e5e7fae215 ANSI'ify. 2003-01-31 04:55:52 +00:00
nathanw
69367db47f Do a similar tuneup on pthread_cond_signal() and
pthread_cond_broadcast(): use double-checked locking to avoid
pthread__self() and pthread_spinlock() when signaling or broadcasting
on a condition variable with no waiters.
2003-01-31 04:26:50 +00:00
nathanw
6cca91fc86 Mutex tuneup.
* Use a double-checked locking technique to avoid taking
   the interlock in pthread_mutex_unlock().

 * In pthread_mutex_lock() and pthread_mutex_trylock(), only store the
   stack pointer, not the thread ID, in ptm_owner. Do the translation
   to a thread ID in the slow-lock, errorcheck, and recursive mutex
   cases rather than in the common path.

 * Juggle where pthread__self() is called, to move it out of the fast path.

Overall, this means that neither pthread_self() nor
pthread_spin[un]lock() are used in the course of locking and unlocking
an uncontested mutex. Speeds up the fast path by 40-50%, and
eliminates about 98% of spinlocks used by a couple of large threaded
applications.

(Still a GET_MUTEX_PRIVATE() in the fast path... perhaps the type
should be in the main body of the mutex).
2003-01-31 02:55:00 +00:00
thorpej
e354490475 Use aprint_*(). 2003-01-31 02:15:57 +00:00
thorpej
c050d9efe1 Fix printf format from daddr_t changes. 2003-01-31 02:05:41 +00:00
lukem
e6d083f5b9 another DESTDIR clarification 2003-01-31 01:38:35 +00:00
mrg
2a81b2dfea clean up a couple of SMP comments. 2003-01-31 01:26:39 +00:00
thorpej
2f060102ae Use aprint_*(). 2003-01-31 01:03:35 +00:00
thorpej
749715f6ee Use aprint_*(). 2003-01-31 00:26:25 +00:00
thorpej
7ec10e2d99 Use aprint_*(). 2003-01-31 00:07:39 +00:00
thorpej
d133a4da92 M_SOOPTS -> MT_SOOPTS 2003-01-30 23:43:33 +00:00
fvdl
f26f133510 Don't deref l if it's NULL, please. 2003-01-30 22:45:20 +00:00
atatat
9658e47b39 Make "-m0" print no data, so that we agree better with the man page. 2003-01-30 21:43:26 +00:00
is
591f5c7964 Fix PR 18444 and a few other corner cases in cdplay.c. 2003-01-30 21:23:57 +00:00
atatat
7a8e4b4bc4 Two small changes to the ELF exec code:
(1) ELFNAME(load_file)() now takes a pointer to the entry point
offset, instead of taking a pointer to the entry point itself.  This
allows proper adjustment of the ultimate entry point at a higher level
if the object containing the entry point is moved before the exec is
finished.

(2) Introduce VMCMD_FIXED, which means the address at which a given
vmcmd describes a mapping is fixed (ie, should not be moved).  Don't
set this for entries pertaining to ld.so.

Also some minor comment/whitespace tweaks.
2003-01-30 20:03:46 +00:00
thorpej
84855a5789 Test _KERNEL_OPT before including opt_*.h files. 2003-01-30 19:59:29 +00:00
thorpej
8139d13ab9 Add a ucontext test from Nathan's testsuite. 2003-01-30 19:47:00 +00:00
thorpej
a1c259efd5 Add tests for do-once control from Nathan's testsuite. 2003-01-30 19:31:59 +00:00
manu
34a458238c For cproc_t, use a per thread value instead of a per process value. ifdef
out l_emuldata in struct lwp until we actually use it.
2003-01-30 19:14:18 +00:00
thorpej
bfcc695a87 Add one more condition variable test from Nathan's testsuite. 2003-01-30 18:57:06 +00:00
thorpej
afab0f25a7 Add condition variable tests from Nathan's testsuite. 2003-01-30 18:53:44 +00:00
thorpej
13eede9b17 Add a test for pthread barriers. 2003-01-30 18:23:09 +00:00
thorpej
9b6c031a4f Add mutex tests from Nathan's testsuite. 2003-01-30 18:05:25 +00:00
hannken
eea2fc320e Fix printf() problem caused by "daddr_t" change. 2003-01-30 16:33:50 +00:00
yamt
84d61a1dc4 there's no need to treat VOP_WHITEOUT as dirop
because it modifies only one inode.
2003-01-30 14:18:32 +00:00
martin
dc63778c66 Sparc64 already had a BUS_DMA_NOCACHE - remove one of the two definitions.
Fortunately the old (local) one had the same semantics as the new one.
2003-01-30 13:32:25 +00:00
lukem
4b3798a679 In "sets" target, ensure ${RELEASEDIR}/${MACHINE}/binary/sets exists.
Fixes [toolchain/20120] from Lubomir Sedlacik.
2003-01-30 12:16:18 +00:00
pk
ac9d761168 The introduction of FAS366 support annihilated the `reselect-while-selecting'
workaround for the ESP100 variant.
2003-01-30 11:03:45 +00:00
jhawk
8f3b1cfb79 Note find(1) changes to -user predicate (permit + and - on numeric args) 2003-01-30 10:53:01 +00:00
jhawk
e025cf984b Obey preceding - and + on -user when a numeric uid is specified (only).
Our behavior is now consistent with Solaris, and more useful than previous.
2003-01-30 10:49:18 +00:00
jhawk
980fe9aad7 Obey preceding - and + on -user when a numeric uid is specified (only).
Our behavior is now consistent with Solaris, and more useful than previous.

Unfortunately we end up strtol()-ing twice (once via atoi()) to avoid
changing find_parsenum().
2003-01-30 10:49:05 +00:00
matt
e680c1c1e9 Load SPRG0 with &cpu_info_store. 2003-01-30 07:46:28 +00:00
matt
161af1dd62 Add a KASSERT when copying l1->l_cpu to l2->l_cpu 2003-01-30 05:51:58 +00:00
lukem
34e5de7919 Prefix various paths with 'DESTDIR', to highlight that the DESTDIR
is taken into account.
2003-01-30 02:52:40 +00:00
fvdl
1627b9c342 libpthread support for x86_64. 2003-01-30 02:10:31 +00:00
fvdl
894bd3ad9d Add ucontext glue for x86_64. 2003-01-30 02:07:30 +00:00
fvdl
aa0d12cace Use flag to indicate whether an LWP should return to userspace via
sysret (should it have entered through syscall), or via a plain
iret. This can be done more quicker and dirtier, but I've decided
against that for now.
2003-01-30 02:04:59 +00:00
fvdl
be932c1dc6 Add some optional debug goop. 2003-01-30 02:03:35 +00:00
fvdl
c795d68779 Add flag to indicate that an LWP should return to userspace via a normal
iret (not sysret).
2003-01-30 02:02:51 +00:00
nathanw
f66d2f37f7 More rototilling:
* Implement pthread_kill().

  * Return the old thread mask, not the old process mask, in our
    interpositioned sigaction call.

  * Refer to _NSIG, not NSIG.

  * Gut pthread_sigmask(). It was handling a lot of corner cases that
    weren't legal anyway. Handle unblocked signals with a new
    pthread__kill_self() routine (also used by pthread_kill()).

  * Be more consistent with locking around pt_sigacts[].
2003-01-30 01:12:42 +00:00