phk [Wed, 13 May 1998 07:26:55 +0000 (07:26 +0000)]
The PnP code in 2.2.6 detects the Motorola ModemSurfer 56K,
but doesn't do much of anything with it. I added it to siopnp_ids[]
and it was found and recognized as a serial port.
PR: 6605
Reviewed by: phk
Submitted by: Dave Marquardt <marquard@zilker.net>
peter [Wed, 13 May 1998 06:40:56 +0000 (06:40 +0000)]
Delete the #if 0 (nearly) duplicate definitions of nfsproto.h. Having
these two files that are almost-but-not-quite the same leads to false grep
hits, confusion etc.
Only installing one copy with a symlink would be nice but that doesn't
work with SHARED=symlinks (it changes the source tree).
peter [Wed, 13 May 1998 06:10:13 +0000 (06:10 +0000)]
Hold a reference to the vnode during the sillyrename cleanup. If we block
in nfs_vinvalbuf() or the nfs_removeit(), we can have the nfsnode reallocated
from underneath us (eg: replaced by a ufs 'struct inode') which can cause
disk corruption ('freeing free block' when di_db[5] gets trashed).
This is not a cheap fix, but it'll do until the nfsnodes get reference
counting and/or locking.
Apparently NetBSD have a similar fix (apparently from BSDI).
I wish all PR's had this much useful detail. :-)
PR: 6611
Submitted by: Stephen Clawson <sclawson@marker.cs.utah.edu>
jb [Tue, 12 May 1998 22:51:34 +0000 (22:51 +0000)]
If perl exists in OBJDIR it has just been built; if it exists in
CURDIR it has been built without an obj directory; however if it is in
neither of those places, we expect it to be in DESTDIR.
Yes Bruce, I know this is broken because the host is not supposed to be
the same as the target, but we need to get the hosted build working
properly first before even attempting a cross compiled operating
system build. That will need to concept of TOOLSDIR or something that
can be mapped to DESTDIR in the case of a hosted build and set to the
installed tools in a cross compiled build. Later, later, later!
jb [Tue, 12 May 1998 22:32:03 +0000 (22:32 +0000)]
Change .if to .elif to prevent the current directory path search for a
perl executable from overriding the object directory path search where
perl is most likely to be. Most people haven't seen this because it
defaulted to /usr/bin/perl which might be OK as a fallback, but when
bootstrapping a new version (or the *first* version on alpha), we don't
really want to use /usr/bin/perl.
dyson [Tue, 12 May 1998 18:37:10 +0000 (18:37 +0000)]
Some temporary fixes to SMP to make it more scheduling and signal friendly.
This is a result of discussions on the mailing lists. Kudos to those who
have found the issue and created work-arounds. I have chosen Tor's fix
for now, before we can all work the issue more completely.
Submitted by: Tor Egge
bde [Tue, 12 May 1998 17:34:02 +0000 (17:34 +0000)]
Backed out previous commit. It is invalid to call d_ioctl() on
possibly non-open devices, and we don't want to restrict dumping
to swap devices anwyay. It is especially invalid to call d_ioctl()
in non-process context for panics. d_psize() can be called on
non-open devices, at least on non-SLICED ones that support d_dump(),
and setdumpdev() has depended on this for a long time although it
is probably wrong, but even d_psize() can't be called in non-process
context - that's why dumpsys() depends on previously computed values
although these values may be stale. The historical restriction to
devices with dkpart(dev) == SWAP_PART should go away.
bde [Tue, 12 May 1998 16:49:13 +0000 (16:49 +0000)]
Don't attempt to read process context from the kernel when (the
kernel's) curproc is null. This fixes endless recursion in
xfer_umem() for attempts to read from user addresses, in particular
for attempts to read %fs and %gs from the pcb for `info reg'.
jkh [Tue, 12 May 1998 08:02:48 +0000 (08:02 +0000)]
Go back to 240640 split size. Interesting experiment but somebody
still needs to figure out the 1.2MB floppy problem before we touch
(or possibly eliminate) this value.
bde [Mon, 11 May 1998 15:37:13 +0000 (15:37 +0000)]
Oops, the lex and yacc sources must be added to SRCS before ${SRCS}
is used in the dependency list for ${DEPENDFILE}. `make depend' was
broken for a few days. `make world' only uses `make depend' when
NOCLEAN is defined, so only a few people noticed the bug.
bde [Mon, 11 May 1998 12:11:59 +0000 (12:11 +0000)]
Fixed gross errors in previous commit. `sapipe' was used uninitialized
to attempt to unblock SIGCHLD, but we actually want to unignore SIGPIPE.
Obtained from: OpenBSD
Finished conversion from sigvec to sigaction (don't assume that sa_mask
is a scalar...). Didn't convert from sigblock to sigprocmask. Didn't
fix missing error checking for sigaction...
jb [Mon, 11 May 1998 09:33:55 +0000 (09:33 +0000)]
The yacc makefile changes don't seem to know when to generate the
header file and when not to, so for the time being make sure the
sucker gets generated up front.
jb [Mon, 11 May 1998 09:31:17 +0000 (09:31 +0000)]
Add CROSS_TARGETS to the list of GASES to build. We end up with a separate
gas for each target format. So for m68k targets that means several
gases. I wanted a m68k gas for VxWorks which uses aout in sun3 big
endian format, cross compiled on i386 under FreeBSD using libraries
supplied by DEC and intended by them for cross compilation on Alpha
under OSF/1. And it actually works!
jb [Mon, 11 May 1998 09:22:21 +0000 (09:22 +0000)]
Change the return types for strtoq and strtouq to int64_t and u_int64_t
instead of long long and unsigned long long. Really they should be
quad_t and u_quad_t, but that would require sys/types.h and this
header only includes machine/types.h. The difference here is that
int64_t and u_int64_t on alpha are long and unsigned long, not
long long etc. This is required to pass gcc's type checking where
long != long long even though they are the same size of alpha.
dyson [Mon, 11 May 1998 08:11:57 +0000 (08:11 +0000)]
Change some tests from CPU_CLASS686 to CPU_686 as appropriate, and
also correct a serious ommision that would cause process faulures
due to forgetting an invltlb type operatino. This was just a
transcription problem.
peter [Mon, 11 May 1998 07:38:42 +0000 (07:38 +0000)]
Fix PR 1607, hopefully without breaking the PR 5208 fixes.
umount() was trying to stat() the mountpoint, this would fail if the
mountpoint was a NFS mountpoint, and the fallback code would try and pass
a hostname:/dir path as the mountpoint to unmount(2), which would fail.
This whole stat() of the name supplied on the command line business is
trouble as it'll wedge on a hung NFS mount.
I'm not entirely sure why we are not simply looking up both arguments
in the mount table and doing the right thing without accessing the
filesystem. It seems that we're going to a lot of trouble to allow
mountpoints on symlinks and other wierd things.
dyson [Mon, 11 May 1998 03:55:28 +0000 (03:55 +0000)]
Fix the futimes/undelete/utrace conflict with other BSD's. Note that
the only common usage of utrace (the possible problem with this
commit) is with malloc, so this should be a real problem. Add
the various NetBSD syscalls that allow full emulation of their
development environment.
dyson [Mon, 11 May 1998 02:13:47 +0000 (02:13 +0000)]
Support better performance with P6 architectures and in SMP
mode. Unnecessary TLB flushes removed. More efficient
page zeroing on P6 (modify page only if non-zero.)
jkh [Mon, 11 May 1998 00:47:27 +0000 (00:47 +0000)]
Make Mitsumi and Sony CDROM devs also use the `a' device. I think
they'll have (or are having) similar problems to those described
for the matcd device in PR#6576
jkh [Mon, 11 May 1998 00:45:06 +0000 (00:45 +0000)]
It was incorrect to use the `c' device for the matcd driver;
apparently, unlike the IDE or SCSI CDROM drivers, this is magically
special-cased for audio CDs. This also might explain what happened
with scd (Sony) CDs also since I made the same change there. A follow-up
commit will fix that. Thanks, Dave!
PR: 6576
Submitted by: Dave Marquardt <marquard@zilker.net>
hoek [Sun, 10 May 1998 19:04:06 +0000 (19:04 +0000)]
Arg! Someone fixed the synopsis in -stable's newsyslog.8, but not
in -current. However, they fixed both the ordering and the missing -F
flag. Merge from 22 and fix ordering here, too.
bde [Sun, 10 May 1998 16:51:07 +0000 (16:51 +0000)]
Removed share/info from build-tools. It should never have been there,
and became redundant when it was put in SUBDIR, and became bogus when
WORLDTMP was introduced, and became broken when INFODIR was introduced.
bde [Sun, 10 May 1998 16:01:36 +0000 (16:01 +0000)]
Fixed missing dependencies on headers generated by rpcgen, as usual.
Removed bogus dependencies of generated .c files on generated headers.
Sorted sources lists.
Add join to the list of bootstrap tools and remove the cpp script because
we set CPP explicitly.
Ensure that the make flags are used for depends too.
After building the build tools with LMAKE (which allows installed tools
to be used), rebuild the same tools with XMAKE (which does not use
the installed tools, headers or libraries) to check that the tools can
build themselves and that there are no missing tools.
wollman [Sat, 9 May 1998 20:50:37 +0000 (20:50 +0000)]
Documentation fix: delete references to T/TCP as they are not relevant
to the case in question. (Said case being quite clearly defined by
the basic TCP specification, RFC 792.)
bde [Sat, 9 May 1998 15:10:53 +0000 (15:10 +0000)]
Fixed the usual missing dependencies on headers generated by rpcgen.
Use rpcgen's -C option, although using it for non-headers breaks K&R
support. A local copy of yp.h is built to avoid adding
-I/usr/include/rpcsvc to CFLAGS. This version of yp.h differed from
<rpcsvc/yp.h> only in not declaring prototypes.
bde [Sat, 9 May 1998 12:14:18 +0000 (12:14 +0000)]
Fixed overflow in sysinit enum constants. In that little-used
language, ANSI C, enum constants must be representable as ints.
We assumed at-least-33-bit ints. This worked on some 32-bit
systems because we don't mix negative sysinit enum constants with
too-large sysinit enum constants, and the compiler used an unsigned
32-bit type for sysinit enum variables, so sysinit enum variables
were sorted correctly. The fix lops off 4 hopefully-unused bits
so that we now only assume at-least-29-bit ints.
bde [Sat, 9 May 1998 11:32:43 +0000 (11:32 +0000)]
Fixed `make -j9' by putting generated headers in ${SRCS}. Removed bogus
dependencies of generated .c files on generated headers (these made
`make -JN' work provided `depend' was made first). Sorted sources lists.