57155 Commits

Author SHA1 Message Date
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
jhb
ce0e05336a Add KTR tracepoints for adding/removing interrupt handlers,
creating/destroying interrupt threads, and updating the state of an
interrupt thread.
2001-02-22 02:14:08 +00:00
jhb
f871fe7250 - Use the NOCPU constant.
- Move the ithread spin locks before sched lock and clk in preparation for
  future commits to the ithread code.
2001-02-22 02:12:54 +00:00
jhb
c5479c262c Quiet a warning with a uintptr_t cast.
Noticed by:	bde
2001-02-22 02:10:33 +00:00
jhb
a05021f435 - Use the new NOCPU constant.
- Fix a warning.

Noticed by:	bde (2)
2001-02-22 00:32:13 +00:00
jhb
6585692860 Fix a bug where the 'ithread' variable was being set in a KASSERT()
condition and thus was not initialized properly in the !INVARIANTS case.

Noticed by:	bde
Pointy hat to:	me
2001-02-22 00:23:56 +00:00
jkh
5ec338f4cc Put the kerberos checksum information into the correct CHECKSUM file,
fixing a long-standing bogon with this.

PR:		24264
Submitted by:	Alec Wolman <wolman@cs.washington.edu>
2001-02-21 23:01:59 +00:00
jhb
4f27bdda0e Remove attempt to add in PREEMPTION #ifdef test in MI code that didn't
work because opt_preemption.h wasn't #include'd.  Instead, make use of the
do_switch parameter to ithread_schedule() and do the check in the alpha
interrupt code.
2001-02-21 22:51:00 +00:00
bmah
551dbec6e6 New release notes: Note format string paranoia and tempfile fixes,
OpenSSL ASM optimizations, sysinstall preserving /etc/mail,
savecore -k, pkg_delete(1) now deletes in dependency order.

MFCs noted:  ipfilter 3.4.16, ipfw(8) me, gperf 2.7.2,
lpr(1)/lpd(8)/syslogd(8)/logger(1) IPv6-capable,
bzip2(1) packages.

A few typo fixes were backported from RELNOTESng.

Preference was made to features that have been MFC-ed.  I'll try to
get HEAD caught up to reality soon.
2001-02-21 21:57:49 +00:00