Commit Graph

28233 Commits

Author SHA1 Message Date
John Birrell
9b7c9bc4f8 Oops, backout the previous change having confused my underscores.
__thread_create is a syscall that uses the default asm. It is
_thread_create that contains specific asm code, but that lives in
libpthread.
1998-04-30 10:02:44 +00:00
John Birrell
26dac90648 Change the description of errno to match the thread-aware implementation
from 3.0 on. With 3.0 being a major release, now is a good time to do
this.
1998-04-30 09:49:59 +00:00
John Birrell
1b46cb523d Make errno finally and permanently thread-aware so that it is no longer
necessary to compile with _THREAD_SAFE defined. This means that people
will get thread-aware code whether they like it or not. This change
is required to allow a process to link against libpthread and libc
to use kernel threads (and prevent each thread from clobbering another
thread's errno just be doing a syscall).

This is bound to break some ports, but it is strictly allowed by ANSI C,
so anything that breaks as a result was already broken anyway 8-).
"Sorry".
1998-04-30 09:38:03 +00:00
John Birrell
3fece7a1aa Make cerror thread aware by calling __error() to get a pointer to the
thread-specific error variable. This change make libc use the same cerror
code that libc_r has been using.
1998-04-30 09:32:48 +00:00
John Birrell
68f87034f2 The syscall that creates a kernel thread is coming, but it doesn't use the
default syscall asm, so add it to NOASM. The other syscalls that manipulate
kernel threads use the default asm code, so they just get built
automatically.
1998-04-30 09:30:50 +00:00
John Birrell
cf6229a854 Build __error.c into libc, but not libc_r. The weak symbol in the
file works with libpthread, but when built into libc_r which has a non-weak
symbol of the same name, the linker behaves unpredicatably and sometimes
links the wrong symbol. The linker behaviour is a byproduct of what
the program calls from object to object so it is like winning a lottery
if the program actually works. The odds are quite good - 95:1, I think.
We need a sure thing, though, so weak symbols can't be used instead
of renaming things.
1998-04-30 09:13:48 +00:00
John Birrell
7bb870ac66 Change the name of this source file so that libc_r builds it instead
of the one in libc that contains the weak symbol for __error. FreeBSD's
make accumulates paths to the point that it can find *anything*, possibly
including the car keys.
1998-04-30 09:04:10 +00:00
Andrey A. Chernov
02f133e259 Add removed files to the removed list 1998-04-30 08:21:28 +00:00
Andrey A. Chernov
a918889013 Turn on Readline support 1998-04-30 08:14:04 +00:00
Doug Rabson
0f9bd807c9 Add support for ELF shared libraries. Also use bfd from the binutils in that
case rather than gdb's own copy.
1998-04-30 08:03:50 +00:00
Andrey A. Chernov
9890b24c74 Remove junk files that occupes space: Flex/Bison output and TeX macros 1998-04-30 08:00:49 +00:00
Doug Rabson
07d72466e5 Use the dynamic symtab of the runtime linker when looking for places to set
breakpoints.  It may have been installed stripped.
1998-04-30 07:56:18 +00:00
Andrey A. Chernov
1d14c4964e fix make - use -I${.CURDIR} instead -I. 1998-04-30 07:52:05 +00:00
Andrey A. Chernov
de2218d16b Fix make - use -I${.CURDIR} instead of -I. 1998-04-30 07:50:49 +00:00
Doug Rabson
2001f720ce Add GDB support. The method and some of the code came from NetBSD's elf
runtime linker.
1998-04-30 07:48:02 +00:00
Doug Rabson
bbba152305 This was broken for ELF builds. 1998-04-30 07:38:27 +00:00
John Dyson
83ad4e3dbc Fix an error that I made with an optimization. In the case
of softupdates, we need to do vtruncbuf the old way.  Luoqi
caught, found the bug and submitted this fix.
Submitted by:	Luoqi Chen <luoqi@chen.ml.org>
1998-04-30 05:28:53 +00:00
Jean-Marc Zucconi
5679c69d0f Resurrect exit.c
PR:		misc/6433
1998-04-29 22:43:18 +00:00
Andrey A. Chernov
0b5e953b91 Basic support for LC_MESSAGES 1998-04-29 22:39:56 +00:00
Andreas Klemm
88d16a1b9b update dc utility as well
after importing the new bc-1.0.4 sources,
which contain the latest DNU dc version
1998-04-29 22:15:05 +00:00
Andreas Klemm
4a8ac9040a remove old bc-1.0.3 stuff
modify Makefile, to get bc-1.0.4 from src/contrib/bc
adjust config.h
PR:		closes 4183
1998-04-29 22:05:39 +00:00
Andrey A. Chernov
3492193d0e Make 'y' command 8bit clean
PR: 6458
1998-04-29 21:58:36 +00:00
Andreas Klemm
da63d8f279 Added short instruction for FreeBSD how to import 1998-04-29 21:57:35 +00:00
Andreas Klemm
073523892d This commit was generated by cvs2svn to compensate for changes in r35516,
which included commits to RCS files with non-trunk default branches.
1998-04-29 21:53:01 +00:00
Andreas Klemm
17f33912d7 Import GNU bc 1.04
PR:		4183
1998-04-29 21:53:01 +00:00
Warner Losh
9ca13eea68 Add note about BLOCKSIZE variable to -s flag. 1998-04-29 18:39:51 +00:00
Warner Losh
3f6c4fc33b Use ${.TARGET} rather than $@. i386 tested, pc98 untested because config
on my box doesn't grok machine type pc98.
PR:		3272
Submitted by:	jhs
1998-04-29 18:21:35 +00:00
Andreas Klemm
a2ba45e521 Fixes incorrect company and product names in uha(4) manpage and
LINT config file. Should be merged to -STABLE as well.
PR:		closes 6447
Submitted by:	Steven Plite splite@purdue.edu
1998-04-29 17:09:41 +00:00
Dmitrij Tejblum
c681be377c Use DFLTBSIZE instead of MAXBSIZE for pm_fatblksize.
In msdosfs_sync: spelling fix, formatting changes; fix MNT_LAZY (sync
modified denodes, don't sync device)

Mostly submitted by (and with hints from):	bde

Increase limit for maximum disk size: as far as I can see previous limit was
gratuitously too low.
1998-04-29 12:55:51 +00:00
John Birrell
ccd1da1333 Add spinlock. 1998-04-29 11:03:34 +00:00
John Birrell
4a027d50c7 Change signal model to match POSIX (i.e. one set of signal handlers
for the process, not a separate set for each thread). By default, the
process now only has signal handlers installed for SIGVTALRM, SIGINFO
and SIGCHLD. The thread kernel signal handler is installed for other
signals on demand. This means that SIG_IGN and SIG_DFL processing is now
left to the kernel, not the thread kernel.

Change the signal dispatch to no longer use a signal thread, and
call the signal handler using the stack of the thread that has the
signal pending.

Change the atomic lock method to use test-and-set asm code with
a yield if blocked. This introduces separate locks for each type
of object instead of blocking signals to prevent a context
switch. It was this blocking of signals that caused the performance
degradation the people have noted.

This is a *big* change!
1998-04-29 09:59:34 +00:00
KATO Takenori
ccf47cfced Sync with sys/i386/i386/trap.c revision 1.127. 1998-04-29 09:45:38 +00:00
John Birrell
312e185f9c Don't need wrappers for longjmp/setjmp anymore. 1998-04-29 09:40:51 +00:00
John Birrell
32664a7064 Remove empty files that were renamed some time ago. 1998-04-29 09:39:34 +00:00
John Birrell
1ce8c4dc49 Atomic lock source. 1998-04-29 09:36:03 +00:00
John Birrell
5178bcd1cf Stop renaming these in libc_r because wrappered versions don't make sense.
PR: i386/4826, bin/5953
1998-04-29 09:14:35 +00:00
John Birrell
72b42edfd4 Replace the threaded locking with spinlock calls for both threaded
and non-threaded programs. This makes malloc thread safe for linking
with libpthread and kernel threads.

Reviewed by: phk
1998-04-29 09:10:58 +00:00
John Birrell
96c76d66db Reference an external variable in threaded programs so that the
autoinitialiser gets linked in and therefore called before main().
1998-04-29 09:08:43 +00:00
John Birrell
7317e6b1fd Use signal() in both the threaded and non-threaded cases. 1998-04-29 09:06:13 +00:00
John Birrell
f0f62729ee Stubs are required in libc so that it can be used with libpthread
(and kernel threads), but weak symbols and non-weak symbols of the
same name built into libc_r result in unpredictable linking.
1998-04-29 09:02:16 +00:00
John Dyson
dda6b17151 Add a needed prototype, and fix a panic problem with the new
memory code.
1998-04-29 06:59:08 +00:00
Masafumi Max NAKANE
666cf86d3f Add "flags 0x10" to the sio0 entry so that SMP-GENERIC acts in thesame
manner as the GENERIC kernel to the -h option.
1998-04-29 06:58:43 +00:00
John Dyson
c0877f103f Tighten up management of memory and swap space during map allocation,
deallocation cycles.  This should provide a measurable improvement
on swap and memory allocation on loaded systems.  It is unlikely a
complete solution.  Also, provide more map info with procfs.
Chuck Cranor spurred on this improvement.
1998-04-29 04:28:22 +00:00
Eivind Eklund
288078be0f Translate T_PROTFLT to SIGSEGV instead of SIGBUS when running under
Linux emulation.  This make Allegro Common Lisp 4.3 work under
FreeBSD!

Submitted by: Fred Gilham <gilham@csl.sri.com>
Commented on by: bde, dg, msmith, tg
Hoping he got everything right:  eivind
1998-04-28 18:15:08 +00:00
Andrey A. Chernov
71358584f3 Fix merge errors 1998-04-28 07:37:54 +00:00
Andrey A. Chernov
70fedb5298 Upgrade to 2.2 1998-04-28 07:16:24 +00:00
David Greenman
ec3a3b4594 Oops, revert part of a diff that wasn't supposed to have been committed. 1998-04-28 07:02:33 +00:00
David Greenman
214bed53a2 Cache the results of the ps_strings sysctl so that it doesn't have to be
redone for every call of setproctitle().
1998-04-28 06:59:14 +00:00
Andrey A. Chernov
49772d6129 Merge local changes 1998-04-28 06:49:42 +00:00
Andrey A. Chernov
d3bbabc05a This commit was generated by cvs2svn to compensate for changes in r35486,
which included commits to RCS files with non-trunk default branches.
1998-04-28 06:22:20 +00:00