Peter Wemm [Sat, 17 Mar 2001 00:21:54 +0000 (00:21 +0000)]
Stop cron from shouting in the syslog. Use setproctitle() instead, since
smashing argv[0] doesn't have the intended effect of changing the ps(1)
output these days.
Justin T. Gibbs [Sat, 17 Mar 2001 00:12:15 +0000 (00:12 +0000)]
This is an MFC candidate.
Add the AAC_DEBUG option to enable debugging in the aac driver.
Correct a race condition in the interrupt handler where the
controller may queue a fib to a response queue after the driver
has serviced the queue but before the interrupt is cleared.
This could leave a completed fib stranded in the response queue
unless another I/O completed and generated another interrupt.
Jonathan Lemon [Fri, 16 Mar 2001 22:37:06 +0000 (22:37 +0000)]
When doing a recv(.. MSG_WAITALL) for a message which is larger than
the socket buffer size, the receive is done in sections. After completing
a read, call pru_rcvd on the underlying protocol before blocking again.
This allows the the protocol to take appropriate action, such as
sending a TCP window update to the peer, if the window happened to
close because the socket buffer was filled. If the protocol is not
notified, a TCP transfer may stall until the remote end sends a window
probe.
Kenneth D. Merry [Fri, 16 Mar 2001 22:16:54 +0000 (22:16 +0000)]
Fix inquiry length detection for the ses(4) driver. It was using the
inq_len member of the ccb_getdev structure, but we've never filled that
value in..
So we now get the length from the inquiry data returned by the drive.
(Since we will fetch as much inquiry data as the drive claims to support.)
Reviewed by: mjacob
Reported by: Andrzej Tobola <san@iem.pw.edu.pl>
Robert Watson [Fri, 16 Mar 2001 17:42:38 +0000 (17:42 +0000)]
o The revenge of the mdoc(7) police:
- These pages abused Ar macro (they should have used Fa).
- NULL and other numeric constants should be marked with Dv.
- VOP_* in the ERRORS section for the EOPNOTSUPP entry should be marked
with Fn.
Robert Watson [Fri, 16 Mar 2001 15:02:30 +0000 (15:02 +0000)]
o The mdoc(7) police strike with avengance:
- These pages abused Ar macro (they should have used Fa).
- NULL constant should be marked with Dv.
- VOP_* in the ERRORS section for the EOPNOTSUPP entry should be marked
with Fn.
Warner Losh [Fri, 16 Mar 2001 08:07:00 +0000 (08:07 +0000)]
Back out ru's changes. Soren has requested this and I see no reason
to not just do it. It is his new code that is being actively
developed so he has say over it. ru's direct changes were premature
as they occurred less than 4 hours after it was committed to the tree.
Warner Losh [Fri, 16 Mar 2001 07:36:54 +0000 (07:36 +0000)]
Add some devices:
Xircom CreditCard Netwave cnw
Intel PRO/Wireless 2011 (PRISM II) wi
3COM 3CRWE737A (PRISM II) wi
Note: I've had some reports that the latter two cards work, but I've not
been able to get them to work for me.
Warner Losh [Fri, 16 Mar 2001 07:25:42 +0000 (07:25 +0000)]
Commit port of cnw driver from Hiroyuki Aizu-san. This driver
supports Xircom netwave series of cards. I have one of these cards
(but am trying to find one or two to test with), but it compiles and
aizu-san says it works.
I don't know if this supports 802.11 or not. I've seen conflicting
information on this.
Warner Losh [Fri, 16 Mar 2001 06:33:44 +0000 (06:33 +0000)]
Resync to GENERIC. This backs out the spammage that I committed wrt
killing ipv6 and some other things.
This makes GENERIC and NEWCARD the same, with OLDCARD stuff commented
out and the NEWCARD stuff included. For the moment, pcic is commented
out (which has a old). Plus invariants. Plus ddb.
Jonathan Lemon [Thu, 15 Mar 2001 18:50:32 +0000 (18:50 +0000)]
Limit the number of paths that glob can return to MAX_GLOBENTRIES, which
is currently set to 10000. This is intended to prevent glob from running
amok when a highly recursive path is provided (such as "../*/../*/../*/...")
Søren Schmidt [Thu, 15 Mar 2001 15:36:25 +0000 (15:36 +0000)]
Provide the interface to atacontrol and associated logic.
see atacontrol(8) for more.
Also the ATA_ENABLE_ATAPI_DMA, ATA_ENABLE_WC and ATA_ENABLE_TAGS
options are gone, use the tuneables listed in ata.4 instead from
the loader (this makes it possible to switch off DMA before the
driver has to touch the devices on broken hardware).
Ruslan Ermilov [Thu, 15 Mar 2001 14:52:12 +0000 (14:52 +0000)]
net/route.c:
A route generated from an RTF_CLONING route had the RTF_WASCLONED flag
set but did not have a reference to the parent route, as documented in
the rtentry(9) manpage. This prevented such routes from being deleted
when their parent route is deleted.
Now, for example, if you delete an IP address from a network interface,
all ARP entries that were cloned from this interface route are flushed.
This also has an impact on netstat(1) output. Previously, dynamically
created ARP cache entries (RTF_STATIC flag is unset) were displayed as
part of the routing table display (-r). Now, they are only printed if
the -a option is given.
netinet/in.c, netinet/in_rmx.c:
When address is removed from an interface, also delete all routes that
point to this interface and address. Previously, for example, if you
changed the address on an interface, outgoing IP datagrams might still
use the old address. The only solution was to delete and re-add some
routes. (The problem is easily observed with the route(8) command.)
Note, that if the socket was already bound to the local address before
this address is removed, new datagrams generated from this socket will
still be sent from the old address.
PR: kern/20785, kern/21914
Reviewed by: wollman (the idea)
Maxim Sobolev [Thu, 15 Mar 2001 10:47:00 +0000 (10:47 +0000)]
When creating a package sort dependencies in such a way that if dependency
A depends on dependency B then dependency A will be in all cases listed
before B, so ``pkg_add -r'' will fetch/install packages in the correct order.
Previously dependencies were sorted just by its names, which is why
``pkg_add -r'' never actually worked properly.
To be usefull, hovewer, this fix requires that all packages have been
rebuilt, so it will take some time until users would be able to feel
posititive improvements. For the same reasons it is desirable to propagate
these changes to the 4-stable package building cluster *before* 4.3 ports
freeze, so packages for 4.3-RELEASE would be properly prepared.
Bill Fumerola [Thu, 15 Mar 2001 10:33:00 +0000 (10:33 +0000)]
with my mentor hat on...
remove the concept of a 'maintainer' of our make. there really isn't a
need for any one committer to hold an exclusive lock or serve as a filter
for this code.
Will Andrews [Thu, 15 Mar 2001 10:22:50 +0000 (10:22 +0000)]
Revert previous change -- apparently it's not quite right. It broke
src/sys/modules/if_ef and possibly other things. I tested the build with
a make based on rev. 1.26, and it worked fine. Since I'm not particularly
inclined to figure out what's going on with this, it's probably prudent
just to back it out for now.
Peter Wemm [Thu, 15 Mar 2001 06:56:51 +0000 (06:56 +0000)]
Add a placeholder for the ServerWorks OSB4 device id. The SMBus
interface on this chip is compatable with the PIIX4. The catch is that
this interferes with isab0 which wants to attach to the same PCI node.
It seems to work, but we only tested it on systems with no ISA cards.
Peter Wemm [Thu, 15 Mar 2001 05:10:06 +0000 (05:10 +0000)]
Kill the 4MB kernel limit dead. [I hope :-)].
For UP, we were using $tmp_stk as a stack from the data section. If the
kernel text section grew beyond ~3MB, the data section would be pushed
beyond the temporary 4MB P==V mapping. This would cause the trampoline
up to high memory to fault. The hack workaround I did was to use all of
the page table pages that we already have while preparing the initial
P==V mapping, instead of just the first one.
For SMP, the AP bootstrap process suffered the same sort of problem and
got the same treatment.
MFC candidate - this breaks on 4.x just the same..
Thanks to: Richard Todd <rmtodd@ichotolot.servalan.com>
Robert Watson [Thu, 15 Mar 2001 03:09:48 +0000 (03:09 +0000)]
o Update getextattr and setextattr utilities to take into account the
revised EA interface with explicit namespacing. Link against libutil
to provide string/constant conversion for namespaces. Document
revised interface.
Robert Watson [Thu, 15 Mar 2001 03:04:35 +0000 (03:04 +0000)]
o Update extattrctl to take into account the updated EA interface with
explicit namespaces. Modify it to use libutil for string/constant
namespace conversions. Update the documentation to take into account
the new interface.
Robert Watson [Thu, 15 Mar 2001 03:00:39 +0000 (03:00 +0000)]
o To support new EA interface with explicit namespaces, introduce two
utility functions which convert between string namespace names and
numeric constants used by the interface. Right now, two namespaces
are supported, EXTATTR_NAMESPACE_SYSTEM ("system") and
EXTATTR_NAMESPACE_USER ("user"). These functions are used by
various userland EA utilities, rather than hard coding the routines
all over the place.
Robert Watson [Thu, 15 Mar 2001 02:54:29 +0000 (02:54 +0000)]
o Change the API and ABI of the Extended Attribute kernel interfaces to
introduce a new argument, "namespace", rather than relying on a first-
character namespace indicator. This is in line with more recent
thinking on EA interfaces on various mailing lists, including the
posix1e, Linux acl-devel, and trustedbsd-discuss forums. Two namespaces
are defined by default, EXTATTR_NAMESPACE_SYSTEM and
EXTATTR_NAMESPACE_USER, where the primary distinction lies in the
access control model: user EAs are accessible based on the normal
MAC and DAC file/directory protections, and system attributes are
limited to kernel-originated or appropriately privileged userland
requests.
o These API changes occur at several levels: the namespace argument is
introduced in the extattr_{get,set}_file() system call interfaces,
at the vnode operation level in the vop_{get,set}extattr() interfaces,
and in the UFS extended attribute implementation. Changes are also
introduced in the VFS extattrctl() interface (system call, VFS,
and UFS implementation), where the arguments are modified to include
a namespace field, as well as modified to advoid direct access to
userspace variables from below the VFS layer (in the style of recent
changes to mount by adrian@FreeBSD.org). This required some cleanup
and bug fixing regarding VFS locks and the VFS interface, as a vnode
pointer may now be optionally submitted to the VFS_EXTATTRCTL()
call. Updated documentation for the VFS interface will be committed
shortly.
o In the near future, the auto-starting feature will be updated to
search two sub-directories to the ".attribute" directory in appropriate
file systems: "user" and "system" to locate attributes intended for
those namespaces, as the single filename is no longer sufficient
to indicate what namespace the attribute is intended for. Until this
is committed, all attributes auto-started by UFS will be placed in
the EXTATTR_NAMESPACE_SYSTEM namespace.
o The default POSIX.1e attribute names for ACLs and Capabilities have
been updated to no longer include the '$' in their filename. As such,
if you're using these features, you'll need to rename the attribute
backing files to the same names without '$' symbols in front.
o Note that these changes will require changes in userland, which will
be committed shortly. These include modifications to the extended
attribute utilities, as well as to libutil for new namespace
string conversion routines. Once the matching userland changes are
committed, a buildworld is recommended to update all the necessary
include files and verify that the kernel and userland environments
are in sync. Note: If you do not use extended attributes (most people
won't), upgrading is not imperative although since the system call
API has changed, the new userland extended attribute code will no longer
compile with old include files.
o Couple of minor cleanups while I'm there: make more code compilation
conditional on FFS_EXTATTR, which should recover a bit of space on
kernels running without EA's, as well as update copyright dates.
Will Andrews [Thu, 15 Mar 2001 02:51:11 +0000 (02:51 +0000)]
Fix make(1) bug: nested comments may be placed in .if, .else .if, and
.endif statements but can't be placed in .elif. Basically, the problem
was that ParseSkipLine() didn't handle comments the same way that
ParseReadLine() did, and thus you had errors with comments that are on a
conditional line (i.e. "^.") rather than a non-conditional line.
Andrew Gallatin [Thu, 15 Mar 2001 02:32:26 +0000 (02:32 +0000)]
remove bogus check -- for kernel threads we fork off of proc0, not curproc
This was causing panics when modules which create kthreads were loaded
after boot.
Paul Saab [Wed, 14 Mar 2001 23:53:25 +0000 (23:53 +0000)]
Don't set the gateway address if the netmask is zero or we're on
the same network. PXE does not do netmask calculations, so if the
gateway is set it will use it.