Commit Graph

29224 Commits

Author SHA1 Message Date
Peter Wemm
452bbab387 Urgent fix for bootstrap target. If the old symlinks are pointing to the
real source tree, the bootstrap target would attempt have cpio copy the
files over themselves, unlinking them first.  I think this only happened
with make -DNOCLEAN world at the transition between a symlinked
objdir/tmp/usr/include/{sys,net,..} and real files.
1998-05-28 12:31:42 +00:00
Poul-Henning Kamp
e796e00de3 Some cleanups related to timecounters and weird ifdefs in <sys/time.h>.
Clean up (or if antipodic: down) some of the msgbuf stuff.

Use an inline function rather than a macro for timecounter delta.

Maintain process "on-cpu" time as 64 bits of microseconds to avoid
needless second rollover overhead.

Avoid calling microuptime the second time in mi_switch() if we do
not pass through _idle in cpu_switch()

This should reduce our context-switch overhead a bit, in particular
on pre-P5 and SMP systems.

WARNING:  Programs which muck about with struct proc in userland
will have to be fixed.

Reviewed, but found imperfect by:       bde
1998-05-28 09:30:28 +00:00
Julian Elischer
4a71a2e71b Use AF_LINK rather than AF_UNSPEC to set an ethernet multicast address.
This is obviously  not a terribly used function as it's apparently been
broken forever.
It IS possible that this fix is wrong and that the KERNEL is wrong
(in which case you should fix if_ethersubr.c) either way it certainly has more hope of
working now than before. I'd take it to 2.2 except that obviously no-one cares :-)
1998-05-28 07:31:30 +00:00
Peter Wemm
c17155d44b Grumble Grumble.. so this is how src/sys/ufs/lfs kept coming back... The
mtree in make world was following symlinks and creating directories in the
source tree and causing cvs to break (since CVS/Entries was missing).
1998-05-28 06:59:50 +00:00
Daniel O'Callaghan
e72acbba84 Reviewed by: Peter Hawkins <thepish@FreeBSD.org>
Add s and w flags to show duration in or with seconds.
1998-05-28 00:58:29 +00:00
Brian Somers
0f78c7a7ea Don't assume stdout is a tty in interactive mode
Analyzed by: dmaddox@scsn.net (Donald J. Maddox)
1998-05-27 22:43:37 +00:00
John Hay
73cdb7fd38 Correctly display the interrupt counts.
Reviewed with optimizations by:	Tor Egge <tegge>
1998-05-27 21:01:37 +00:00
Peter Wemm
6f9fb94ec8 Replace the partial symlink tree to src/sys/* in $OBJDIR/tmp/usr/include
with real copies.  I'm sick of !@#&!^!@#*& mtree chowning directories in
my src/sys/* tree after it follows the symlinks.  I still believe that
mtree is broken for doing this (introduced in mtree.c rev 1.5).
1998-05-27 18:50:01 +00:00
Peter Wemm
c932f88612 If building and installing libdescrypt, do it first so that the symlinks
point to it rather than libscrypt.

This was how it was done prior to libscrypt being added in.  This should
stop more people getting burnt with the /usr/lib -> /usr/lib/aout
transition, and the same when the ELF libs come online.
1998-05-27 18:42:36 +00:00
Peter Wemm
989c137029 If we are logging into a cvs pserver with the username of "anoncvs",
and we have not done an explicit 'cvs login', then use a default password
of "anoncvs".  This allows things like:
  setenv CVSROOT :pserver:anoncvs@anoncvs.freebsd.org:/cvs
  cvs checkout src  (without doing the normal 'cvs login' for pserver mode)
but this runs over the :pserver: protocol rather than the more troublesome
rsh.  Naturally, the server had better be running in -R (readonly) mode :-)
1998-05-27 16:55:49 +00:00
Peter Wemm
090fc16472 On the other hand, when /usr/bin/as is really a link to objformat, it's not
helpful to stop it running /usr/libexec/aout/as for real while bootstrapping.
Only force a strict path when we really have built all the tools in
$OBJDIR/tmp/usr/libexec/*.
1998-05-27 16:33:43 +00:00
Peter Wemm
0e202e40d7 Make cvs really ignore a pserver password when the passwd field of the
CVSROOT/passwd file is empty.  A 'cvs login' still seems to be required
since the cvs client doesn't seem to believe it's possible to not need
a password (yet :-).  This is intended for cheap anoncvs use.
1998-05-27 16:27:18 +00:00
Peter Wemm
41f4688892 It would help if it compiled. *blush* 1998-05-27 16:00:55 +00:00
Peter Wemm
e27b6961ff Convert to more canonical format.. It seems that both Soren and I were
working on this in parallel.. :-(
1998-05-27 15:43:24 +00:00
Peter Wemm
1907cbbd35 Move objformat after binutils, otherwise we get chicken/egg problems when
building ELF.  It may be that binutils and objformat need to both be moved
earlier in the list though, but that can wait till the dust settles.
1998-05-27 15:40:35 +00:00
Peter Wemm
07870b45ae Add a new long flag that causes cvs to ignore the CVSROOT/passwd file.
This is mostly intended for use on freefall where we'd like to provide
a passwd file for easy anoncvs mirroring access, but don't want to open
up the pserver on freefall itself.

While here, some initial tweaks intended for allowing an empty pserver
password.  I'm not sure that this works yet.
1998-05-27 15:26:12 +00:00
Peter Wemm
f07a3e4e23 Remove my hacks for capturing stdout/stderr through the protocol channel
while calling libdiff.  It's too ugly and not worth the recursion problems
when there is a malloc failure (which writes to stderr - now diverted via
the buf system, which calls malloc, which causes another error message etc).

We can live with the standard artificial slowdown, but reduce the time a
bit and only delay when we really need to (ie: when running as a server).
The usleep time could probably use some tuning, it basically needs to
replace the time that it used to take to fork a large process, exec gnudiff
and the time that gnudiff took before writing the initial output.

This eliminates a whole mess of other hacks I was considering that changed
use of xmalloc to alloca() etc.  It was going too fast in the wrong
direction.
1998-05-27 15:19:23 +00:00
Dag-Erling Smørgrav
068f8619d0 Typo police. '#ifndef lint' around CVS id. Don't use __progname in usage().
Submitted by:	Philippe Charnier <charnier@xp11.frmug.org>
1998-05-27 14:04:38 +00:00
Joseph Koshy
dce52a9c00 Install ${DESTDIR}/boot.help during `make distribution'.
PR: 6063
Submitted by: Doug <Studded@dal.net>
1998-05-27 12:13:18 +00:00
Joseph Koshy
e44af4db8d Correct manual page, based on feedback from Bruce Evans.
Reviewed by: Bruce Evans <bde@freebsd.org>
1998-05-27 11:05:59 +00:00
Paul Richards
aa6b464e36 Fix some bitrot in the multicast support, the move from TAILQ macros wasn't implemented fully. 1998-05-27 11:05:17 +00:00
Paul Richards
697990295f This time add an Id string that'll actually get expanded :-) 1998-05-27 09:59:13 +00:00
Paul Richards
f0a5342dc5 Add an ID string (can't believe it never had one!) 1998-05-27 09:58:00 +00:00
Poul-Henning Kamp
5734ac28b4 "make world" replaces /bin/rmail even when NO_SENDMAIL has been set to
true in /etc/make.conf.  Both qmail and smail use a different rmail, so
replacing rmail is a Bad Thing.

PR:		6762
Reviewed by:	phk
Submitted by:	Bill Trost <trost@cloud.rain.com>
1998-05-27 09:25:22 +00:00
Søren Schmidt
4ac3e074c1 Install in /usr/lib/aout 1998-05-27 08:06:33 +00:00
Søren Schmidt
dfd93f4d1d Compile & use objformat as it was intended to, I have no idea why
that failed for me before :(
1998-05-27 07:59:37 +00:00
Jordan K. Hubbard
3081c7cd68 Don't use absolute path.
Submitted by:	jhay
1998-05-27 07:39:05 +00:00
Julian Elischer
b8cf4de4c8 A fix to a debug test from Kirk. 1998-05-27 03:32:23 +00:00
Jonathan M. Bresler
fa294d55ea accidently omitted two file declarations.
so i added them.

Submitted by:	Scot Elliott (scot@poptart.org)
1998-05-27 01:26:33 +00:00
John Birrell
01029f8f17 Make a copy of the caller's iovec array, mallocing if necessary,
and modify that if the writev() syscall does not completely write
all bytes in a single call.
1998-05-27 00:44:58 +00:00
John Birrell
b46dfe97ae Remove error check from call to set the file descriptor to non-blocking
instead of explicitly ignoring some errors. This allows for the case
where a device is naturally non-blocking.
1998-05-27 00:41:22 +00:00
Bill Paul
d31f26f41e Ignore 'invalid' interrupts that occur while the interface is down.
These are probably generated by other PCI devices sharing the TLAN's
interrupt. The programmer's guide says to simply re-enable interrupts
and return if one of these is detected.

Prompted by bug report from: Bill Fenner
1998-05-26 23:42:24 +00:00
Søren Schmidt
cabb97dcbf ELF preparation step 2:
Move a.out libraries to /usr/lib/aout to make space for ELF libs.
Make rtld usr /usr/lib/aout as default library path.
Make ldconfig reject /usr/lib as an a.out library path.
Fix various Makefiles for LIBDIR!=/usr/lib breakage.

This will after a make world & reboot give a system that no
longer uses /usr/lib/*, infact one could remove all the old
libraries there, they are not used anymore.

We are getting close to an ELF make world, but I'll let this
all settle for a week or two...
1998-05-26 20:12:56 +00:00
Søren Schmidt
bcd26b5b67 Get owner/group/modes right 1998-05-26 12:27:37 +00:00
David Greenman
d311884fb6 Fixed logic in the test to drop ICMP echo and timestamp packets when
net.inet.ip.icmp.bmcastecho = 0 by removing the extra check for the
address being a multicast address. The test now relies on the link
layer flags that indicate it was received via multicast. The previous
logic was broken and replied to ICMP echo/timestamp broadcasts even
when the sysctl option disallowed them.
Reviewed by:	wollman
1998-05-26 11:34:30 +00:00
Søren Schmidt
8d46441ba4 Oops, remember CFLAGS...
Also compile directly to the target on install.
1998-05-26 06:51:28 +00:00
Daniel O'Callaghan
c6a24f8623 PR: 1904
Abort if given uname is > MAXLOGNAME-1
1998-05-26 06:39:08 +00:00
Steve Price
14d8151513 Remove a couple style bugs from the code snippet that
slipped in on the previous commit.

Submitted by:	bde
1998-05-26 02:53:06 +00:00
Jonathan M. Bresler
29c98bc624 code was using wrong temporary variable "i", in place of "j".
i contains the contents of the EP_W0_CONFIG_CTRL register.
	i was being used as the array index into an array on the stack.

	j is initialized to 0 as it should be.

PR:		kern/6757
Reviewed by:	jmb
Submitted by:	Stephane E. Potvin <sepotvin@videotron.ca>
1998-05-26 02:28:18 +00:00
Steve Price
423bac3e47 "EOF of file..." is written to stderr and not stdout.
PR:		6756
1998-05-26 00:39:12 +00:00
Steve Price
191b38b5fa Don't append a '/' to the destination directory if there
is already one there.

PR:		3025
1998-05-25 22:44:16 +00:00
John Birrell
e5a8a007e1 When doing a blocking write, keep looping until all the bytes are
written without returning to the caller. This only occurs on pipes
where either the number of bytes written is greater than the pipe
buffer or if there is insufficient space in the pipe buffer because the
reader is reading slower than the writer is writing.
1998-05-25 21:45:52 +00:00
Steve Price
de285a13cc Update code example to reflect current practice. 1998-05-25 21:42:51 +00:00
Bill Fenner
039d6aa45a Use select() timeouts instead of SIGALRM to schedule packet transmission.
Fixes bin/6649 and removes the last abusive signal handler.
Use SO_TIMESTAMP to get the kernel to timestamp packets on reception.
 Fixes bin/5658 and provides slightly better accuracy.
Explicitly zero and terminate the IP options when using -R.

PR:		bin/5658
PR:		bin/6649
1998-05-25 20:16:05 +00:00
Steve Price
ceed3816a0 Norwegian dates should have a dot after day of month.
PR:		6749
Submitted by:	Hans Petter Bieker <zerium@webindex.no>
1998-05-25 18:51:47 +00:00
Søren Schmidt
77dfb966d9 ELF preparation step 1:
Move our old a.out utils to /usr/libexec/aout.
Enable binutils and put the utils in /usr/libexec/elf
Enable objformat, a little helper program that calls the right
utils based on /etc/objformat and $OBJFORMAT.

This will enable the ELF generating tools.
Remember that this is only step one, the system is still compiled
and run in a.out format ONLY.

Problem left to solve: The BSD manpages wins over the GNU equivalents
as the are installed last. We need to distinguish between the manpages
somehow...
1998-05-25 17:34:42 +00:00
Søren Schmidt
e793c690a0 Only compile on install. 1998-05-25 15:00:49 +00:00
Søren Schmidt
8d2cfc044c Make objformat DTRT when in the make world environment. 1998-05-25 14:42:22 +00:00
Dag-Erling Smørgrav
7ac237e80f Back out Steve's fix, as this was already fixed by me in revision 1.6 1998-05-25 12:04:47 +00:00
Julian Elischer
bb60f459a0 Add optional code to change the way that divert and ipfw work together.
Prior to this change, Accidental recursion protection was done by
the diverted daemon feeding back the divert port number it got
the packet on, as the port number on a sendto(). IPFW knew not to
redivert a packet to this port (again). Processing of the ruleset
started at the beginning again, skipping that divert port.

The new semantic (which is how we should have done it the first time)
is that the port number in the sendto() is the rule number AFTER which
processing should restart, and on a recvfrom(), the port number is the
rule number which caused the diversion. This is much more flexible,
and also more intuitive. If the user uses the same sockaddr received
when resending, processing resumes at the rule number following that
that caused the diversion. The user can however select to resume rule
processing at any rule. (0 is restart at the beginning)

To enable the new code use

option	IPFW_DIVERT_RESTART

This should become the default as soon as people have looked at it a bit
1998-05-25 10:37:48 +00:00