Commit Graph

108247 Commits

Author SHA1 Message Date
thorpej b193480908 Add extensible malloc types, adapted from FreeBSD. This turns
malloc types into a structure, a pointer to which is passed around,
instead of an int constant.  Allow the limit to be adjusted when the
malloc type is defined, or with a function call, as suggested by
Jonathan Stone.
2003-02-01 06:23:35 +00:00
tsutsui e2c139ba9f Remove "-Wa,-xgot" hack from DBG flag for broken objcopy-crunchide
that has been fixed by simonb.

BTW, should we also add "-mmemcpy" here to reduce code size?
2003-02-01 05:03:42 +00:00
tsutsui 31fb061b05 Remove "-Wa,-xgot" hack from DBG flag for broken objcopy-crunchide
that has been fixed by simonb.
2003-02-01 05:00:17 +00:00
nathanw 34c915eb3d Revert the conversion to libpthread's recursive mutexes. Too much
trouble is caused by the memory allocation in the mutex initialization,
and uncontested mutexes and condition variables have become faster in the
meantime.
2003-02-01 03:25:00 +00:00
nathanw 947e41dfa9 Arrange to pause for a while if pthread_cond_wait() or
pthread_cond_timedwait() is called before any threads have been
created and the SA infrastructure is up and running.

Addresses PR lib/20139.

XXX probably need to do this for all of the pthread_*_timedlock()
functions, too.
2003-02-01 00:57:31 +00:00
kleink b971350427 Add several missing items, and be less rageous about memory locking. 2003-02-01 00:42:03 +00:00
thomas 5d2b072ae0 Define Atari keyboard type. 2003-01-31 23:32:21 +00:00
thomas 59b8b56225 Define Atari wskeyboard type. 2003-01-31 23:28:30 +00:00
martin 3b0f844b5d Apply leaf procedure optimization to pseg_set (again). 2003-01-31 22:19:33 +00:00
tsutsui 0566c52cec Note VGA console support for NEC-J96A and NEC-R96 on arc port. 2003-01-31 22:18:04 +00:00
tsutsui 3fb3009a83 Enable vga0 at isa?, and add options VGA_RESET and
(commented out) options VGA_RASTERCONSOLE for NEC-J96A and NEC-R96.
2003-01-31 22:11:20 +00:00
tsutsui f9f27acbe7 Add c_nec_eisa_cons_init() for NEC-J96A and NEC-R96 which have
Cirrus Logic GD5428 ISA VGA console to initialize its registers properly
for generic vga(4) driver(s).
2003-01-31 22:07:52 +00:00
jdolecek 6034a0fc70 use right function name in HISOTRY, this is not _lwp_create(2) 2003-01-31 22:06:45 +00:00
tsutsui 3061b2304e Call vga_isa_cnattach() in c_jazz_eisa_cons_init() if NVGA_ISA > 0. 2003-01-31 22:01:13 +00:00
tsutsui ef47e3f676 Changes to allow machines which don't use text mode at the boot time
to use generic VGA driver(s):
- Allow VGA drivers to use wsfont instead of builtin font.
- Add vga_reset() function, which will be called from MD consinit(),
  to put VGA into text mode. This function is enabled by options VGA_RESET.
2003-01-31 21:57:23 +00:00
uwe 4eb408dcd9 Avoid cgetcap &co prototypes conflicting with those provided by the host.
With this change we can cross-compile on FreeBSD 4.x.
2003-01-31 20:50:29 +00:00
skrll 5adf511512 Add a test for kernel preemption during a large uiomove.
Per discussion with Jason.
2003-01-31 20:14:25 +00:00
martin 1ecf66db9f Make the pmap count resident/wired mappings on the fly instead of
walking the page tables whenever this information is needed.

Add an option PMAP_COUNT_DEBUG to assert the new counts and the
page table walk agree.

The old solution had very bad performance impact, for example
by the high CPU load when running top(1).

Thanks to Simon Burge for pointing at the cause of the problem and
to Valeriy E. Ushakov for optimizing my simple minded assembler code.
2003-01-31 19:05:55 +00:00
pk 8f4478d022 lance_init(): explicitly clearing the `initialisation done' bit in the
status register triggers an interrupt which we don't handle.  Since the
driver doesn't depend on this status bit anywhere else, just leave it alone.
2003-01-31 17:40:05 +00:00
fvdl c17467b083 Wrap 'old BSD id' warning in DEBUG ifdef. 2003-01-31 15:35:04 +00:00
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