Commit Graph

68139 Commits

Author SHA1 Message Date
rwatson
5014778ff3 o Add IPOPT_ESO for the 'Extended Security' IP option (RFC1108)
Obtained from:	TrustedBSD Project
2001-12-14 19:37:32 +00:00
rwatson
56387dfef2 o Add definition for IPOPT_CIPSO, the commercial security IP option
number.

Submitted by:	Ilmar S. Habibulin <ilmar@watson.org>
Obtained from:	TrustedBSD Project
2001-12-14 19:34:42 +00:00
jlemon
12f48c6901 whitespace and style fixes recovered from -stable. 2001-12-14 19:34:11 +00:00
jlemon
441bffc79d minor style and whitespace fixes. 2001-12-14 19:33:29 +00:00
jlemon
0a6314db1d whitespace fixes. 2001-12-14 19:32:47 +00:00
jlemon
2fde22e293 minor whitespace fixes. 2001-12-14 19:32:00 +00:00
jlemon
c79850afab minor style fix. 2001-12-14 19:28:06 +00:00
julian
9e5d1d1b57 Make the man page reflec t the code a bit better.
Specifically, note the condition of the memory on initial
and subsequent allocations is different.
2001-12-14 19:19:31 +00:00
jlemon
f7af5c6f92 When removing kqueue descriptors from the descriptor table during a fork,
update fd_freefile and fd_lastfile as well, to keep things in sync.

Pointed out by: Debbie Chu <dchu@juniper.net>
2001-12-14 19:02:57 +00:00
silby
1b6efabb90 Reduce the local network slowstart flightsize from infinity to 4 packets.
Now that we've increased the size of our send / receive buffers, bursting
an entire window onto the network may cause congestion.  As a result,
we will slow start beginning with a flightsize of 4 packets.

Problem reported by: Thomas Zenker <thz@Lennartz-electronic.de>

MFC after:	3 days
2001-12-14 18:26:52 +00:00
luigi
f8ad22919e Device Polling code for -current.
Non-SMP, i386-only, no polling in the idle loop at the moment.

To use this code you must compile a kernel with

        options DEVICE_POLLING

and at runtime enable polling with

        sysctl kern.polling.enable=1

The percentage of CPU reserved to userland can be set with

        sysctl kern.polling.user_frac=NN (default is 50)

while the remainder is used by polling device drivers and netisr's.
These are the only two variables that you should need to touch. There
are a few more parameters in kern.polling but the default values
are adequate for all purposes. See the code in kern_poll.c for
more details on them.

Polling in the idle loop will be implemented shortly by introducing
a kernel thread which does the job. Until then, the amount of CPU
dedicated to polling will never exceed (100-user_frac).
The equivalent (actually, better) code for -stable is at

	http://info.iet.unipi.it/~luigi/polling/

and also supports polling in the idle loop.

NOTE to Alpha developers:
There is really nothing in this code that is i386-specific.
If you move the 2 lines supporting the new option from
sys/conf/{files,options}.i386 to sys/conf/{files,options} I am
pretty sure that this should work on the Alpha as well, just that
I do not have a suitable test box to try it. If someone feels like
trying it, I would appreciate it.

NOTE to other developers:
sure some things could be done better, and as always I am open to
constructive criticism, which a few of you have already given and
I greatly appreciated.
However, before proposing radical architectural changes, please
take some time to possibly try out this code, or at the very least
read the comments in kern_poll.c, especially re. the reason why I
am using a soft netisr and cannot (I believe) replace it with a
simple timeout.

Quick description of files touched by this commit:

sys/conf/files.i386
        new file kern/kern_poll.c
sys/conf/options.i386
        new option
sys/i386/i386/trap.c
        poll in trap (disabled by default)
sys/kern/kern_clock.c
        initialization and hardclock hooks.
sys/kern/kern_intr.c
        minor swi_net changes
sys/kern/kern_poll.c
        the bulk of the code.
sys/net/if.h
        new flag
sys/net/if_var.h
        declaration for functions used in device drivers.
sys/net/netisr.h
        NETISR_POLL
sys/dev/fxp/if_fxp.c
sys/dev/fxp/if_fxpvar.h
sys/pci/if_dc.c
sys/pci/if_dcreg.h
sys/pci/if_sis.c
sys/pci/if_sisreg.h
        device driver modifications
2001-12-14 17:56:12 +00:00
luigi
34c1073cfc Let M_LEADINGSPACE write into non-shared mbufs.
A similar thing has been in -stable for weeks and is completely safe.

This has very good performance implications as it saves some data
copying, and sometimes avoids triggering performance bugs in devices
(such as the "dc" and other Tulip clones) which do not like scattered
data.
2001-12-14 17:31:58 +00:00
iedowse
6829d5b143 Enable UFS_DIRHASH in the GENERIC kernel.
Suggested by:	silby
Reviewed by:	dillon
MFC after:	5 days
2001-12-14 16:27:11 +00:00
luigi
6f50cc5876 Add prototypes for main() so that these programs compile with -Werror
(which somehow now seems to be the default for compiling -current).
This error popped up while doing a PicoBSD cross-compile on a 4.3-ish system,
it may well be that there are other apps which have similar problems,
but I did not spot them as they are not included in my picobsd config.

Whether adding prototypes for main() is the correct solution or not
I have no idea, a request to -current on the matter went basically
unanswered. Those who have better ideas are welcome to back this out
and replace it with the correct fix.
2001-12-14 16:22:41 +00:00
mikeh
c068c4e464 ftp(1) was not the only user of FTP_PASSIVE_MODE, libfetch uses it
too, so add it back
2001-12-14 15:48:55 +00:00
nyan
8b664dd49d Fixed to draw mouse cursor. The syscons driver for PC98 uses different
attributes from i386.

Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata)
MFC after:	3 days
2001-12-14 15:27:15 +00:00
ru
538db93281 mdoc(7) police: add -p to the synopsis line as well. 2001-12-14 15:03:32 +00:00
ru
42d152852b MFCrypto: Remove -r, -s, sort -p. 2001-12-14 14:46:51 +00:00
ru
8c39ab0e40 mdoc(7) police: remove -r from SYNOPSIS, sort -p in DESCRIPTION. 2001-12-14 14:41:07 +00:00
ru
ac5af7de06 mdoc(7) police: bump document date. 2001-12-14 13:49:28 +00:00
sheldonh
91f6473b2c Bump __FreeBSD_version for userland smbfs import. 2001-12-14 12:41:56 +00:00
sheldonh
7897c278e0 Arrange for the smbfs examples to be installed.
We don't install dot.nsmbrc or smbfs.sh.sample, since we already install
the former as /etc/nsmb.conf and the latter is unnecessary, since
boot-time mounts can be arranged directly within /etc/fstab without fear
of breaking the boot when the smbfs port (now unnecessary is removed).

The MFC reminder below is subject to <re@FreeBSD.org> approval
priod to 4.5-RELEASE.

MFC after:	1 week
2001-12-14 12:17:03 +00:00
sheldonh
551d694f64 Add bmake glue for src/contrib/smbfs and connect userland smbfs
support to the build.

The MFC reminder below is subject to <re@FreeBSD.org> approval
prior to 4.5-RELEASE.

Reviewed by:	bp, fjoe
MFC:	1 week
2001-12-14 11:41:22 +00:00
phantom
e19de1ca70 * cleanup comments and defines
Reviewed by:	bde
2001-12-14 11:36:37 +00:00
rwatson
949b1b8712 o Clarify the comments on AIO to note that yes, AIO really is unsuitable
for use on machines with untrusted local users, for security as well
  as stability reasons.
o Lack of clarity pointed out by: David Rufino <dr@soniq.net> via bugtraq.
2001-12-14 11:21:16 +00:00
sheldonh
7000319a04 Detail the smbfs-1.4.1 import. 2001-12-14 11:11:31 +00:00
sheldonh
0a73a08da7 This commit was generated by cvs2svn to compensate for changes in r87866,
which included commits to RCS files with non-trunk default branches.
2001-12-14 11:06:03 +00:00
sheldonh
4e260b134f Import smbfs-1.4.1.
This is Boris Popov's SMB/CIFS file system implementation for FreeBSD.

Obtained from:	Boris Popov via ftp://ftp.butya.kz/pub/smbfs/
2001-12-14 11:06:03 +00:00
mckusick
a120c6ba29 Add disk I/O scheduling for positively niced processes.
When a positively niced process requests a disk I/O, make
it wait for its nice value of ticks before scheduling its
I/O request if there are any other processes with I/O
requests in the disk queue. For all the gory details, see
the ``Running fsck in the Background'' paper in the Usenix
BSDCon 2002 Conference Proceedings, pages 55-64.
2001-12-14 10:49:15 +00:00
ru
ff31678819 mdoc(7) police overhaul. 2001-12-14 10:18:15 +00:00
ru
0f12d1a7a9 mdoc(7) police overhaul. 2001-12-14 09:48:03 +00:00
peter
a7d365d185 Bump configvers for different handling of maxusers. 2001-12-14 09:40:01 +00:00
peter
dd0f3c5ca2 Proper fix for old config setting maxusers to 8. 2001-12-14 09:39:29 +00:00
ru
39d6039178 Fixed prototype.
Reviewed by:	davidc
2001-12-14 09:25:11 +00:00
ru
4e6bafac27 mdoc(7) police: don't xref to itself. 2001-12-14 09:22:34 +00:00
ru
5cbdc3fd68 mdoc(7) police: markup, grammar and spelling nits.
Reviewed by:	davidc
2001-12-14 09:11:13 +00:00
ru
1e98a2bc17 mdoc(7) police: kill the undead whitespace at EOL. 2001-12-14 09:09:21 +00:00
ru
d216345eb6 mdoc(7) police: remove hard sentence break which I didn't
submit to Jonathan Mini.
2001-12-14 09:06:11 +00:00
ru
1255b8caf5 Work around the bugfeature of test(1).
PR:		bin/32822
2001-12-14 08:58:21 +00:00
dillon
8e6d2fbcbd A slightly different version of the vlrureclaim fix.
Reported by: peter, ps
2001-12-14 07:18:31 +00:00
luigi
bf2556cfad Remove printf's on mbuf/cluster allocation failures. There are now
equivalent and less dangerous (rate limited) messages in
the mbuf allocation code.

MFC after: 3 days
2001-12-14 05:56:35 +00:00
mckusick
d3b383005d Add disk I/O scheduling for positively niced processes.
When a positively niced process requests a disk I/O, make
it wait for its nice value of ticks before scheduling its
I/O request if there are any other processes with I/O
requests in the disk queue. For all the gory details, see
the ``Running fsck in the Background'' paper in the Usenix
BSDCon 2002 Conference Proceedings, pages 55-64.
2001-12-14 05:50:44 +00:00
dg
2ab37ca0c5 Moved the updating of if_ibytes from ether_demux() to ether_input() to fix
a bug where the interface input bytes count wasn't updated when bridging
is enabled.

MFC after:	3 days
2001-12-14 04:41:07 +00:00
bmah
b9c2be3b9b Whitespace and capitalization fixes to sync with RELENG_4. 2001-12-14 04:29:57 +00:00
dillon
62f062ea62 Too many people are compiling kernels with maxusers set to 0 without the new
config.  Hack the kernel to force auto-sizing if the old config is used.
2001-12-14 04:01:08 +00:00
mikeh
a552c60a9b ftp(1) uses passive mode by default now, therefore remove
FTP_PASSIVE_MODE=YES.

Pointed out by:	billf
2001-12-14 02:08:23 +00:00
dillon
cd4d323ad3 This fixes a large number of bugs in our NFS client side code. A recent
commit by Kirk also fixed a softupdates bug that could easily be triggered
by server side NFS.

	* An edge case with shared R+W mmap()'s and truncate whereby
	  the system would inappropriately clear the dirty bits on
	  still-dirty data.  (applicable to all filesystems)

	  THIS FIX TEMPORARILY DISABLED PENDING FURTHER TESTING.
	  see vm/vm_page.c line 1641

	* The straddle case for VM pages and buffer cache buffers when
	  truncating.  (applicable to NFS client side)

	* Possible SMP database corruption due to vm_pager_unmap_page()
	  not clearing the TLB for the other cpu's.  (applicable to NFS
	  client side but could effect all filesystems).  Note: not
	  considered serious since the corruption occurs beyond the file
	  EOF.

	* When flusing a dirty buffer due to B_CACHE getting cleared,
	  we were accidently setting B_CACHE again (that is, bwrite() sets
	  B_CACHE), when we really want it to stay clear after the write
	  is complete.  This resulted in a corrupt buffer.  (applicable
	  to all filesystems but probably only triggered by NFS)

	* We have to call vtruncbuf() when ftruncate()ing to remove
	  any buffer cache buffers.  This is still tentitive, I may
	  be able to remove it due to the second bug fix.  (applicable
	  to NFS client side)

	* vnode_pager_setsize() race against nfs_vinvalbuf()... we have
	  to set n_size before calling nfs_vinvalbuf or the NFS code
	  may recursively vnode_pager_setsize() to the original value
	  before the truncate.  This is what was causing the user mmap
	  bus faults in the nfs tester program.  (applicable to NFS
	  client side)

	* Fix to softupdates (see ufs/ffs/ffs_inode.c 1.73, commit made
	  by Kirk).

Testing program written by: Avadis Tevanian, Jr.
Testing program supplied by: jkh / Apple (see Dec2001 posting to freebsd-hackers with Subject 'NFS: How to make FreeBS fall on its face in one easy step')
MFC after:	1 week
2001-12-14 01:16:57 +00:00
bmah
637ec33540 New release note: lukemftp. 2001-12-14 01:14:41 +00:00
luigi
be0e572294 Add a '-l' flag to show CPU load for the various states, similar to what
"top" does (thinking of it, i could have as well used the same format line!)

This only makes sense when "-w" option is also specified, because the
load is computed as the difference between subsequent samples.

I think this (and the "-d" feature which shows differences in the
network statistics counts) would also make sense in the standard
vmstat and netstat.
2001-12-14 01:10:50 +00:00
dillon
a6be0b0189 Add maxusers auto-sizing description to NOTES file for -current 2001-12-14 01:01:20 +00:00