sheldonh [Wed, 29 Mar 2000 17:22:10 +0000 (17:22 +0000)]
Fix buffer overflow copying the ``kernel'' command-line argument into
buffers. The buffers have been resized from the irrelevant BUFSIZ
to the more relevant MAXPATHLEN + 1.
kato [Wed, 29 Mar 2000 13:45:40 +0000 (13:45 +0000)]
PC-98 BIOS copies the DX register into its work area. The value of it
shows `CPUID' and it is useful to identify CPU. So, it is copied from
BIOS work area to the cpu_id variable (PC-98 only).
kato [Wed, 29 Mar 2000 12:44:19 +0000 (12:44 +0000)]
Ratoc REX-9880/83 support (PC-98 only). This commit added functions
fe_read_eeprom_rex() and fe_init_rex(). These functions should be
useful for REX-5580 series (for PC-AT). But they are included in
`#ifdef PC98' to avoid warnings by unused static functions. If you
try to support REX-5580, please be aware of these functions.
brian [Wed, 29 Mar 2000 09:31:27 +0000 (09:31 +0000)]
Allow the use of hostnames instead of (and as well as) IP
numbers in all commands.
If people use hostnames and have dodgy resolvers or try to resolve
the hostname before the link is up, they get what they deserve....
joerg [Wed, 29 Mar 2000 07:50:39 +0000 (07:50 +0000)]
Peter Johnson found another log() call without a trailing newline.
All three of them have been introduced in rev 1.64, so i guess i've
got all of them now. :)
dillon [Wed, 29 Mar 2000 06:15:43 +0000 (06:15 +0000)]
The SMP cleanup commit broke need_resched, this fixes that and also
removed unncessary MPLOCKED and 'lock' prefixes from the interrupt
nesting level, since (A) the MP lock is held at the time, and (B) since
the neting level is restored prior to return any interrupted code
will see a consistent value.
jlemon [Wed, 29 Mar 2000 05:39:04 +0000 (05:39 +0000)]
Change the mbuf size from 128 -> 256. Increasing the mbuf header size
caused some headers not to fit in MHLEN any more. This matches the
current size on the alpha, so it shouldn't cause problems.
Problem observed by: Geoff Rehmet <geoff@is.co.za>
Originally suggested by: shin
kato [Wed, 29 Mar 2000 03:15:22 +0000 (03:15 +0000)]
Added indirect pio into the bus space stuff for the NEC PC-98. bus.h
includes one of bus_at386.h and bus_pc98.h. Becuase only bus_pc98.h
supports indirect pio and bus_at386.h is identical to old bus.h, there
is no functional change in PC-AT's kernels. That is, it cannot cause
performance loss.
Submitted by: nyan
Reviewed by: imp
bde and luoqi provided useful comments for earlier version.
joerg [Tue, 28 Mar 2000 21:14:35 +0000 (21:14 +0000)]
Added two missing newlines in calls to log(9).
Reported in Usenet by: locke@mcs.net (Peter Johnson)
While i was at it, prepended a 0x to the %D output, to make it clear that
the printed value is in hex (i assume %D has been chosen over %#x to
obey network byte order).
cg [Tue, 28 Mar 2000 18:31:01 +0000 (18:31 +0000)]
split up ess and sb code
rewrite ess mixer to use native registers
rewrite play/rec code to use more accurate timer when available
add code to use audio2 for playback, but disable it as no irqs are generated
n_hibma [Tue, 28 Mar 2000 17:38:00 +0000 (17:38 +0000)]
Revert to a static value for the timeout. The timeout was supposedly
to be based on the transfer speed, but I got it all wrong. The by far
biggest factor in the timeout is the start of a removable device, which
is about 2 seconds anyway.
cwt [Tue, 28 Mar 2000 17:28:56 +0000 (17:28 +0000)]
Clarify the disposition of hosts.deny and provide a logically
consistent portmap example rule.
Reviewed by: obrien, markm
Obtained-good-ideas from: obrien
sheldonh [Tue, 28 Mar 2000 15:54:32 +0000 (15:54 +0000)]
Back out the new advice introduced in the previous commit, which at
least one reviewer is now unhappy with, since it contains incomplete
and misleading advice that is not easy to correct.
The net effect of this commit and the previous commit is to simply
remove all discussion of setting dumpdev to catch crash dumps
prior to entering user mode.
ache [Tue, 28 Mar 2000 11:46:40 +0000 (11:46 +0000)]
Back out valid argument domain change - sneak to this function by error.
Reword test condition better. Previous variant was true for negative
characters too.
hm [Tue, 28 Mar 2000 09:32:29 +0000 (09:32 +0000)]
pcvt cleanup.
after cleaning up pcvt_ioctl.h (and ispcvt) adjust kernel part
again to get everything in sync again (name, minor release no.
and major release no.)
hm [Tue, 28 Mar 2000 09:21:05 +0000 (09:21 +0000)]
pcvt cleanup.
add $FreeBSD.
get copyright in sync with FreeBSD recommendation.
remove obsolete stuff resuling from pcvt kernel part cleanup
(caution: this depends in part on modifications to pcvt_ioctl.h,
commit will follow shortly).
add new option "-n" to ispcvt to get number of compiled-in
virtual screens.
dillon [Tue, 28 Mar 2000 07:16:37 +0000 (07:16 +0000)]
Commit major SMP cleanups and move the BGL (big giant lock) in the
syscall path inward. A system call may select whether it needs the MP
lock or not (the default being that it does need it).
A great deal of conditional SMP code for various deadended experiments
has been removed. 'cil' and 'cml' have been removed entirely, and the
locking around the cpl has been removed. The conditional
separately-locked fast-interrupt code has been removed, meaning that
interrupts must hold the CPL now (but they pretty much had to anyway).
Another reason for doing this is that the original separate-lock for
interrupts just doesn't apply to the interrupt thread mechanism being
contemplated.
Modifications to the cpl may now ONLY occur while holding the MP
lock. For example, if an otherwise MP safe syscall needs to mess with
the cpl, it must hold the MP lock for the duration and must (as usual)
save/restore the cpl in a nested fashion.
This is precursor work for the real meat coming later: avoiding having
to hold the MP lock for common syscalls and I/O's and interrupt threads.
It is expected that the spl mechanisms and new interrupt threading
mechanisms will be able to run in tandem, allowing a slow piecemeal
transition to occur.
This patch should result in a moderate performance improvement due to
the considerable amount of code that has been removed from the critical
path, especially the simplification of the spl*() calls. The real
performance gains will come later.
Approved by: jkh
Reviewed by: current, bde (exception.s)
Some work taken from: luoqi's patch
imp [Tue, 28 Mar 2000 06:59:46 +0000 (06:59 +0000)]
Normally I don't put entries that should have been made months ago
into UPDATING. However, in this case I'm making an exception. I'm
adding a recommendation that people update their boot blocks. Old
boot blocks will cause a system to become unbootable if you have
removed /dev/{,r}wd*.
dg [Tue, 28 Mar 2000 04:41:42 +0000 (04:41 +0000)]
Added support for cards and on-motherboard NICs that use an SEEPROM
address size that is different than the standard 6bits. This fixes
support for the Compaq NC3121 card, certain newer Intel Pro/100+
cards, and should also fix integrated NICs on SuperMicro and Compaq
motherboards.
The auto-sizing algorithm was taken from NetBSD (thanks!), which I
think got it from Linux originally.
Thanks also to Andrew Sparrow <spadger@best.com> and Joe Moore
<jomor@ahpcns.com> for supplying me with unworking Compaq and Intel
cards to develop and test the fixes with.
jhb [Tue, 28 Mar 2000 01:19:53 +0000 (01:19 +0000)]
Mega i386 loader commit.
- Don't hard code 0x10000 as the entry point for the loader. Instead add
src/sys/boot/i386/Makefile.inc which defines a make variable with the
entry point for the loader. Move the loader's entry point up to
0x20000, which makes PXE happy.
- Don't try to use cpp to parse btxldr for the optional BTXLDR_VERBOSE,
instead use m4 to achieve this. Also, add a BTXLDR_VERBOSE knob in the
btxldr Makefile to turn this option on.
- Redo parts of cdldr's Makefile so that it now builds and installs cdboot
instead of having i386/loader/Makefile do that. Also, add in some more
variables to make the pxeldr Makefile almost identical and thus to ease
maintainability.
- Teach cdldr about the a.out format. Cdldr now parsers the a.out header
of the loader binary and relocates it based on that. The entry point of
the loader no longer has to be hardcoded into cdldr. Also, the boot
info table from mkisofs is no longer required to get a useful cdboot.
- Update the lsdev function for BIOS disks to parse other file systems
(such as DOS FAT) that we currently support. This is still buggy as
it assumes that a floppy with a DOS boot sector actually has a MBR and
parses it as such. I'll be fixing this in the future.
- The biggie: Add in support for booting off of PXE-enabled network
adapters. Currently, we use the TFTP API provided by the PXE BIOS.
Eventually we will switch to using the low-level NIC driver thus
allowing both TFTP and NFS to be used, but for now it's just TFTP.
Submitted by: ps, alfred
Testing by: Benno Rice <benno@netizen.com.au>
dillon [Mon, 27 Mar 2000 21:38:35 +0000 (21:38 +0000)]
Add a sysctl to specify the amount of UDP receive space NFS should
reserve, in maximal NFS packets. Originally only 2 packets worth of
space was reserved. The default is now 4, which appears to greatly
improve performance for slow to mid-speed machines on gigabit networks.
Add documentation and correct some prior documentation.
Problem Researched by: Andrew Gallatin <gallatin@cs.duke.edu>
Approved by: jkh
dillon [Mon, 27 Mar 2000 21:33:32 +0000 (21:33 +0000)]
Add necessary spl protection for swapper. The problem was located by
Alfred while testing his SPLASSERT stuff. This is not a complete fix,
more protections are probably needed.
dillon [Mon, 27 Mar 2000 21:29:33 +0000 (21:29 +0000)]
Commit the buffer cache cleanup patch to 4.x and 5.x. This patch fixes a
fragmentation problem due to geteblk() reserving too much space for the
buffer and imposes a larger granularity (16K) on KVA reservations for
the buffer cache to avoid fragmentation issues. The buffer cache size
calculations have been redone to simplify them (fewer defines, better
comments, less chance of running out of KVA).
The geteblk() fix solves a performance problem that DG was able reproduce.
This patch does not completely fix the KVA fragmentation problems, but
it goes a long way
Mostly Reviewed by: bde and others
Approved by: jkh