Commit Graph

57163 Commits

Author SHA1 Message Date
julian
e658f358fd Add a 'splitter' node to separate a bidirectional
packet flow into two unidirectional flows.

Part of a suite of nodes developed for packet flow control.
More to follow as I have time to port them to 5.x or
as others do so. The ipfw node will be the hardest..

Submitted by:	"Vitaly V. Belekhov" <vitaly@riss-telecom.ru>
2001-02-22 17:14:36 +00:00
jhb
f07ed9620d The ia64 hasn't needed machine/ipl.h included in sys/systm.h for a while
now.
2001-02-22 17:14:24 +00:00
jhb
d3d0ac35db Axe pcb_schednest as it is no longer used. 2001-02-22 17:09:50 +00:00
jhb
5eea0dc69d Rename switch_trampoline() to fork_trampoline() on the alpha and ia64.
Suggested by:	dfr
2001-02-22 16:56:53 +00:00
jhb
d523baf7a3 Don't set the sched_lock lesting level for new processes as it is no
longer used.
2001-02-22 16:53:23 +00:00
jhb
a084756a1b Catch comments up to child_return() -> fork_return() as well. 2001-02-22 16:49:36 +00:00
jhb
07789e60e9 Synch up with the other architectures:
- Remove unneeded spl()'s around mi_switch() in userret().
- Don't hold sched_lock across addupc_task().
- Remove the MD function child_return() now that the MI function
  fork_return() is used instead.
- Use TRAPF_USERMODE() instead of dinking with the trapframe directly to
  check for ast's in kernel mode.
- Check astpending(curproc) and resched_wanted() in ast() and return if
  neither is true.
- Use astoff() rather than setting the non-existent per-cpu variable
  astpending to 0 to clear an ast.
2001-02-22 16:27:03 +00:00
jhb
667eb173f1 - Use TRAPF_PC() on the alpha to acess the PC in the trap frame.
- Don't hold sched_lock around addupc_task() as this apparently breaks
  profiling badly due to sched_lock being held across copyin().

Reported by:	bde (2)
2001-02-22 16:23:12 +00:00
jhb
c591cfd9c6 Use the MI fork_return() fork trampoline callout function for child
processes instead of the MD child_return().
2001-02-22 16:05:48 +00:00
jhb
c728eb55b0 - Don't dink with sched_lock in cpu_switch() since mi_switch() does this
for us.
- Change the switch_trampoline() to call fork_exit() passing in the
  required arguments instead of calling the fork trampoline callout
  function directly.
Warning: this hasn't been tested.

Looked over by:	dfr
2001-02-22 16:05:09 +00:00
jhb
41a6853d24 GC unused and now obsolete assertion macros. 2001-02-22 15:45:49 +00:00
jhb
ed7d3539ba - Axe the now unused ASS_* assertions for interrupt status.
- Use ia64_get_psr() instead of save_intr() in mtx_legal2block().
2001-02-22 15:43:42 +00:00
jhb
1fcc4482e8 Add a inline function to read the psr. 2001-02-22 15:39:58 +00:00
jhb
57e83d23b7 Add a mtx_intr_enable() macro. 2001-02-22 15:37:57 +00:00
jhb
107493c81a Axe the astpending per-cpu variable. 2001-02-22 15:37:34 +00:00
jhb
4280c09262 Add TRAPF_PC() and TRAPF_USERMODE() macros and redefine CLKF_PC() and
CLKF_USERMODE() in terms of them.
2001-02-22 15:35:04 +00:00
ru
4134c447cb Only descend into ${MACHINE_ARCH} subdir. 2001-02-22 15:28:57 +00:00
jhb
202f41c3e5 Cleanup and clarify the comments above switch_trampoline(). 2001-02-22 15:06:19 +00:00
ru
2d99511f43 Prepare for mdoc(7)NG. 2001-02-22 15:03:09 +00:00
des
8862541dfd Fix formatting bugs introduced in sysctl_vm_zone() by the previous commit.
Also, if SYSCTL_OUT() returns a non-zero value, stop at once.
2001-02-22 14:44:39 +00:00
alfred
3956d542bf fix usage statement (add missing [-n devs] option)
Submitted by: Maxim Konovalov <maxim@macomnet.ru>

Silence a warning by renaming the 'pgtok' #define to 'vmstat_pgtok' so
as not to conflict with the 'pgtok' #define in sys/param.h
2001-02-22 13:55:12 +00:00
jhb
e5173c046a Add a mtx_assert() in maybe_resched() just to be sure it's always called
with sched_lock held.
2001-02-22 13:47:01 +00:00
jhb
13aad95ca7 Lock need_resched with sched_lock.
Reported by:	des
2001-02-22 13:46:09 +00:00
jhb
073b1ca9aa Catch up to new MI astpending and need_resched handling. 2001-02-22 13:29:22 +00:00
ru
9162338459 mdoc(7) police: fixed misc formatting bugs. 2001-02-22 12:07:28 +00:00
kris
b7d8207daf Overhaul the MACHINE_CPU behaviour:
* Rip out MACHINE_CPU stuff from sys.mk and include a new <bsd.cpu.mk>
  after we pull in /etc/make.conf.  We need to do it afterwards so we can
  react to the user setting of the:

* CPUTYPE variable, which contains the CPU type which the user wants to
  optimize for.  For example, if you want your binaries to only run on an
  i686-class machine (or higher), set this to i686.  If you want to support
  running binaries on a variety of CPU generations, set this to the lowest
  common denominator.  Supported values are listed in make.conf.

* bsd.cpu.mk does the expansion of CPUTYPE into MACHINE_CPU using the
  (hopefully) correct unordered list of CPU types which should be used on
  that CPU.  For example, an AMD k6 CPU wants any of the following:
    k6 k5 i586 i486 i386
  This is still an unordered list so the client makefile logic is simple -
  client makefiles need to test for the various elements of the set in
  decreasing order of priority using ${MACHINE_CPU:M<foo>}, as before.
  The various MACHINE_CPU lists are believed to be correct, but should be
  checked.

* If NO_CPU_CFLAGS is not defined, add relevant gcc compiler optimization
  settings by default (e.g. -karch=k6 for CPUTYPE=k6, etc).  Release
  builders and developers of third-party software need to make sure not to
  enable CPU-specific optimization when generating code intended to be
  portable.  We probably need to move to an /etc/world.conf to allow the
  optimization stuff to be applied separately to world/kernel and external
  compilations, but it's not any worse a problem than it was before.

* Add coverage for the ia64/itanium MACHINE_ARCH/CPUTYPE.

* Add CPUTYPE support for all of the CPU types supported by FreeBSD and gcc
  (only i386, alpha and ia64 first, since those are the minimally-working
  ports.  Other architecture porters, please feel free to add the relevant
  gunk for your platform).

Reviewed by:    jhb, obrien
2001-02-22 11:22:46 +00:00
dcs
290c615f2c Whenever the user might be offered a chance to quit through
pager_output(), respect that choice.

PR: 15747
2001-02-22 11:22:14 +00:00
kris
a1e08c4bce Overhaul the MACHINE_CPU behaviour:
* Rip out MACHINE_CPU stuff from sys.mk and include a new <bsd.cpu.mk>
  after we pull in /etc/make.conf.  We need to do it afterwards so we can
  react to the user setting of the:

* CPUTYPE variable, which contains the CPU type which the user wants to
  optimize for.  For example, if you want your binaries to only run on an
  i686-class machine (or higher), set this to i686.  If you want to support
  running binaries on a variety of CPU generations, set this to the lowest
  common denominator.  Supported values are listed in make.conf.

* bsd.cpu.mk does the expansion of CPUTYPE into MACHINE_CPU using the
  (hopefully) correct unordered list of CPU types which should be used on
  that CPU.  For example, an AMD k6 CPU wants any of the following:
    k6 k5 i586 i486 i386
  This is still an unordered list so the client makefile logic is simple -
  client makefiles need to test for the various elements of the set in
  decreasing order of priority using ${MACHINE_CPU:M<foo>}, as before.
  The various MACHINE_CPU lists are believed to be correct, but should be
  checked.

* If NO_CPU_CFLAGS is not defined, add relevant gcc compiler optimization
  settings by default (e.g. -karch=k6 for CPUTYPE=k6, etc).  Release
  builders and developers of third-party software need to make sure not to
  enable CPU-specific optimization when generating code intended to be
  portable.  We probably need to move to an /etc/world.conf to allow the
  optimization stuff to be applied separately to world/kernel and external
  compilations, but it's not any worse a problem than it was before.

* Add coverage for the ia64/itanium MACHINE_ARCH/CPUTYPE.

* Add CPUTYPE support for all of the CPU types supported by FreeBSD and gcc
  (only i386, alpha and ia64 first, since those are the minimally-working
  ports.  Other architecture porters, please feel free to add the relevant
  gunk for your platform).

Reviewed by:    jhb, obrien
2001-02-22 11:14:25 +00:00
wosch
31ead84953 Added upcoming FreeBSD 4.3 2001-02-22 11:09:50 +00:00
nik
747d229ad6 Mention the edquota(8) utility when talking about editing quota.user
and quota.group.

PR:		docs/25124
2001-02-22 11:07:58 +00:00
nik
1e23c23d2c Add quota.user(5) and quota.group(5) man pages.
PR:		docs/25124
2001-02-22 11:06:54 +00:00
dcs
4656ee74ca Correct the prototype for pager_output(). 2001-02-22 10:58:30 +00:00
mckusick
b6410fb7dc When cleaning up excess inode dependencies, check for being done.
Reviewed by:	Jan Koum <jkb@yahoo-inc.com>
2001-02-22 10:17:57 +00:00
jhb
8ade3c07b9 Now that zerror() and SPLASSERT() have been laid to rest, INVARIANT_SUPPORT
is no longer needed.  R.I.P.
2001-02-22 10:03:05 +00:00
ru
9177fc64e9 Document that the IPFW messages are logged via syslogd(8). 2001-02-22 09:12:44 +00:00
jhb
2b6e732106 Document TARGET_ARCH. 2001-02-22 08:27:17 +00:00
jhb
547072c647 Convert an instance of 8 spaces to a tab. 2001-02-22 08:13:09 +00:00
dcs
56b5095e9b Since we don't have rfd0 anymore, put in a line that will actually work
for generating floppies.

Mention mdconfig(8) instead of vnconfig(8).
2001-02-22 07:34:53 +00:00
ru
4798254d00 Move the realpath(1) birth day from FreeBSD 5.0 to FreeBSD 4.3.
Submitted by:	"Stephen L. Palmer" <slpalmer@mail.com>
Forgotten by:	asmodai
2001-02-22 07:29:40 +00:00
mjacob
efd79cf123 Restore a print_sense=FALSE that got nuked by accident in last delta.
Noticed by:	Dan Nelson <dnelson@emsphone.com>
2001-02-22 06:43:42 +00:00
gshapiro
b761bfde3b Document the vacation -d and -l options
PR:		docs/22875
2001-02-22 05:54:31 +00:00
gshapiro
167a0e9e84 Revamp /etc/mail/Makefile:
+ Add support for the new SENDMAIL_MC make.conf knob
+ Add the ability to build .cf files from .mc files
+ Generalize map rebuilding
+ Add the ability to rebuild the aliases file
+ Add the ability to stop, start, and restart sendmail

PR:		bin/13759, bin/19897, bin/24397
2001-02-22 04:17:33 +00:00
gshapiro
a299914603 Add a new make knob, SENDMAIL_MC, which is meant to replace SENDMAIL_CF as
users should be configuring via m4 now.  If set, use m4 to create the .cf
file.  Also, if either SENDMAIL_MC or SENDMAIL_CF is set, 'make install' or
'make distribution' in src/etc/sendmail/ will install the appropriate .cf as
/etc/mail/sendmail.cf.  This fixes some mergemaster problems.

PR:		conf/13016
2001-02-22 04:11:52 +00:00
gshapiro
41e03dcd6b Install freebsd.mc and freebsd.cf in /etc/mail so users have the base files
for creating their own configuration.
2001-02-22 04:01:16 +00:00
peter
5d555e0a45 Futher cleanups. Since we have two options lists, one for proper options
and one for Makefile options, pass in the list head and use a common
newopt() routine.
Fix the 'config vmunix' support glue which was broken for a few minutes.
2001-02-22 04:00:29 +00:00
gshapiro
6af82228b4 Move creation of the sendmail statistics file from the usr.sbin/sendmail
Makefile to the etc/sendmail Makefile to be consistent with all of the
other /var file creations.  In doing so, change the Makefile target from
etc-sendmail.cf to distribution as it installs more than just the sendmail.cf.
2001-02-22 03:55:08 +00:00
gshapiro
ebbc740417 Clean up freebsd.mc to make it easier for users to read and modify.
The freebsd.cf from this new freebsd.mc is functionally equivalent.
2001-02-22 03:41:14 +00:00
peter
c1f61844c3 Collect together a handful of copies of the option generator code into a
single newopt(char *name, char *value) function.  Change newdev() to
do the same thing rather than depending on the evil 'cur' device hack.
2001-02-22 03:40:50 +00:00
jhb
bfd047a3c9 Work around a race condition where an interrupt handler can be removed from
an interrupt thread while the interrupt thread is blocked on Giant waiting
to execute the interrupt handler being removed.  The result was that the
intrhand structure would be free'd, and we would call 0xdeadc0de.  The work
around is to check to see if the interrupt thread is idle when removing a
handler.  If not, then we mark the interrupt handler as being dead using
the new IH_DEAD flag and don't remove it from the interrupt threads' list
of handlers.  When the interrupt thread resumes, it will see a dead handler
while traversing the list of handlers and will remove the handler then.
2001-02-22 02:18:32 +00:00
jhb
0d396b87d3 Just use the ithread->it_proc directly in a KTR tracepoint instead of
assigning a local var to it and using it, as otherwise the local var wasn't
used, and generated a warning in the !KTR case.

Noticed by:	bde
2001-02-22 02:15:57 +00:00