Commit Graph

63065 Commits

Author SHA1 Message Date
John Baldwin
688ebe120c - Close races with signals and other AST's being triggered while we are in
the process of exiting the kernel.  The ast() function now loops as long
  as the PS_ASTPENDING or PS_NEEDRESCHED flags are set.  It returns with
  preemption disabled so that any further AST's that arrive via an
  interrupt will be delayed until the low-level MD code returns to user
  mode.
- Use u_int's to store the tick counts for profiling purposes so that we
  do not need sched_lock just to read p_sticks.  This also closes a
  problem where the call to addupc_task() could screw up the arithmetic
  due to non-atomic reads of p_sticks.
- Axe need_proftick(), aston(), astoff(), astpending(), need_resched(),
  clear_resched(), and resched_wanted() in favor of direct bit operations
  on p_sflag.
- Fix up locking with sched_lock some.  In addupc_intr(), use sched_lock
  to ensure pr_addr and pr_ticks are updated atomically with setting
  PS_OWEUPC.  In ast() we clear pr_ticks atomically with clearing
  PS_OWEUPC.  We also do not grab the lock just to test a flag.
- Simplify the handling of Giant in ast() slightly.

Reviewed by:	bde (mostly)
2001-08-10 22:53:32 +00:00
John Baldwin
827dcaf663 Make witness compile w/o DDB.
Reported by:	wpaul
2001-08-10 22:33:59 +00:00
David E. O'Brien
9fd2cfcc2f Style cleanup. 2001-08-10 22:31:05 +00:00
Ian Dowse
a9a8ba3d71 Arbitrarily limit to 64k the number of bytes that can be read at
a time using the ogetdirentries() compatibility syscall. This is a
hack to ensure that rediculous values don't get passed to MALLOC().

Reviewed by:	kris
2001-08-10 22:14:18 +00:00
Warner Losh
f34a9421b1 Typo 2001-08-10 21:32:53 +00:00
Bruce A. Mah
9e87704b0a Close a </sect1> and add a line of whitespace, discovered during
MFC of 1.3->1.4 delta.
2001-08-10 21:18:35 +00:00
John Baldwin
8791b43513 Work around a race between msleep() and endtsleep() where it was possible
for endtsleep() to be executing when msleep() resumed, for endtsleep()
to spin on sched_lock long enough for the other process to loop on
msleep() and sleep again resulting in endtsleep() waking up the "wrong"
msleep.

Obtained from:	BSD/OS
2001-08-10 21:08:56 +00:00
John Baldwin
a45982d2ea Change callout_stop() to return an integer. If callout_stop() succeeds in
removing the callout entry, return 1.  If callout_stop() fails to remove
the callout entry because it is currently executing or has already been
executed, then the function returns 0.  The idea was obtained from BSD/OS,
however, BSD/OS changed untimeout(), and I've just changed callout_stop()
to be more conservative.

Obtained from:	BSD/OS
2001-08-10 21:06:59 +00:00
John Baldwin
4d33620270 Style nit: covert a couple of if (p_wchan) tests to if (p_wchan != NULL). 2001-08-10 20:56:25 +00:00
Dima Dorfman
7f55e48eb1 Use .Fn, .Fa, and .Dv where appropriate. 2001-08-10 20:49:38 +00:00
Mark Murray
3938427761 Clean up this module very extensively. Fix the logging, the coding
standards and the option handling. This module is now much more easy
to maintain as a part of the FreeBSD tree.
2001-08-10 19:24:34 +00:00
Mark Murray
530ebf8e0a Code clean up; make logging same as other modules and fix warnings. 2001-08-10 19:21:45 +00:00
Mark Murray
34beb374a2 General code clean-up. Sort out warnings, and make the warning and
logging work the same as other modules.
2001-08-10 19:18:52 +00:00
Mark Murray
0fa107a3cb Simplify code. Also verbose logging, verbose overridable error reporting. 2001-08-10 19:15:48 +00:00
Mark Murray
65550d9b5a Verbose logging, overridable verbose error reporting. 2001-08-10 19:12:59 +00:00
Mark Murray
b04259a5cf Module clean-up. Verbose logging, Overridable verbose error reporting,
FreeBSD pam_prompt() usage to simplify conversation function usage.
2001-08-10 19:10:43 +00:00
Mark Murray
2108fbd748 Verbosely (overridable) report failure to the user. 2001-08-10 19:07:45 +00:00
Mark Murray
ceca323626 Use the FreeBSD pam_prompt() interface to the conversation function
instead of home-rolling it. Clean up debugging code and tidy the
module.
2001-08-10 19:05:57 +00:00
Mark Murray
3a9cdcb91f Verbosely report errors to the user (overridable), and make sure
that the correct failure mode is reported.
2001-08-10 19:02:21 +00:00
Dima Dorfman
c2d566eb36 libgmp has been superseded by libmp. 2001-08-10 18:41:56 +00:00
Dima Dorfman
3ec77b1f25 Remove libgmp build infrastructure. 2001-08-10 18:35:08 +00:00
Brian Somers
915ce3bc2a Change copyright to BSD-style copyright.
Ok'd by:	Gabor Kincses <gabor@acm.org>
2001-08-10 17:42:58 +00:00
Dima Dorfman
8779e39a66 cvs updated to 1.11.1p1 2001-08-10 17:41:36 +00:00
Ruslan Ermilov
94ba280c59 mdoc(7) police: join split punctuation to macro calls. 2001-08-10 17:35:21 +00:00
Julian Elischer
d05a918fc3 Do NOT allocate a 1K buffer on the kernel stack.
Found by: Smashed u-area and hardware watch points.
MFC after: 1 week
2001-08-10 17:32:11 +00:00
John Baldwin
e495c5609b Include string.h for the strlen() prototype to quiet a warning. 2001-08-10 16:55:09 +00:00
Ruslan Ermilov
c75526d5a0 mdoc(7) police: fixed the "new sentence" bogons. 2001-08-10 15:03:10 +00:00
Kazutaka YOKOTA
3863b6db4c Fix missing splx(). 2001-08-10 14:26:48 +00:00
Mark Murray
27b9f9d4a3 Fix broken logic so that this actually works for the superuser.
Verbosely log (properly).
Verbosely report errors to the user.
2001-08-10 14:21:58 +00:00
Mark Murray
cfa285d9e4 Rework this to prevent a nasty problem involving different modules'
option interacting with each other.
2001-08-10 14:16:47 +00:00
Mark Murray
0b2e8123ef Declare the new user-error reporting macro.
This is a macro to allow use of the __FILE__ and __FUNCTION__
macros.
2001-08-10 14:15:00 +00:00
Mark Murray
a56dfc9b23 Add a routine for providing feedback via the conversation mechanism
(usually to stderr) for user-reportable errors.
2001-08-10 14:13:16 +00:00
Ruslan Ermilov
57e4378bf6 mdoc(7) police: protect trailing full stops of abbreviations
with a trailing zero-width space: `e.g.\&'.
2001-08-10 13:45:36 +00:00
Poul-Henning Kamp
4446bcb757 Eliminate the hot-spare 'r' in Arrray.
Submitted by:	Søren Schrøder <sch@chaos.dk>
2001-08-10 11:47:08 +00:00
Ruslan Ermilov
b3ebbab8d3 Fixed style bugs (dot `.' at the end of error and warning messages).
Noticed by:	bde
2001-08-10 11:46:37 +00:00
Ruslan Ermilov
a9bef12a45 Markup nits: use diagnostic type lists for error and warning messages.
Backout previous revision.  We should not expand plain text xrefs if
they appear in the literal text, e.g. in the error or warning message
of the library function.  (Submitted by: bde)

Moved "out of memory" from warning to errors section.
2001-08-10 11:41:55 +00:00
Peter Wemm
fcd12d096e Use some slightly less horrible make magic for doing the version stuff. 2001-08-10 11:24:23 +00:00
Peter Wemm
bebb0ae143 One more version related tweak after cvs-1.11 -> 1.11.1p1 2001-08-10 11:18:35 +00:00
Peter Wemm
a12033aa17 Argh, this could not possibly have worked as it existed in the tree. 2001-08-10 11:14:53 +00:00
Peter Wemm
8fd0e04f3a Copy our changes from sccs2rcs.csh to sccs2rcs.in 2001-08-10 11:14:18 +00:00
Peter Wemm
6243bbe945 This commit was generated by cvs2svn to compensate for changes in r81440,
which included commits to RCS files with non-trunk default branches.
2001-08-10 11:04:36 +00:00
Peter Wemm
ca68170342 Update build rules for .in and tidy up. 2001-08-10 11:03:29 +00:00
Peter Wemm
44824e53b8 This commit was generated by cvs2svn to compensate for changes in r81437,
which included commits to RCS files with non-trunk default branches.
2001-08-10 11:02:03 +00:00
Peter Wemm
6431637d4b This file is gone in cvs-1.11.1p1 (replaced by log.in) 2001-08-10 11:00:14 +00:00
Peter Wemm
fcaf4ec9ea This commit was generated by cvs2svn to compensate for changes in r81434,
which included commits to RCS files with non-trunk default branches.
2001-08-10 10:55:45 +00:00
Ruslan Ermilov
2f7ac3085a mdoc(7) police: add zdestroy() to NAME. 2001-08-10 10:53:10 +00:00
Peter Wemm
a8833905d7 Tools dir is now empty and unused 2001-08-10 10:47:28 +00:00
Ruslan Ermilov
6bd44d4d24 mdoc(7) police: fix markup and a SYNOPSIS bug from revision 1.24. 2001-08-10 10:45:59 +00:00
Ruslan Ermilov
3ce0d6e846 mdoc(7) police: fix markup. 2001-08-10 10:43:45 +00:00
Ruslan Ermilov
b87581119e mdoc(7) police: removed (now gratuitous) .Xo/.Xc brackets. 2001-08-10 10:41:30 +00:00