nate [Fri, 27 Feb 1998 05:12:48 +0000 (05:12 +0000)]
- <pccard/card.h> doesn't exist in -current, so use the include file
<pccard/cardinfo.h>. I don't know if this will compile, but at least
it's using an include file that exists.
msmith [Thu, 26 Feb 1998 06:45:46 +0000 (06:45 +0000)]
Fixes for some bugs in the VFAT/FAT32 support:
- 'mv longnamedfile1 longnamedfile2' would cause longnamedfile2 to lose its
long name.
- Long names have trailing spaces/dots stripped for lookup as well as
assignment.
- A lockup when the mdsosfs was accessed from within the Linux emulator is fixed.
- A bug whereby long filenames were recognised by Microsoft operating systems but
not FreeBSD is fixed.
msmith [Thu, 26 Feb 1998 06:39:59 +0000 (06:39 +0000)]
In the author's words:
These diffs implement the first stage of a VOP_{GET|PUT}PAGES pushdown
for local media FS's.
See ffs_putpages in /sys/ufs/ufs/ufs_readwrite.c for implementation
details for generic *_{get|put}pages for local media FS's. Support
is trivial to add for any FS that formerly relied on the default
behaviour of the vnode_pager in in EOPNOTSUPP cases (just copy the
ffs_getpages() code for the FS in question's *_{get|put}pages).
Obviously, it would be better if each local media FS implemented a
more optimal method, instead of calling an exported interface from
the /sys/vm/vnode_pager.c, but this is a necessary first step in
getting the FS's to a point where they can be supplied with better
implementations on a case-by-case basis.
Obviously, the cd9660_putpages() can be rather trivial (since it
is a read-only FS type 8-)).
A slight (temporary) modification is made to print a diagnostic message
in the case where the underlying filesystem attempts to engage in the
previous behaviour. Failure is likely to be ungraceful.
dg [Thu, 26 Feb 1998 05:25:39 +0000 (05:25 +0000)]
Changes to support the addition of a new sysctl variable:
net.inet.tcp.delack_enabled
Which defaults to 1 and can be set to 0 to disable TCP delayed-ack
processing (i.e. all acks are immediate).
jmb [Wed, 25 Feb 1998 22:06:34 +0000 (22:06 +0000)]
added two new files: allowed_domains.txt and allowed_ips.txt.
domains/ips listed in these files are *NOT* filtered,
even if listed in domains.txt or ips.txt.
someone added netcom.com to the domains.txt file,
resulting in all mail from netcom.com being blocked.
bde [Wed, 25 Feb 1998 07:12:17 +0000 (07:12 +0000)]
Added missing #include of "opt_devfs.h".
Fixed pedantic semantics errors (in ANSI C, static arrays must have
a size, and static objects should be consistently declared as static
unless you know more than anyone should have to know about the
linkage rules).
bde [Wed, 25 Feb 1998 04:47:04 +0000 (04:47 +0000)]
Fixed missing permissions checking for mounting by non-root.
There is now less need for the vfs.usermount sysctl. msdosfs already
has this change, modulo a missing LK_RETRY, via NetBSD. At least
ext2fs is missing this and many other changes from Lite2.
bde [Wed, 25 Feb 1998 04:10:32 +0000 (04:10 +0000)]
Fixed the calculation of `delta' in settime(). We once set all
times consistently wrong (up to 1 tick too late), but recent changes
fixed the setting of the main clock, making other times inconsistent.
The inconsistencies tended to show up as a negative resource usage
for the process that set the time.
Fixed the check for setting the clock backwards. A stale timestamp
(`time') was checked, so it was possible to set the clock backwards
by up to almost 1 tick. Until recently, this bug was compensated
for by setting the clock consistently wrong.
Merged the comment about setting the clock backwards from Lite2.
Removed latency micro-optimizations/speed pessimizations in settime().
microtime() and set_timecounter() are relatively expensive, and
they must be called together with clock updates blocked to get a
consistent `delta', so significant latency optimizations are not
possible.
dyson [Wed, 25 Feb 1998 03:56:15 +0000 (03:56 +0000)]
Fix page prezeroing for SMP, and fix some potential paging-in-progress
hangs. The paging-in-progress diagnosis was a result of Tor Egge's
excellent detective work.
Submitted by: Partially from Tor Egge.
bde [Wed, 25 Feb 1998 02:48:28 +0000 (02:48 +0000)]
Remove ${CLEANDIRS} in the default clean rule, so that bsd.prog.mk can
use the default without losing any (currently unused) features.
(CLEANDIRS is only used by for libgmp and libmp via bsd.lib.mk, and
only documented everywhere it is supported except of course where it
is actually used.)
bde [Wed, 25 Feb 1998 02:14:14 +0000 (02:14 +0000)]
Removed _POSIX_SOURCE ifdefs. This is not a POSIX.1 header, so POSIX
sources can't include it. However, until recently it was included
by <sys/stat.h>, so it should have been (almost) entirely inside
_POSIX_SOURCE ifdefs for <sys/stat.h> to be (almost) POSIX.1 conformant,
but it was only about half inside _POSIX_SOURCE ifdefs.
julian [Wed, 25 Feb 1998 02:14:03 +0000 (02:14 +0000)]
Bring our in.h up to date with respect to allocated
IP protocol numbers. It is possible that the names may require tuning,
but the numbers represent what is in rfc1700 which is the present
active RFC.
bde [Wed, 25 Feb 1998 02:00:44 +0000 (02:00 +0000)]
Don't include <sys/time.h> if _POSIX_SOURCE is defined. This fixes
longstanding namespace pollution. The need for the pollution
(unconditional use of timespecs) went away in the first round of
Lite2 merges (rev.1.7 for stat.h), but <sys.time.h> was still
unconditionally included, and a stale comment about the need for
the pollution was not removed.
bde [Wed, 25 Feb 1998 01:30:05 +0000 (01:30 +0000)]
Don't add non-generated sources to CLEANFILES. There was no problem
in practice, even if there is no obj directory, because the sources
are not in ${.CURDIR} and the full path to them was not added.
dyson [Tue, 24 Feb 1998 10:16:23 +0000 (10:16 +0000)]
Correct some severe VM tuning problems for small systems (<=16MB), and
improve tuning on larger systems. (A couple of the VM tuning params for
small systems were so badly chosen that the system could hang under load.)
bde [Tue, 24 Feb 1998 02:39:00 +0000 (02:39 +0000)]
Update to sort of match reality by literally including <sys/dirent.h>
instead of a pre-BSD4.4 version of <dirent.h>. The old version had
library goop which is still in <dirent.h>. See reality if you want
real details.
bde [Tue, 24 Feb 1998 01:45:05 +0000 (01:45 +0000)]
Exit with a nonzero status if we get killed by a SIGINT. POSIX.2
specifies exiting with a zero status if the file was copied
successfully, and with a nonzero status if an error occurred. We
are too sloppy to tell if the file was copied successfully when we
get killed by a SIGINT, but it is unlikely to have been. Added a
comment about related sloppiness (calling exit() from a signal
handler).
dyson [Mon, 23 Feb 1998 08:22:48 +0000 (08:22 +0000)]
Significantly improve the efficiency of the swap pager, which appears to
have declined due to code-rot over time. The swap pager rundown code
has been clean-up, and unneeded wakeups removed. Lots of splbio's
are changed to splvm's. Also, set the dynamic tunables for the
pageout daemon to be more sane for larger systems (thereby decreasing
the daemon overheadla.)
dyson [Mon, 23 Feb 1998 07:42:43 +0000 (07:42 +0000)]
Try to dynamically size the VM_KMEM_SIZE (but is still able to be overridden
in a way identically as before.) I had problems with the system properly
handling the number of vnodes when there is alot of system memory, and the
default VM_KMEM_SIZE. Two new options "VM_KMEM_SIZE_SCALE" and
"VM_KMEM_SIZE_MAX" have been added to support better auto-sizing for systems
with greater than 128MB.
Add some accouting for vm_zone memory allocations, and provide properly
for vm_zone allocations out of the kmem_map. Also move the vm_zone
allocation stats to the VM OID tree from the KERN OID tree.
dyson [Mon, 23 Feb 1998 07:41:23 +0000 (07:41 +0000)]
Try to dynamically size the VM_KMEM_SIZE (but is still able to be overridden
in a way identically as before.) I had problems with the system properly
handling the number of vnodes when there is alot of system memory, and the
default VM_KMEM_SIZE. Two new options "VM_KMEM_SIZE_SCALE" and
"VM_KMEM_SIZE_MAX" have been added to support better auto-sizing for systems
with greater than 128MB.
dyson [Mon, 23 Feb 1998 06:59:52 +0000 (06:59 +0000)]
Clean-up the vget mechanism by permanently attaching VM objects to
vnodes, therefore vget doesn't need to do so anymore. Other minor
improvements include the temp free vnode queue obeying the VAGE
flag and a printf that warns of to-be-removed code being executed.