Sam Leffler [Wed, 7 Jun 2006 17:53:15 +0000 (17:53 +0000)]
remove ath hal options; having them here causes opt_ah.h to be clobbered
by config and that breaks builds unless one duplicates the options in the
config file
Joseph Koshy [Wed, 7 Jun 2006 16:51:54 +0000 (16:51 +0000)]
Catch up with the rename of symbol VDOOMED to VI_DOOMED in revision
1.198 of "sys/sys/vnode.h". Remove a cross-reference to a manual
page that never existed.
---------------------------------------------------------------------- CVS:
PR: Fill this in if a GNATS PR is affected by the
change. CVS: Submitted by: Fill this in if someone else sent
in the change. CVS: Reviewed by: Fill this in if someone else
reviewed your modification. CVS: Approved by: Fill this in if
you needed approval for this commit. CVS: Obtained from: Fill
this in if the change is from third party software. CVS: MFC after:
N [day[s]|week[s]|month[s]] CVS: Fill in to get MFC notification
later. (days assumed unless specified) CVS:
---------------------------------------------------------------------- CVS:
Enter Log. Lines beginning with `CVS:' are removed automatically
Gleb Smirnoff [Wed, 7 Jun 2006 10:26:51 +0000 (10:26 +0000)]
Add section describing how ARP load balancing works and its
limitations:
- Can't load balance behind router
- ARP balancing + pfsync probably won't work
Pyun YongHyeon [Wed, 7 Jun 2006 09:05:20 +0000 (09:05 +0000)]
Fix watchdog timeout errors seen on a few systems.
SK-NET GENESIS document says reading SK_ISSR should stop generating
further interrupts(Since we drop a driver lock before invoking
ifp->if_input handler we should disable interrupts in ISR in order
to protect integrity of softc from subsequent interrupts). But it
seems that there is possibility of loosing interrupts between
reading SK_ISSR and determining which interrupts are reported.
To cope with the situation we continuously read SK_ISSR register
until there are no interrupts. However, it seems that the above
work around doesn't fix all cases. To protect watchdog handler
from triggering false alarm add a work around code which try to
reclaim pending Tx descriptors before resetting hardware. This
should fix occasional watchdog timeout errors seen on this driver.
Reported by: Frank Behrens <frank AT pinky dot sax dot de >
Tested by: Frank Behrens <frank AT pinky dot sax dot de >
Tom Rhodes [Wed, 7 Jun 2006 03:33:48 +0000 (03:33 +0000)]
Simply running ``make world'' will bomb unless you dig up the
undocumented HISTORICAL_MAKE_WORLD variable and set it. Note it
here so the blow up will not really be a surprise to people who
read.
Link the buildingworld chapter of our handbook in the README
while I'm here.
Craig Rodrigues [Tue, 6 Jun 2006 21:56:49 +0000 (21:56 +0000)]
For network filesystems (NFS, samba, etc.), do not pass "export" nmount()
parameter to try to delete an NFS export. It won't work, and will log
a spurious warning to syslog.
Tested by: Arno J. Klaassen <arno at heho dot snv dot jussieu dot fr>
MFC after: 3 days
Warner Losh [Tue, 6 Jun 2006 16:24:54 +0000 (16:24 +0000)]
Create a new target 'buildenvvars'. This target reports the build
environment for cross building (the same one you'd get interactively
in make buildenv). This cannot be a simple
make -f Makefile.inc1 -V WMAKEENV
because in PATH is not set correctly unless one takes a trip through
the Makefile/Makefile.inc1 indirection, the logic of which is too
large to reproduce outside of Makefiles.
Don't increase hst_obytes field twice - it is already done at the begining
of the function.
It was wrong anyway, because we also support uio's structures, not only
mbufs.
Gleb Smirnoff [Tue, 6 Jun 2006 08:03:49 +0000 (08:03 +0000)]
The procedure of raceless switching between polling mode and
taskqueued interrupt mode is going to be quite complex. Since
the polling mode is considered legacy feature for em(4) driver,
the decision is made to make polling and new interrupt handler
mutually exclusive, selected at compile time.
If kernel is compiled with DEVICE_POLLING, the fast taskqueued
interrupt handler code is disabled and the em_poll() and legacy
em_intr() functions are enabled. Otherwise, legacy functions
are disabled and only em_intr_fast() code is compiled.
Xin LI [Tue, 6 Jun 2006 05:01:12 +0000 (05:01 +0000)]
Cleanups for mailwrapper(8):
- K&R -> ANSI prototype [O]
- Do not bother to do free right before exit() or execve() [O]
- Remove some dead code in addarg()
- Make additional parameters specified in mailer.conf(5)
actually work and document the fact. [N]
- Avoid using __progname but instead use getprogname()
and setprogname() to provide more sensible messages. [O, N]
- Update $OpenBSD$ and $NetBSD$ to reflect the fact that we
have sync'ed with their code.
- WARNS=6
Matt Jacob [Mon, 5 Jun 2006 22:22:14 +0000 (22:22 +0000)]
Add PIM_SEQSCAN for HBA misc flags and code that understands
what to do with it.
This forces us to scan targets sequentially, not in parallel.
The reason we might want to do this is that SPI negotiation
might not work right at the SIM level if we try to do it
in parallel. We *could* fix this for each SIM where this is
broken, but it's a lot harder to do that when we can simply
ask CAM to probe sequentially.
If PIM_SEQSCAN is not set (default), the original behaviour for
probing is unchanged.
LUN probing is still done in parallel for each target in either
case.
While we're at it, clean up some resource leakage for error
cases.
Userland bits of geli(8) data authentication.
Now, encryption algorithm is given using '-e' option, not '-a'.
The '-a' option is now used to specify authentication algorithm.
Supported by: Wheel Sp. z o.o. (http://www.wheel.pl)
Qing Li [Mon, 5 Jun 2006 21:20:21 +0000 (21:20 +0000)]
Assuming the interface has an address of x.x.x.195, a mask of
255.255.255.0, and a default route with gateway x.x.x.1. Now if
the address mask is changed to something more specific, e.g.,
255.255.255.128, then after the mask change the default gateway
is no longer reachable.
Since the default route is still present in the routing table,
when the output code tries to resolve the address of the default
gateway in function rt_check(), again, the default route will be
returned by rtalloc1(). Because the lock is currently held on the
rtentry structure, one more attempt to hold the lock will trigger
a crash due to "lock recursed on non-recursive mutex ..."
This is a general problem. The fix checks for the above condition
so that an existing route entry is not mistaken for a new cloned
route. Approriately, an ENETUNREACH error is returned back to the
caller
Alan Cox [Mon, 5 Jun 2006 20:35:27 +0000 (20:35 +0000)]
Introduce the function pmap_enter_object(). It maps a sequence of resident
pages from the same object. Use it in vm_map_pmap_enter() to reduce the
locking overhead of premapping objects.
Sam Leffler [Mon, 5 Jun 2006 17:43:51 +0000 (17:43 +0000)]
Version 0.9.17.2:
o define HAL_SOFTC, HAL_BUS_TAG, and HAL_BUS_HANDLE to be machine
independent; this fixes portability issues with bsd systems
o add ah_disable api for turning off operation of both MAC and PHY
o add ah_getAntennaSwitch and ah_setAntennaSwitch api's for better control
of antenna usage and diversity
o add ah_setAckCTSRate and ah_setAckCTSRate for controlling tx rate of
h/w generated frames
o add ah_setBeaconTimers api for simpler setting of the beacon timer registers
o remove ah_waitForBeaconDone api
o add HAL_TXDESC_DURENA flag to enable h/w duration setting in tx descriptor
o correct documentation of min/max tx power units (.5 dBm)
o switch arm, mips, and powerpc builds to use functions for register
read/write operations
o fix sparc builds to not reference %g2 and %g3 registers
o add public builds for SoC's
- Document that padlock(4) pretends to accelerate HMAC algorithms.
- Remove "device cryptodev" as it is not needed for compiling padlock(4)
into the kernel. Actually it is not advisable, because padlock
instructions can be used directly from userland, so passing the work
through the kernel is a bad idea.
- Pretend to accelerate various HMAC algorithms, so padlock(4) can be used
with fast_ipsec(4) and geli(8) authentication (comming soon).
If consumer requests only for HMAC algorithm (without encryption), return
EINVAL.
- Add support for the CRD_F_KEY_EXPLICIT flag, for both encryption and
authentication.
Robert Watson [Mon, 5 Jun 2006 16:12:00 +0000 (16:12 +0000)]
When generating the process token, need to check whether the
process was sucessfully audited. Otherwise, generate the PID
token. This change covers the pid < 0 cases, and pid lookup
failure cases.
Robert Watson [Mon, 5 Jun 2006 15:26:09 +0000 (15:26 +0000)]
Break out description of the audit pipe facility from audit.4 into a new
man page, auditpipe.4, which describes the behavior of audit pipes, the
ioctls, preselection, etc.
Marius Strobl [Mon, 5 Jun 2006 15:14:14 +0000 (15:14 +0000)]
Revert the part of rev. 1.3 which changed the software style to be
set to ILACC rather than PCnet-PCI as VMware doesn't implement ILACC
compatibility, resulting in the VMware virtual machine to crash if
enabled. Add a comment regarding usage of ILACC vs. PCnet-PCI mode.
Replace absolute addressing in the call instructions with position-independend
calls. This eliminates TEXTREL from libc, making its text segment relocatable.
PR: i386/85242
Approved by: kan (mentor)
MFC after: 1 month
Robert Watson [Mon, 5 Jun 2006 14:48:17 +0000 (14:48 +0000)]
Introduce support for per-audit pipe preselection independent from the
global audit trail configuration. This allows applications consuming
audit trails to specify parameters for which audit records are of
interest, including selecting records not required by the global trail.
Allowing application interest specification without changing the global
configuration allows intrusion detection systems to run without
interfering with global auditing or each other (if multiple are
present). To implement this:
- Kernel audit records now carry a flag to indicate whether they have
been selected by the global trail or by the audit pipe subsystem,
set during record commit, so that this information is available
after BSM conversion when delivering the BSM to the trail and audit
pipes in the audit worker thread asynchronously. Preselection by
either record target will cause the record to be kept.
- Similar changes to preselection when the audit record is created
when the system call is entering: consult both the global trail and
pipes.
- au_preselect() now accepts the class in order to avoid repeatedly
looking up the mask for each preselection test.
- Define a series of ioctls that allow applications to specify whether
they want to track the global trail, or program their own
preselection parameters: they may specify their own flags and naflags
masks, similar to the global masks of the same name, as well as a set
of per-auid masks. They also set a per-pipe mode specifying whether
they track the global trail, or user their own -- the door is left
open for future additional modes. A new ioctl is defined to allow a
user process to flush the current audit pipe queue, which can be used
after reprogramming pre-selection to make sure that only records of
interest are received in future reads.
- Audit pipe data structures are extended to hold the additional fields
necessary to support preselection. By default, audit pipes track the
global trail, so "praudit /dev/auditpipe" will track the global audit
trail even though praudit doesn't program the audit pipe selection
model.
- Comment about the complexities of potentially adding partial read
support to audit pipes.
By using a set of ioctls, applications can select which records are of
interest, and toggle the preselection mode.