Commit Graph

4709 Commits

Author SHA1 Message Date
sommerfeld 129b8c6309 strdup tracefile so that it doesn't get smashed. 2000-12-30 02:52:03 +00:00
sommerfeld 9984263e63 Do lazy token release - don't return tokens to the pipe unless we're
waiting for something or we're done.
2000-12-30 02:51:21 +00:00
sommerfeld 8a39635d34 Back out debug cruft. 2000-12-30 02:06:42 +00:00
sommerfeld a804073cac Add a token-passing scheme to allow a recursive make to successfully
use -j; all make's in a recursive build cooperate to limit the total
number of jobs, using a token-passing scheme.

The current token passing algorithm is similar to the one implemented
by gmake; there is a single pipe which is inherited through the entire
process hierarchy; tokens are obtained by reading a byte from the
"read end" of the pipe, and are returned by writing them to the "write
end".  This exact algorithm is likely to change in the future.

Implementation details:
 - Use the new trace facility to allow measurement of the
effectiveness of different token-passing schemes
 - Get a token in MakeStartJobs(), return it in Make_Update()
 - Eliminate Job_Full() and the jobFull global since they are
redundant with token system.
 - Add an "internal" -J option (to pass the token pipe fd's down to
submakes) and a -T option for tracing.
 - Change how compatMake is forced so that -j means something when
inherited by submakes.
 - When waiting for a token, poll the token-passing pipe as well as
the output pipes of existing jobs.
2000-12-30 02:05:20 +00:00
sommerfeld 694b899b9c Quick and dirty trace mechanism to make it easier to look at how different
parallel make job distribution algorithms work in practice.
2000-12-29 23:11:08 +00:00
augustss e0a4556c29 Add ++ and -- for changing mixer controls. They bump the value to
the next possible setting.
2000-12-29 13:30:26 +00:00
jdolecek be3807a7c5 adapt to KTR_USER structure changes 2000-12-28 11:11:34 +00:00
mrg c5ce287448 fix oversight in previous. 2000-12-28 02:07:00 +00:00
jlam d6ced75307 Change
"program used to trip installed binaries"
to
	"program used to strip installed binaries"
2000-12-27 18:56:21 +00:00
itojun c66fb7f316 noted that we should switch to localedef. 2000-12-23 23:24:25 +00:00
mrg ad2b8edf8a fix oversight in previous: also look for $MACHINE_ARCH of mipse[bl]. 2000-12-23 09:06:06 +00:00
mrg 67312df72f de-__P()-ify 2000-12-22 11:38:42 +00:00
itojun 028d8029d8 remove unnecessary -I to cpp 2000-12-22 07:02:49 +00:00
itojun 3723b80490 cleanup #if around __RCS 2000-12-22 06:04:21 +00:00
mrg 775b57cd01 say "<progname>: Could not initialize curses", with the progname 2000-12-22 02:52:47 +00:00
itojun d31d542a97 populate citrus xpg4dl locale definitions into /usr/share.
if there are any mistakes, please report (i only speak English/Japanese).
currently, only singlebyte locales are usable.

TODO: enable multibyte handler in libc - there still are few design
discussions, but we are almost ready.
2000-12-22 01:31:47 +00:00
itojun 08138ae451 avoid using "errno" as struct member name, to avoid conflict with errno.h.
ok by jdolecek
2000-12-20 22:11:16 +00:00
cgd 2af1e46eab __CONCAT does token pasting, not string concatnation. if something like:
__CONCAT("foo","bar");
actually works to concantate strings, it's because the preprocessor expands
it into "foo""bar" as separate strings, and then ANSI string concatenation
is performed on that.  It's more straightforward to just use ANSI string
concatenation directly, and newer GCCs complain (rightly) about misuse
of token pasting.
2000-12-20 01:17:49 +00:00
cgd d20e04a121 Don't try to use CPP token pasting to somehow 'stick' structure member
names on to the -> or . before them.  There's no need to, and it's not
actually the right thing!
2000-12-20 01:16:42 +00:00
cgd 9725bb291b __CONCAT does token pasting, not string concatnation. if something like:
__CONCAT("foo","bar");
actually works to concantate strings, it's because the preprocessor expands
it into "foo""bar" as separate strings, and then ANSI string concatenation
is performed on that.  It's more straightforward to just use ANSI string
concatenation directly, and newer GCCs complain (rightly) about misuse
of token pasting.
2000-12-20 01:03:16 +00:00
scw 9bb48d10db Pick the supported object formats in the Makefile instead of extern.h.
This gives more control of which platforms support which formats.
(Basically because __%{MACHINE}__ is not pre-defined by the compiler)
2000-12-18 08:51:39 +00:00
jdolecek 33150dda73 add support for KTR_USER records 2000-12-17 16:09:40 +00:00
jdc 88bb8fc858 Don't use curses' VB - it should be internal to libcurses.
Use tgetstr() instead.
2000-12-17 14:28:45 +00:00
lukem c3b1f98e93 replace guts of opencd() with call to opendisk(). prevents coredump
when a device with a leading / (e.g, `/dev/cd0') is given, as well as
promotes code reuse ;-)
2000-12-16 01:36:00 +00:00
lukem 8ec0002acd invoke cmdtab.c_handler()s with argv[0] == c_name instead of the
supplied name. that way the full (unambiguous) name is displayed in
error messages and usage strings.
2000-12-15 02:22:50 +00:00
itojun b206900063 try to lookup /etc/protocols for histogram 2000-12-14 20:38:10 +00:00
mrg 79a33dbcba libaudio:
- rename audio_get_sun_encoding() to audio_sun_to_encoding()
- add audio_encoding_to_sun()
play.c:
- adapt
record.c:
- convert NetBSD encoding to sun encoding if possible, otherwise don't
output a header at all.
fixes PR#10380 from Michael Eriksson <eramore@era-t.ericsson.se>.
2000-12-13 08:19:54 +00:00
simonb 36636551b6 Lift the internals of the a.out ldd, and try that if _rtld_map_object()
can't map the target as an ELF file.  Tested in hp300 and i386.
2000-12-12 11:16:02 +00:00
itojun 8b398d8448 typo in -s message 2000-12-11 17:52:43 +00:00
jdolecek ee136a8411 add support for COMPAT LKMs
constify type_names[], avoid using random data for unknown/invalid types
2000-12-10 11:52:09 +00:00
mycroft b91d3efb9a Make the fds[] realloc O(n). Also make the rethreading a lot simpler. 2000-12-05 21:57:20 +00:00
sommerfeld e65a50bf34 Boolean consistancy (use TRUE, not 1) 2000-12-05 17:07:01 +00:00
sommerfeld e3f68e5130 Make clearfd() take O(1) time instead of O(N) by moving only the last
job in the arrays to the hole made by the now-dead job.  No
measureable performance difference for -j4, but the code is simpler
this way.
2000-12-05 15:28:55 +00:00
sommerfeld b5e2403ec9 correct performance regression of recent change from select() to
poll() for parallel make:
 - Make the poll() code behave more like the select() code: sleep for
a bit waiting for output rather than busy-wait (eww).
 - Install a no-op SIGCHLD handler so that poll/select wake up early
(with -1/EINTR) when a child exits.
 - Change the default sleep time from 500ms to 5 seconds since we now
wake up promptly when a child exits.
2000-12-05 15:20:10 +00:00
wiz de67766c6a Don't strcpy the contents of an environment variable into a fixed-size
buffer, use strlcpy instead. Should fix security/11550.
2000-12-05 02:19:23 +00:00
wiz d6493c16ff Fix typos and wording. 2000-12-04 22:33:52 +00:00
christos fd8f9c7b9f oops forgot to commit this one. 2000-12-04 20:13:29 +00:00
christos 8ba1720b96 mycroft did not like my O(n^2) lookup algorithm, so I made things much
more complicated.
2000-12-04 17:45:17 +00:00
christos 105cc20925 1. switch to using poll by default; can be overriden by compiling with
-DUSE_SELECT
2. make sure that we don't overrun our allocated fd_set if USE_SELECT is defined
2000-12-03 02:19:32 +00:00
christos 709d0cf4cb add noreturn attribute to the functions that need it. 2000-12-03 02:18:14 +00:00
christos 9a19da76d7 1. the tfile patch was incorrect. If we are doing multiple jobs, we
try to open tfile many times, passing bad strings to mkstemp
2. remove extra semicolon after the MESSAGE macro
3. more error checking
4. be more careful about setting things to NULL after freeing.
5. fix a comment that does not apply anymore
2000-12-03 01:27:03 +00:00
christos 6a9332cff1 use 6 X's instead of 5 for portability. 2000-12-03 01:18:15 +00:00
aymeric 7d37aa5213 tagp[rev] -> tagpr[ev]
(tagp abbreviates tagpop)
2000-12-01 09:52:33 +00:00
simonb 828483a73e Remove extern variables and functions now declared in dkstats.h.
While here, remove 77 (!) unneed #includes.
2000-12-01 02:19:43 +00:00
simonb 198d7bfbee Don't "extern" variables and function in dkstats.c, declare them in
dkstats.h instead.
2000-12-01 02:08:26 +00:00
simonb 80bd9216d2 ANSIfy. 2000-11-30 23:59:03 +00:00
simonb 2eddffdf28 Show the vnode page cache memory usage on the "bufcache" display. 2000-11-30 12:08:13 +00:00
simonb f982391188 Use a better description for the vnode page cache pages. 2000-11-30 12:02:19 +00:00
simonb 21abd388e9 Show anonpages and vnodepages in "vmstat -s". 2000-11-30 11:50:15 +00:00
christos e8048693f8 Open only plain files [please someone add O_REG_ONLY]. Since /etc/daily
runs calendar -a, a malicious user can put a fifo in his home directory
to prevent calendar from completing. Many thanks to: dynamo@ime.net
2000-11-29 15:29:51 +00:00