| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
drain routines are done by swi_net, which allows for better queue control
at some future point. Packets may also be directly dispatched to a netisr
instead of queued, this may be of interest at some installations, but
currently defaults to off.
Reviewed by: hsu, silby, jayanth, sam
Sponsored by: DARPA, NAI Labs
|
|
|
|
|
| |
so that we allow a sleepable lock to be acquired with Giant held rather
than allowing a sleepable lock to be acquired with anything but Giant held.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Use gbincore() and not incore() so that we can drop the vnode interlock
as we acquire the buflock.
- Use GB_LOCK_NOWAIT when getting bufs for read ahead clusters so that we
don't block on locked bufs.
- Convert a while loop to a howmany() that will most likely be faster on
modern processors. There is another while loop divide that was left
near by because it is operating on a 64bit int and is most likely faster.
- Cleanup the cluster_read() code a little to get rid of a goto and make
the logic clearer.
Tested on: x86, alpha
Tested by: Steve Kargl <sgk@troutmask.apl.washington.edu>
Reviewd by: arch
|
|
|
|
|
|
|
| |
already own. The mtx_trylock() will fail however. Enhance the comment
at the top of the try lock function to explain this.
Requested by: jlemon and his evil netisr locking
|
|
|
|
| |
the opposite. Does this pointy hat look good on me?
|
|
|
|
| |
to WITNESS_WARN().
|
|
|
|
| |
a handler from an interrupt thread.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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.
|
|
|
|
|
|
|
|
| |
- 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.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
Hyperthreading support is now off unless the HTT option is added.
MFC-after: 3 days
|
|
|
|
|
|
|
| |
be doing a m_gethdr(), not an m_get().
Pointed out by: Hiten Pandya <hiten@unixdaemons.com>
Pointy hat to: Me
|
| |
|
| |
|
|
|
|
| |
Spotted by: johan
|
|
|
|
| |
will be removed. Give terse pointer to ifconfig h0h0 magic to use.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
partner.
|
|
|
|
| |
Approved by: re
|
|
|
|
| |
* Boemler: vendors.txt (2003-02-13)
|
| |
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
- 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
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
for installkernel to wipe them out later. So install them under
/boot/modules if that is the case.
|
|
|
|
|
| |
up with this further by excluding /modules from the (default)
kern.module_path.
|
|
|
|
| |
Inspired by: bsd.prog.mk,v 1.105
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
time.
|
| |
|
| |
|
|
|
|
| |
MFC noted: ISC DHCP 3.0.1RC11.
|
| |
|
| |
|
|\
| |
| |
| | |
which included commits to RCS files with non-trunk default branches.
|
| | |
|
| |
| |
| |
| | |
any initializations which are not done right.
|
| |
| |
| |
| | |
Ditch the D_KQFILTER flag which was used to prevent calling NULL pointers.
|
| |
| |
| |
| |
| |
| | |
PR: 29363 (a small part of)
Submitted by: dinoex
MFC after: 3 weeks
|
| |
| |
| |
| |
| | |
Don't send doorbell and send ORB pointer only if it's necessary.
This reduces bus traffic and interrupts much.
|
| | |
|