- Attempt to handle PCI devices where the interrupt is
an ISA/EISA interrupt according to the mp table.
- Attempt to handle multiple IO APIC pins connected to
the same PCI or ISA/EISA interrupt source. Print a
warning if this happens, since performance is suboptimal.
This workaround is only used for PCI devices.
With these two workarounds, the -SMP kernel is capable of running on
my Asus P/I-P65UP5 motherboard when version 1.4 of the MP table is disabled.
Temporary fix for problems that occur if CFLAGS=-g is added to
/etc/make.conf. The tools can't handle generating debug code where
we fiddle with the ELF segments.
jmz [Tue, 31 Mar 1998 01:56:29 +0000 (01:56 +0000)]
Add an ioctl to retrieve the next writable address.
Defer the WRITE SESSION command until the first write command, so that
it works like the prepare track command, allowing the device to be
closed after the command.
kato [Mon, 30 Mar 1998 12:36:16 +0000 (12:36 +0000)]
- Use existing file (psm.c) though the driver does not work under
PC-98 arch.
- Merge the change in sys/i386/conf/files.i386 revision from 1.187 to
1.188.
phk [Mon, 30 Mar 1998 09:56:58 +0000 (09:56 +0000)]
Eradicate the variable "time" from the kernel, using various measures.
"time" wasn't a atomic variable, so splfoo() protection were needed
around any access to it, unless you just wanted the seconds part.
Most uses of time.tv_sec now uses the new variable time_second instead.
gettime() changed to getmicrotime(0.
Remove a couple of unneeded splfoo() protections, the new getmicrotime()
is atomic, (until Bruce sets a breakpoint in it).
A couple of places needed random data, so use read_random() instead
of mucking about with time which isn't random.
Add a new nfs_curusec() function.
Mark a couple of bogosities involving the now disappeard time variable.
Update ffs_update() to avoid the weird "== &time" checks, by fixing the
one remaining call that passwd &time as args.
Change profiling in ncr.c to use ticks instead of time. Resolution is
the same.
Add new function "tvtohz()" to avoid the bogus "splfoo(), add time, call
hzto() which subtracts time" sequences.
jdp [Mon, 30 Mar 1998 02:21:27 +0000 (02:21 +0000)]
Give up on a.out support in binutils. It has too many problems to
be worth much effort. Install all i386 binutils programs in
"/usr/libexec/elf". Disable a.out support in libbfd. It's too
dangerous to leave it in. Some of the utilities think they can
handle a.out, but they generate bad object files.
obrien [Sun, 29 Mar 1998 23:41:51 +0000 (23:41 +0000)]
Add NTFS partition type.
Add "." at the end of some sentances.
Also print "flag 80" in English.
Give hint that "sysid" for FreeBSD is 165 decimal.
Ensure active partition specified by user is 1-4.
dyson [Sun, 29 Mar 1998 18:23:44 +0000 (18:23 +0000)]
Correct a significant problem with the softupdates port. Allow fsync
to work properly within the softupdates framework, and thereby eliminate
some unfortunate panics.
jdp [Sun, 29 Mar 1998 01:38:39 +0000 (01:38 +0000)]
Add support for the AT&T style "fildll" and "fistpll" mnemonics.
These are equivalent to "fildq" and "fistpq" respectively. This
fixes the bad floating point object code that resulted after recent
changes in the compiler.
Test driven by: "Mike Burgett" <mburgett@awen.com>,
Amancio Hasty <hasty@rah.star-gate.com>
imp [Sat, 28 Mar 1998 06:42:43 +0000 (06:42 +0000)]
Add us.unix.kbd. Just like us.iso.kbd except:
ESCAPE and `~ are swapped
CTRL and CAPS LOCK are swapped
BACKSPACE and DELETE are swapped
Suitable for keymap=us.unix in your rc.conf file or for setting on the
fly with kbdcontrol -l us.unix. This is the keyboard layout of many of
the more traditional unix workstations and terminals that have been around
for a very long time. Older Sun keyboards and VT100's had a layout
very similar to the PC, with the above exceptions.
Idea Reviewed by: Many people in -hackers
peter [Fri, 27 Mar 1998 18:08:08 +0000 (18:08 +0000)]
When building in in the kernel rather than as a LKM, don't compile
all the LKM load/unload junk, and don't forget to register the SYSINIT
so that the cdevsw entry is attached.
BTW: I think the way it builds it's /dev nodes on the fly as an LKM with
vnode ops is kinda cute - I guess that'd be one way to solve the devfs
persistance problems.. :-) (ie: have the drivers make the nodes in /dev
on disk directly if they are missing, but leave them alone if present).
peter [Fri, 27 Mar 1998 14:20:57 +0000 (14:20 +0000)]
Enable the use of soft updates on the root filesystem. Previously, the
softdep mode could only be activated on the initial mount of a filesystem
and then only if it was a read-write mount. A 'mount -r' (as done in the
rootfs mount) followed by a 'mount -u' to convert to read-write didn't
start softdep mode.
bde [Fri, 27 Mar 1998 11:13:47 +0000 (11:13 +0000)]
Removed yacc output files so that it is impossible to mix them with
new ones that we generate. We used to always mix the old header with
the new .cc file. This worked because Cygnus's yacc is surprisingly
compatible with our yacc.
markm [Thu, 26 Mar 1998 18:15:00 +0000 (18:15 +0000)]
KTH announced a weakness in their implementation of KerberosIV.
FreeBSD was not vulnerable, but their fix had some useful features.
Incorporate the best of those - rcp(1) no longer needs to be SUID
to root.
markm [Thu, 26 Mar 1998 18:03:41 +0000 (18:03 +0000)]
Quite a while back KTH (who are the good folks who wrote our KerberosIV)
announced a K4 weakness with their rsh/rlogins. We were not put in any
danger by this, as we were not using KTH rlogin/rsh, but the patches
in themselves, had some good points. This lot means we can run our
rlogin without it being SUID root. Win win win. There are other KTH
cleanups as well.
peter [Wed, 25 Mar 1998 14:28:28 +0000 (14:28 +0000)]
Quieten a debug message.. This happens under "normal" operation by 4 bytes
on a frequent enough rate to be annoying. There is a real bug somewhere,
but it looks harmless enough.
wollman [Tue, 24 Mar 1998 18:06:34 +0000 (18:06 +0000)]
Use the zone allocator to allocate inpcbs and tcpcbs. Each protocol creates
its own zone; this is used particularly by TCP which allocates both inpcb and
tcpcb in a single allocation. (Some hackery ensures that the tcpcb is
reasonably aligned.) Also keep track of the number of pcbs of each type
allocated, and keep a generation count (instance version number) for future
use.