sos [Wed, 26 Jun 1996 13:04:53 +0000 (13:04 +0000)]
Fixed bug in pasting 8bit char (ache).
Added linefeeds in cuts that extend beyond one line.
Prepared for the mousefunctions to be used in nontext modes.
dyson [Wed, 26 Jun 1996 05:52:15 +0000 (05:52 +0000)]
Fix a problem that caused system crashes after physio. This problem
was due to non-aligned 64K transfers taking 17 pages. We currently
do not support >16 page transfers. The transfer is unfortunately truncated,
but since buffers are usually malloced, this is a problem only once in
a while. Savecore is a culprit, but tar/cpio usually aren't. This
is NOT the final fix (which is likely a bouncing scheme), but will at
least keep the system from crashing.
dyson [Wed, 26 Jun 1996 05:39:27 +0000 (05:39 +0000)]
This commit does a couple of things:
Re-enables the RSS limiting, and the routine is now tail-recursive,
making it much more safe (eliminates the possiblity of kernel stack
overflow.) Also, the RSS limiting is a little more intelligent about
finding the likely objects that are pushing the process over the limit.
Added some sysctls that help with VM system tuning.
New sysctl features:
1) Enable/disable lru pageout algorithm.
vm.pageout_algorithm = 0, default algorithm that works
well, especially using X windows and heavy
memory loading. Can have adverse effects,
sometimes slowing down program loading.
vm.pageout_algorithm = 1, close to true LRU. Works much
better than clock, etc. Does not work as well as
the default algorithm in general. Certain memory
"malloc" type benchmarks work a little better with
this setting.
Please give me feedback on the performance results
associated with these.
vm.swapping_enabled = 0, useful for cases where swapping
degrades performance.
The config option "NO_SWAPPING" is still operative, and
takes precedence over the sysctl. If "NO_SWAPPING" is
specified, the sysctl still exists, but "vm.swapping_enabled"
is hard-wired to "0".
wpaul [Tue, 25 Jun 1996 20:26:38 +0000 (20:26 +0000)]
(This import had better work correctly or so help me I'll move to
the Himalayas and become a hermit.)
Import new mknetid program. This replaces the crufty, soon to be defunct
mknetid script packaged with ypserv.
This program parses the group, passwd, hosts and netid databases into
the netid.byname map. Duplicate checking is performed using hash tables.
Testing on my 486DX2/66 with FreeBSD 2.1.0 showed that this program can
process a 30,000-entry passwd database into a netid map (along with
assorted group and hosts information) in about 22 seconds. On my SPARC IPX
with SunOS 4.1.3, it takes about 15 seconds. This compares favorably with
the SunOS mknetid program, which parses the same database(s) in 13 seconds.
(With smaller databases, my program is actually slightly faster. Go
figure.)
bde [Tue, 25 Jun 1996 20:13:12 +0000 (20:13 +0000)]
Fixed the `machine' link. It pointed to the wrong place, and was created
too late to be used in all cases. It should probably be created (early)
in bsd.kmod.mk for all LKMs.
Use cc instead of cpp | as for the same reasons as in the kernel makefile.
CFLAGS isn't split up as well as in the kernel makefile, but cc doesn't
pass compiler warning flags to cpp, so there is no need to split it.
bde [Tue, 25 Jun 1996 20:02:16 +0000 (20:02 +0000)]
trap.c:
Fixed profiling of system times. It was pre-4.4Lite and didn't support
statclocks. System times were too small by a factor of 8.
Handle deferred profiling ticks the 4.4Lite way: use addupc_task() instead
of addupc(). Call addupc_task() directly instead of using the ADDUPC()
macro.
Removed vestigial support for PROFTIMER.
switch.s:
Removed addupc().
resourcevar.h:
Removed ADDUPC() and declarations of addupc().
cpu.h:
Updated a comment. i386's never were tahoe's, and the deferred profiling
tick became (possibly) multiple ticks in 4.4Lite.
bde [Tue, 25 Jun 1996 19:25:25 +0000 (19:25 +0000)]
Save John Polstra's initial fix for profiling for reference. The
multiplication in addupc() overflowed for addresses >= 256K, assuming
the usual profil(2) scale parameter of 0x8000. addupc() will go away
soon.
bde [Tue, 25 Jun 1996 18:54:42 +0000 (18:54 +0000)]
Fixed comparisons so that preposterously large (>= 0x80000000) brk values
aren't silently converted to minbrk. This stops malloc(INT_MAX) from
dumping core. Small values are still silently converted. They should
be an error. sbrk() doesn't do any range checking or conversions or
overflow checking.
Moved PIC_EPILOGUE invocation to a more natural place where it
obviously doesn't interfere with the comparison.
sos [Tue, 25 Jun 1996 08:54:57 +0000 (08:54 +0000)]
Change the way moused talk to syscons, now its only delivering mouseevents
via an ioctl (MOUSE_ACTION).
Fixed a couple of bugs (destructive cursor, uncut, jitter).
Now applications can use the mouse via the MOUSE_MODE ioctl, its
possible to have a signal sent on mouseevents, makeing an event loop
in the application take over mouseevents.
alex [Tue, 25 Jun 1996 00:22:20 +0000 (00:22 +0000)]
Allow fragment checking to work with specific protocols.
Reviewed by: phk
Reject the addition of rules that will never match (for example,
1.2.3.4:255.255.255.0). User level utilities specify the policy by either
masking the IP address for the user (as ipfw(8) does) or rejecting the
entry with an error. In either case, the kernel should not modify chain
entries to make them work.
jkh [Mon, 24 Jun 1996 04:26:21 +0000 (04:26 +0000)]
Bring in my changes for removing the pestilent obj links (unless you
really want them) from /usr/src. This is the final version of the
patches, incorporating the feedback I've received from -current.
alex [Sun, 23 Jun 1996 20:47:51 +0000 (20:47 +0000)]
Fix address mask calculation when using ':' syntax. Allow a mask
of /0 to have the desired effect. Normalize IP addresses that
won't match a given mask (i.e. 1.2.3.4/24 becomes 1.2.3.0/24).
Submitted by R. Bezuidenhout <rbezuide@mikom.csir.co.za>
gibbs [Sun, 23 Jun 1996 20:02:37 +0000 (20:02 +0000)]
Fix problem with scb flag handing that crept in with the SCB paging support.
This only affected userland initiated device resets (using the reset command
from cdplay for instance).
bde [Sun, 23 Jun 1996 17:05:10 +0000 (17:05 +0000)]
Run the headers through cpp -dM to find the #defines. The direct search
has been broken at least since 4.4Lite moved most of the #defines out of
<sys/ioctl.h>. This should be done better. Only a few headers are
searched.
Added some #includes so that ioctl.c compiles. The networking headers
have a maze of undocumented interdependencies and ioctl.c now actually
supports networking ioctls.
bde [Sun, 23 Jun 1996 14:28:02 +0000 (14:28 +0000)]
Use IPFIREWALL_MODULE instead of ACTUALLY_LKM_NOT_KERNEL to indicate
LKM'ness. ACTUALLY_LKM_NOT_KERNEL is supposed to be so ugly that it
only gets used until <machine/conf.h> goes away. bsd.kmod.mk should
define a better-named general macro for this. Some places use
PSEUDO_LKM. This is another bad name.
jkh [Sat, 22 Jun 1996 21:42:14 +0000 (21:42 +0000)]
Clean up more bogons:
1. Add a copyright at the top.
2. Make passive and binary modes work with new ftpio semantics.
3. Add a `mirror' (-m) flag which only copies the remote file if it's
not the same size or is newer.
jkh [Sat, 22 Jun 1996 20:16:57 +0000 (20:16 +0000)]
Address Andrey's complaints:
1. Always use file modtime, and if that's not usable then default
to current time.
2. Allow HTTP_TIMEOUT to be set as an environment variable to override
default.
3. Handle SIGTERM.