Commit Graph

340 Commits

Author SHA1 Message Date
nathanw
aa70f03b23 When implementing a recursive mutex, it helps if you remember to
decrement the recursion count.

Fixes the problem of uic dying with a no-next-thread assertion while
building kdeadmin3; reported by Perry Metzger and others on
tech-pkg.
2003-03-19 22:26:47 +00:00
nathanw
f60f35f3ab Don't acquire __environ_lock around exec*() calls; nothing requires
that these calls be thread-safe with respect to the environment, and it
causes serious problems for threaded applications which call vfork() and
exec*() (including indirectly, via popen() or system()).

Acquire and release __environ_lock in the parent in popen() and system() to
play safe and provide the child with a stable environment.

__environ_lock should also have an atfork() handler; still under development.
2003-03-04 19:44:09 +00:00
thorpej
65ec6ba6e7 Fix lib/20558:
A dynamically linked program invokes the rtld cleanup routine via
an atexit handler.  This rtld cleanup routine invokes _fini() for
shared libraries, which in-turn invoke __cxa_finalize() with their
DSO handle.  By luck, this happens to work okay for non-threaded
programs, but for a threaded program, this leads to deadlock (sometimes
manifested as an assertion failure, if the program didn't actually
create any threads).

Fixed by teaching __cxa_finalize() that it can be recursively invoked,
adjusting the handler list manipulation accordingly.
2003-03-04 18:09:48 +00:00
bjh21
22ebd2b34b Add _Exit(), for C99 and POSIX-2001.
Proposed on tech-userlevel to a resounding silence in April last year.
2003-03-01 15:59:02 +00:00
thorpej
26be93fa6f Rewrite atexit(3), and add support for __cxa_atexit()/__cxa_finalize(),
as specified by the C++ ABI for Itanium.  Despite the ABI document's name,
many of the items in it are implemented for other architectures.

See the following URL for a reference:

	http://www.codesourcery.com/cxx-abi/abi.html#dso-dtor

Fixes lib/18379 (from Joel Baker).
2003-03-01 04:19:37 +00:00
itohy
ca348cd671 Use definition in "namespace.h" to rename functions, not home grown. 2003-02-08 07:27:51 +00:00
heinz
077e910e6d Provide some more details for papers by Bentley/M.D. McIlroy and by
P.M. McIlroy (after short e-mail conversation with M.D. McIlroy on
www@).
2003-01-29 22:12:53 +00:00
dsl
c673281c37 Fix lib/17248 properly
'ls -l-' now reports unknown option -- -
'env -' and 'su -' both work ok
(change approved by christos)
2003-01-20 09:06:35 +00:00
christos
af26d1a576 s/_REENT/_REENTRANT/ 2003-01-18 17:20:04 +00:00
thorpej
3fdac2b8c5 Merge the nathanw_sa branch. 2003-01-18 10:52:16 +00:00
chris
5e606f5b98 Add a couple of missing THREAD_UNLOCK's, for the error exit path.
No functional change on Mainline, however SA branch probably needs this.
2002-12-09 14:14:59 +00:00
wiz
454f40b755 a <-> an fixes. 2002-11-29 19:19:39 +00:00
lukem
6ca5b5bb68 add strsuftoll(3) and strsuftollx(3) - parse a string for a number
with an optional suffix, product (two numbers separated by `x'), and
provide range checking
2002-11-29 12:58:14 +00:00
enami
b37113ebab Fix indent in sample code. 2002-11-15 04:38:55 +00:00
thorpej
d6e3c04143 Fix signed/unsigned comparison warnings. 2002-11-11 20:34:10 +00:00
thorpej
1289029f10 Fix signed/unsigned comparison warnings. 2002-11-11 17:56:11 +00:00
lukem
9df13b15cf pull in config.h (et al) for libnbcompat 2002-10-06 12:07:28 +00:00
wiz
8e21934b43 Grammar fixes and markup improvements. 2002-10-02 10:54:19 +00:00
wiz
7b55d02525 completely with only one "el". 2002-10-02 10:50:04 +00:00
wiz
6569c5c509 New sentence, new line. From Robert Elz. 2002-10-01 17:22:00 +00:00
wiz
60bfa780a0 Mark up NULL and ENOMEM. 2002-08-20 16:15:38 +00:00
wiz
64f4287d6d Remove superfluous double quotes and a superfluous Ns. 2002-08-20 15:30:07 +00:00
yamt
c5caadcfd8 bring in EXAMPLES and a note.
from openbsd.
2002-08-11 07:05:41 +00:00
yamt
6410ff3c05 bring in EXAMPLES from OpenBSD. 2002-08-11 06:53:39 +00:00
yamt
8acd3a715f - more description about realloc.
- mention errno.
- add FILES section for malloc.conf.
from openbsd.
2002-08-11 06:12:45 +00:00
yamt
145cf30b9f fix sample code. from openbsd. 2002-08-10 17:25:01 +00:00
yamt
1060c75faa result of getenv should be treated as read-only.
from OpenBSD.
2002-08-10 17:14:50 +00:00
yamt
0010f8875d bump .Dd . 2002-08-10 17:10:11 +00:00
yamt
9d36ca1fbf note only 8 bits of exit-status is passed.
from OpenBSD.
2002-08-10 17:09:27 +00:00
yamt
120c9b3256 note that alloca can't report error.
from OpenBSD.
2002-08-10 16:55:18 +00:00
yamt
14e693f16b bump .Dd for my previous commit. 2002-08-10 16:51:26 +00:00
yamt
cd575f9fb2 note that abort(3) causes streams flushed and closed.
from OpenBSD.
2002-08-10 16:47:54 +00:00
jdolecek
06a4a82134 restore the previous form of the condition checking malloc() return value, which
was changed in previous revision
2002-07-31 12:57:36 +00:00
itojun
891518d386 allow calloc(0, x) and calloc(x, 0). sync w/openbsd 2002-07-31 09:26:49 +00:00
itojun
c68c6aa7e0 die if integer overflow. from openbsd 2002-07-30 09:45:02 +00:00
yamt
673cbedc13 import CAVEATS sections from OpenBSD.
with little tweak by me.
2002-07-10 14:37:12 +00:00
wiz
4dc035fd8a Undo last two, until I have time to take a good look at the problems. 2002-06-21 09:56:33 +00:00
wiz
ec1956ee4e According to POSIX, "-" (the string) is an exception and should not
be parsed as option. Restore behaviour broken by previous commit.
Mirrors second part of patch from lib/17248.
2002-06-13 21:18:50 +00:00
wiz
d2d91a9170 Fix '-' handling. POSIX only recognizes "--" as end-of-options.
Problem noted in lib/17248 by David Laight, including a patch.
Part of this patch was used.
2002-06-13 20:49:00 +00:00
fredette
02ac1ae2f0 Added hppa support (some of it incomplete) to lib/csu, lib/libc,
and lib/libkvm.
2002-06-06 20:31:19 +00:00
wiz
919948e5f4 Fix SYNOPSIS, noted by Martin Macok on tech-userlevel. 2002-06-03 12:01:43 +00:00
wiz
bf5ec17026 Remove #ifdef Bad_float_h and #ifndef __STDC__ parts (unneeded). 2002-05-26 15:04:08 +00:00
zuntum
0f1273fc58 Xref fabs(3)
OK'd by Jaromir Dolecek
2002-04-28 11:52:43 +00:00
ross
9856438e91 generate & symbolically 2002-02-07 09:24:04 +00:00
ross
814f296b77 Generate <>& symbolically. 2002-02-07 07:00:09 +00:00
tv
9fbd88883c Roll in fixes to permit cross-compiling from non-NetBSD hosts. This
round has been tested on Solaris/x86 and Linux hosts.

* Add host tools cap_mkdb, ctags, m4, uudecode.
* Protect __RCSID() and __COPYRIGHT() better.
* Reduce the number of places that need to include "config.h", to keep
  sources closer to their "vanilla" versions.
* Add more compat #defines and autoconf-checked functions.
2002-01-31 22:43:33 +00:00
tv
a328e34106 Make almost all tools compile and run properly on non-NetBSD hosts. (In
particular, most tools now run correctly on Solaris 7.)
2002-01-29 10:20:28 +00:00
wiz
bae3b2f44b Punctuation fixes. 2002-01-28 02:07:57 +00:00
kleink
f100d16fcf C99: support INF, INFINITY, NAN and NAN(n-char-sequence-opt) arguments. 2002-01-28 00:10:04 +00:00
wiz
626980860b Use .Pp instead of empty lines. 2002-01-15 02:37:56 +00:00