Commit Graph

61121 Commits

Author SHA1 Message Date
Bosko Milekic
08442f8a82 Introduce numerous SMP friendly changes to the mbuf allocator. Namely,
introduce a modified allocation mechanism for mbufs and mbuf clusters; one
which can scale under SMP and which offers the possibility of resource
reclamation to be implemented in the future. Notable advantages:

 o Reduce contention for SMP by offering per-CPU pools and locks.
 o Better use of data cache due to per-CPU pools.
 o Much less code cache pollution due to excessively large allocation macros.
 o Framework for `grouping' objects from same page together so as to be able
   to possibly free wired-down pages back to the system if they are no longer
   needed by the network stacks.

 Additional things changed with this addition:

  - Moved some mbuf specific declarations and initializations from
    sys/conf/param.c into mbuf-specific code where they belong.
  - m_getclr() has been renamed to m_get_clrd() because the old name is really
    confusing. m_getclr() HAS been preserved though and is defined to the new
    name. No tree sweep has been done "to change the interface," as the old
    name will continue to be supported and is not depracated. The change was
    merely done because m_getclr() sounds too much like "m_get a cluster."
  - TEMPORARILY disabled mbtypes statistics displaying in netstat(1) and
    systat(1) (see TODO below).
  - Fixed systat(1) to display number of "free mbufs" based on new per-CPU
    stat structures.
  - Fixed netstat(1) to display new per-CPU stats based on sysctl-exported
    per-CPU stat structures. All infos are fetched via sysctl.

 TODO (in order of priority):

  - Re-enable mbtypes statistics in both netstat(1) and systat(1) after
    introducing an SMP friendly way to collect the mbtypes stats under the
    already introduced per-CPU locks (i.e. hopefully don't use atomic() - it
    seems too costly for a mere stat update, especially when other locks are
    already present).
  - Optionally have systat(1) display not only "total free mbufs" but also
    "total free mbufs per CPU pool."
  - Fix minor length-fetching issues in netstat(1) related to recently
    re-enabled option to read mbuf stats from a core file.
  - Move reference counters at least for mbuf clusters into an unused portion
    of the cluster itself, to save space and need to allocate a counter.
  - Look into introducing resource freeing possibly from a kproc.

Reviewed by (in parts): jlemon, jake, silby, terry
Tested by: jlemon (Intel & Alpha), mjacob (Intel & Alpha)
Preliminary performance measurements: jlemon (and me, obviously)
URL: http://people.freebsd.org/~bmilekic/mb_alloc/
2001-06-22 06:35:32 +00:00
Jun Kuriyama
a080f2d84f Fix typos in comment.
(s/IPFIREWALL_DEFAULT_TO_ACCEPT/IPV6FIREWALL_DEFAULT_TO_ACCEPT/)

MFC after:	1 week
2001-06-22 06:25:54 +00:00
Takanori Watanabe
f89558df9a Add Myself. 2001-06-22 04:57:20 +00:00
Peter Wemm
0764acb60f Dive in as well. 2001-06-22 04:52:05 +00:00
Warner Losh
0d415dff80 More updates
# Note, I managed to fat finger some mail commands and lost who submitted some
# of these entries.  If it was you, email me and I'll for a commit to
# give proper credit.
2001-06-22 04:50:11 +00:00
Motoyuki Konno
b6c9f3b104 Add myself. 2001-06-22 04:38:22 +00:00
Warner Losh
a83ad5b62c Add BreezeNET PC-DS.11. It is yet another wireless card.
Submitted by: Danny Braniss <danny@cs.huji.ac.il>
2001-06-22 03:17:25 +00:00
Munechika SUMIKAWA
a10d4301dd Oops, I was born in Osaka. Kanagawa is my current address :-) 2001-06-22 02:45:25 +00:00
Ade Lovett
58e24cfd43 Add myself. sos, you have a clone (albeit younger by 9 years :) 2001-06-22 02:30:27 +00:00
Dag-Erling Smørgrav
9b07a06672 Stylify, ANSIfy, silence warnings, plug a memory leak, don't assume the
server is well-behaved wrt. line endings.

PR:		bin/28082
Submitted by:	Mike Barcroft <mike@q9media.com>
2001-06-22 01:52:37 +00:00
Bruce A. Mah
4139a26885 Put docbook.css in the ftp and cdrom areas of a release build because
they have HTML renderings of the release documentation.
2001-06-22 01:15:43 +00:00
Vanilla I. Shu
91d8ba8789 Add myself. 2001-06-22 01:11:35 +00:00
Matt Jacob
ed37c8743e Move check against CAM_NEW_TRAN_CODE ahead of the file that might include
the option file that would define it.
2001-06-22 01:02:41 +00:00
Ian Dowse
4086cd0d7e Make it much more obvious that the use of NQNFS is discouraged (the
NQNFS code is ancient, bug-ridden, and should probably be removed).
The wording here was very confusing; it was easy to get the impression
that NQNFS is an extension to NFSv3 when in fact it just uses some
NFSv3-like extensions on top of NFSv2. As witnessed by the mailing
lists and PRs, some people were reading the description and deciding
that NQNFS was what they wanted to use.

MFC after:	1 week
2001-06-22 00:41:20 +00:00
Matt Jacob
51a9be2aed Okay, I'll go along with the gag.... Interesting- I'm quite startled
to note that of the people added so far, one has the same birthdate as me
(April Fool's Day), and that only two other folks are older than I am.
2001-06-22 00:23:02 +00:00
Greg Lehey
fe7ecc4a40 Add myself. 2001-06-22 00:19:14 +00:00
Matt Jacob
04438a1130 Fix compilation error on alpha. 2001-06-21 22:34:50 +00:00
Brooks Davis
45ae78bcc5 Slightly lower average age. 2001-06-21 20:44:32 +00:00
Dima Dorfman
7450e06249 Change the way the value of DESTDIR is determined for the release
notes build. Instead of having doc.relnotes.mk make a guess, hardcode
quite a bit (but as little as possible) in Makefile.inc's sprinkled
strategicly throughout the tree.  This has the advantage of actually
working properly (which is a Good Thing(tm)), and the disadvantages of
more files in the repository and more hardcoded paths (which are both
Bad Things(tm)).
2001-06-21 20:43:43 +00:00
Bill Fumerola
676393a337 represent detroit rock city 2001-06-21 20:15:10 +00:00
Dima Dorfman
ba23229ef8 Don't set CONSPEED to the default and deobfuscate the comment.
PR:		28296
Submitted by:	bde, Giorgos Keramidas <keramida@ceid.upatras.gr>
2001-06-21 19:50:11 +00:00
George C A Reid
733a4ea771 Use the M_ZERO flag to malloc(9)
Reviewed by:	cg
MFC after:	1 week
2001-06-21 19:45:59 +00:00
Assar Westerlund
4ed5408587 add an explicit dependency to run yacc before lex instead of using
.ORDER
2001-06-21 19:19:00 +00:00
David E. O'Brien
d6a9fd06de Add the Bzip2 binaries. These are starting to get used more and more
in the base system.
2001-06-21 19:18:16 +00:00
Crist J. Clark
ab26031ac2 Fixing a bug reported on freebsd-security. It is possible for
non-printable characters to sneak into /var/log/messages (e.g.
someone aims a Solaris/Linux RCP exploit at your FreeBSD box and
you end up with his shellcode as part of a log entry). You might
get something like,

  host.mydom.org login failures:
  Binary file (standard input) matches

In the daily security script as a result. Allowing attackers to
mess with your security script's ability to accurately report
is a Bad Thing. Tell grep(1) to treat /var/log/messages like a
text file even if it has non-printable characters.

Submitted by:	Tim Zingelman <zingelman@fnal.gov> on freebsd-security
Approved by:	ru
MFC after:	1 week
2001-06-21 19:17:15 +00:00
David E. O'Brien
d245408639 Fix long lines. 2001-06-21 19:17:12 +00:00
David E. O'Brien
4e78abc4bb Add libbz2 to provide Bzip2 capabilities to the system. 2001-06-21 19:16:17 +00:00
David E. O'Brien
559ba42767 This commit was generated by cvs2svn to compensate for changes in r78556,
which included commits to RCS files with non-trunk default branches.
2001-06-21 18:37:17 +00:00
David E. O'Brien
df9de0eba1 Virgin import (trimmed) of Bzip2 version 1.0.1. 2001-06-21 18:37:17 +00:00
Matt Jacob
0e300eff0a Don't dereference NULL regs pointer (should mapping I/O ports fail, as
they did for me on an alpha)

Approved by:	gibbs@freebsd.org
MFC after:	2 days
2001-06-21 16:18:27 +00:00
Brian Somers
b720900890 Move the interface address setting and default route setting out of
the default section and into the papchap section.

It's really irritating when you run ppp with no arguments and end up
blowing away your default route !
2001-06-21 15:42:26 +00:00
Brian Somers
d18096cf79 Explicitly add a default route in ppp's install profile 2001-06-21 15:39:40 +00:00
Michael C . Wu
d05ee7b1be Follow Ben's suit in decreasing the average age here
by adding myself.
2001-06-21 15:06:14 +00:00
Ben Smithurst
2e32a5ffdf Hopefully decrease the average age further still... :-) 2001-06-21 14:59:25 +00:00
Assar Westerlund
c2a6ca2a3c update infrastructure for heimdal 0.3f 2001-06-21 12:55:45 +00:00
Josef Karthauser
d782daf041 Revert the previous commit on objection from the maintainer. I
missed that natd has a -v option that will give similar functionality.

Requested by:	ru
2001-06-21 12:32:36 +00:00
Dag-Erling Smørgrav
dc352222aa More -fno-builtin failures. 2001-06-21 12:10:35 +00:00
Josef Karthauser
dc2ea2d874 When reporting that a packet can't be written back, usually because
of a restrictive firewall rule, also report detail on the packet
that caused the failure.

MFC after:	3 days
2001-06-21 10:28:40 +00:00
Bill Fumerola
47f7cc6db5 bring down the average age a little 2001-06-21 09:57:48 +00:00
Ruslan Ermilov
23a8dddc5d FreeBSD calendar.
Submitted by:	developers
2001-06-21 09:07:22 +00:00
Luigi Rizzo
8b3dd2e8c8 Remove tcpdump from the list of binaries. When cross-compiling
I get a link error on in6addr_<something> and i cannot find the
symbol in any of the libraries. It might be my mistake, but in any
case the crunched binary would overflow the floppy, so...

This applies to -current only.
2001-06-21 08:59:12 +00:00
Luigi Rizzo
2dc4c9a2f2 Remove support of I386_CPU in -current.
Make sure hints are statically compiled into the kernel,
because the bootloader is not available in picobsd and so the
hints file cannot be found at run time.

(This is kind of inconvenient if you have to handle non PnP devices,
but fortunately these days non-PnP ISA cards are disappearing...)
2001-06-21 08:56:59 +00:00
Luigi Rizzo
a177be2c24 Use /dev/fd0 instead of /dev/fd0c for mounting the floppy.
This must have to do with the use of devfs in -CURRENT, but i
have no idea when the devfs is actually mounted (is it a
side effect of mount -t nonfs or what ?) and when /dev/fd0c becomes
available.
For the time being, let's use this hack. Once I understand how devfs
works, this can be reverted back to the previous value, and also the
part of the build script which creates device entries can be nuked.
This is for -current only.
2001-06-21 08:53:21 +00:00
Luigi Rizzo
a39c93813c Move handling of crunch* files into Makefile.conf, which is a
better place to handle dependencies.

Make another step at helping cross-compiling: when the user specifies
an alternate source tree, the script takes care of creating include
files and libraries for the new tree.
Furthermore, build and use a version of the "config" program which
matches the new sources.

It takes a long time to create libraries, and it might even not do
the right thing at once, there might be some dependencies that i
have forgotten. At any rate, with this code i have been able to
build a working picobsd image using -CURRENT sources on -STABLE

MFC after: 3 days
2001-06-21 08:49:46 +00:00
Munechika SUMIKAWA
fd5556399e - Avoid hardcoded constant on icmp6 in/out histogram printing
- Icmp6 histogram update for inverse neighbor solicit/advert.

Obtained from:	KAME
MFC after:	2 weeks
2001-06-21 08:27:09 +00:00
Munechika SUMIKAWA
a96c00661a - Renumber KAME local ICMP types and NDP options numberes beacaues they
are duplicated by newly defined types/options in RFC3121
- We have no backward compatibility issue. There is no apps in our
  distribution which use the above types/options.

Obtained from:	KAME
MFC after:	2 weeks
2001-06-21 07:08:43 +00:00
Assar Westerlund
c80b5a6353 fix merges from 0.3f 2001-06-21 02:21:57 +00:00
Assar Westerlund
362982da86 This commit was generated by cvs2svn to compensate for changes in r78527,
which included commits to RCS files with non-trunk default branches.
2001-06-21 02:12:07 +00:00
Assar Westerlund
adb0ddaeac import of heimdal 0.3f 2001-06-21 02:12:07 +00:00
Dima Dorfman
c894b25a2f Constify mdmaybeload(), add a prototype for usage(), and get rid of a
sizeof(int) == sizeof(long) assumption; clamp down with WARNS=2.
2001-06-21 02:10:26 +00:00