Commit Graph

87174 Commits

Author SHA1 Message Date
jhb
c5a53306ce A small overhaul of witness:
- Add a comment about special lock order rules and Giant near the top of
  subr_witness.c.  Specifically, this documents and explains the real lock
  order relationship between Giant and sleepable locks (i.e. lockmgr locks
  and sx locks).  Basically, Giant can be safely acquired either before or
  after sleepable locks and the case of Giant before a sleepable lock is
  exempted as a special case.
- Add a new static function 'witness_list_lock()' that displays a single
  line of information about a struct lock_instance.  This is used to
  make the output of witness messages more consistent and reduce some code
  duplication.
- Fixup a few comments in witness_lock().
- Properly handle the Giant-before-sleepable-lock lock order exception in
  a more general fashion and remove the no longer needed LI_SLEPT flag.
- Break up the last condition before assuming a reversal a bit to try
  and make the logic less confusing in witness_lock().
- Axe WITNESS_SLEEP() now that LI_SLEPT is no longer needed and replace it
  with a more general WITNESS_WARN() macro/function combination.
  WITNESS_WARN() allows you to output a customized message out to the
  console along with a list of held locks.  It will optionally drop into
  the debugger as well.  You can exempt a single lock from the check by
  passing it in as the second argument.  You can also use flags to specify
  if Giant should be exempt from the check, if all sleepable locks should
  be exempt from the check, and if witness should panic if any non-exempt
  locks are found.
- Make the witness_list() function static.  Other areas of the kernel
  should use the new WITNESS_WARN() instead.
2003-03-04 20:56:39 +00:00
jhb
f78f351da3 Miscellaneous cleanups to _mtx_lock_sleep():
- Declare some local variables at the top of the function instead of in a
  nested block.
- Use mtx_owned() instead of masking off bits from mtx_lock manually.
- Read the value of mtx_lock into 'v' as a separate line rather than inside
  an if statement for clarity.  This code is hairy enough as it is.
2003-03-04 20:32:41 +00:00
jhb
3b2bb7e47b Properly assert that mtx_trylock() is not called on a mutex we already
owned.  Previously the KASSERT would only trigger if we successfully
acquired a lock that we already held.  However, _obtain_lock() fails to
acquire locks that we already hold, so the KASSERT was never checked in
the case it was supposed to fail.
2003-03-04 20:30:30 +00:00
jhb
1ccbcbaf68 Wrap the hyperthreading support code with the HTT kernel option.
Hyperthreading support is now off unless the HTT option is added.

MFC-after:	3 days
2003-03-04 20:24:53 +00:00
bmilekic
60ca7c6bf6 Fix bug introduced in 1.130. For the < MHLEN case, we should
be doing a m_gethdr(), not an m_get().

Pointed out by: Hiten Pandya <hiten@unixdaemons.com>
Pointy hat to: Me
2003-03-04 20:19:26 +00:00
phk
e196887b27 Fix a bug in the white-space remover. 2003-03-04 19:20:52 +00:00
peter
41654eba84 Add cvsroot-all to the example 2003-03-04 19:02:27 +00:00
ru
cc661efe39 Doh, committed to the wrong branch.
Spotted by:	johan
2003-03-04 17:24:18 +00:00
imp
a658027292 Start whining to stderr when people use obsolete flags. These flags
will be removed.  Give terse pointer to ifconfig h0h0 magic to use.
2003-03-04 14:59:48 +00:00
imp
e168271f0c another obsolete flag 2003-03-04 14:55:58 +00:00
imp
df00c1529d Correct mistake in T flag: weptxkey is the replacement 2003-03-04 14:54:49 +00:00
imp
69865be330 Document the obsolete flags as obsolete, with pointers to their
ifconfig equivalents.  This is the first step in removing them from
the system.  Users of wicontrol to configure the wireless card are
strongly encouraged to change their scripts, as sometime in the future
all configuration of the cards that isn't in ifconfig will be removed
with extreme prejustice.
2003-03-04 14:47:19 +00:00
phk
fe74d8aaa6 Bump __FreeBSD_version to mark new cdevsw initialization. 2003-03-04 12:44:48 +00:00
phk
21654c3b17 Initialize the second buffer for mirroring to point to itself and not its
partner.
2003-03-04 10:15:19 +00:00
ru
1ad4049fcc MFC: Ship with /etc/login.conf hashed.
Approved by:	re
2003-03-04 09:49:00 +00:00
sheldonh
a91ea472ec Regen:
* Boemler:	vendors.txt (2003-02-13)
2003-03-04 09:13:28 +00:00
simokawa
0cd251e418 Fix printf warning on RELENG_4. 2003-03-04 06:47:17 +00:00
jeff
8f4d53e3aa - Create a function sched_interact_score() which decides on the
interactivity of a kseg and assigns it a value of 0 through 100.
 - Use sched_interact_score() to determine the dynamic priority.
 - Define SCHED_CURR() in terms of sched_interact_score().
 - Adjust the maximum slice back down to 100ms.
 - Remove redundant clearing of ke_runq in sched_wakeup()
 - Clean up #defines and comment them.
2003-03-04 02:45:59 +00:00
jeff
4de0ae322c - Add a new 'flags' parameter to getblk().
- Define one flag GB_LOCK_NOWAIT that tells getblk() to pass the LK_NOWAIT
   flag to the initial BUF_LOCK().  This will eventually be used in cases
   were we want to use a buffer only if it is not currently in use.
 - Convert all consumers of the getblk() api to use this extra parameter.

Reviwed by:	arch
Not objected to by:	mckusick
2003-03-04 00:04:44 +00:00
jeff
7880d78b55 - Correct the wchan in vop_stdfsync()
This is almost what bde asked for.  There is some desire to have per fs wchans
still but that is difficult giving the current arrangement of the code.
2003-03-03 23:37:50 +00:00
ru
6b990c6f87 If we carry our MODULES_WITH_WORLD, we probably also do not want
for installkernel to wipe them out later.  So install them under
/boot/modules if that is the case.
2003-03-03 22:54:35 +00:00
ru
f9c71e51d9 FreeBSD 5.0 has stopped shipping /modules 2.5 years ago. Catch
up with this further by excluding /modules from the (default)
kern.module_path.
2003-03-03 22:53:35 +00:00
ru
b9d961af59 exists() is too aggressive when searching for files without a full path.
Inspired by:	bsd.prog.mk,v 1.105
2003-03-03 22:51:22 +00:00
ru
bc6ef60e0e 3rd party modules live in /boot/modules nowadays. 2003-03-03 22:49:21 +00:00
ru
eac90e51b8 Correct the path to the modules directory. 2003-03-03 22:48:49 +00:00
ru
4972c7efeb Add an xref to kldconfig(8). 2003-03-03 22:48:06 +00:00
ru
c8dda64242 /modules is gone long ago, use the safe equivalents. 2003-03-03 22:46:36 +00:00
phantom
4f2d1b56c7 MFlibc_r: add and document pthread_attr_get_np() function. 2003-03-03 22:40:20 +00:00
njl
84c3532e0f Pick up one file missed in the previous vprint() cleanup 2003-03-03 19:50:36 +00:00
njl
5a225ad933 Finish cleanup of vprint() which was begun with changing v_tag to a string.
Remove extraneous uses of vop_null, instead defering to the default op.
Rename vnode type "vfs" to the more descriptive "syncer".
Fix formatting for various filesystems that use vop_print.
2003-03-03 19:15:40 +00:00
bmah
7e3263308b SA:03-04 note was a poor cut-n-paste from the SA. Do it right this
time.
2003-03-03 18:23:57 +00:00
bmah
e1ea0f1223 New errata item: SA-03:04. 2003-03-03 18:20:00 +00:00
bmah
ace1448c0d New release note: SA-03:04. 2003-03-03 18:12:43 +00:00
bmah
8b37fbb537 Updated release notes: sendmail-8.12.8 (+MFC), tcpdump-3.7.2 (+MFC).
MFC noted:  ISC DHCP 3.0.1RC11.
2003-03-03 17:48:09 +00:00
gshapiro
909f920c2e sendmail 8.12.8 has been imported 2003-03-03 17:25:49 +00:00
gshapiro
82f90419f3 Fix conflicts from sendmail 8.12.8 import 2003-03-03 17:18:01 +00:00
gshapiro
6cbdf4ebe1 This commit was generated by cvs2svn to compensate for changes in r111823,
which included commits to RCS files with non-trunk default branches.
2003-03-03 17:09:13 +00:00
gshapiro
8b739caa56 Import sendmail 8.12.8 2003-03-03 17:09:13 +00:00
phk
8465095037 Rearrange the members of struct cdevsw to be absolutely sure to catch
any initializations which are not done right.
2003-03-03 16:34:54 +00:00
phk
b67232b68c Make nokqfilter() return the correct return value.
Ditch the D_KQFILTER flag which was used to prevent calling NULL pointers.
2003-03-03 16:24:47 +00:00
gad
8b25734b05 Add missing 'static' on two routines, so they match their declarations.
PR:		29363 (a small part of)
Submitted by:	dinoex
MFC after:	3 weeks
2003-03-03 15:31:35 +00:00
simokawa
303b5cebb7 Simplify ORB queue management.
Don't send doorbell and send ORB pointer only if it's necessary.
This reduces bus traffic and interrupts much.
2003-03-03 15:27:29 +00:00
phk
7499df5457 Add a "-S sectorsize" option to enable Kirk to find a bug :-) 2003-03-03 13:05:00 +00:00
phk
8a0180038b Don't initialize d_kqfilter to 0. 2003-03-03 12:48:14 +00:00
des
66c619c7d8 Add and document support for a FETCH_BIND_ADDRESS environment variable
specifying a local address to bind sockets to.  Caveat: lightly tested.

PR:		bin/37572
2003-03-03 12:35:03 +00:00
phk
0ae911eb0e Gigacommit to improve device-driver source compatibility between
branches:

Initialize struct cdevsw using C99 sparse initializtion and remove
all initializations to default values.

This patch is automatically generated and has been tested by compiling
LINT with all the fields in struct cdevsw in reverse order on alpha,
sparc64 and i386.

Approved by:    re(scottl)
2003-03-03 12:15:54 +00:00
grehan
e58d97a666 Simplify ofw_pci_fixup(). It doesn't need to be recursive, since the
bridge code already handles IRQ adjustment on the far side of a bridge.

Reviewed by:  benno
2003-03-03 12:05:06 +00:00
ru
74cf5d6de7 mdoc(7) police: Revision. 2003-03-03 11:51:30 +00:00
sos
170c53b3f2 Minor cleanup of the Promise code. 2003-03-03 11:51:08 +00:00
ru
779559752b mdoc(7) police: Nits. 2003-03-03 11:45:18 +00:00