Ian Dowse [Thu, 5 Apr 2001 17:18:36 +0000 (17:18 +0000)]
Add IPv6 support to showmount(8). This replaces IPv4-specific code
with calls to the new protocol-independent clnt_*_create functions
provided by ti-rpc. Martin submitted a more complex patch to achieve
this, but it turns out that clnt_create() does everything we need.
Warner Losh [Thu, 5 Apr 2001 17:00:46 +0000 (17:00 +0000)]
Soften the dire warnings about this code. Things are kinda working
now and it does compile :-). There are still some issues, but it is a
good time to soften the warning.
* Fix a bug which prevented the second invocation of overloaded
subs governed by SelfLoader from functioning.
* Fix a bug with XS modules. MakeMaker determines where the xsubpp
preprocessor is located by adding "ExtUtils" string to the Perl's
system path. At the same time, BSDPAN has to fool MakeMaker into
thinking that the Perl's system path is elsewhere. Now we
`reverse-adjust' the notion of the Perl's system path for a
moment, so xsubpp utility is found.
This should fix the breakage with some p5- ports.
Reported by: vanilla
Submitted by: Anton Berezin <tobez@tobez.org>
Don't call prom_open() multiple times. This confuses some versions of SRM
and makes it impossible to boot from floppy and CD on some AlphaServer
platforms.
Detective work by: Michael Richards <michael@fastmail.ca>
Mike Pritchard [Thu, 5 Apr 2001 09:37:55 +0000 (09:37 +0000)]
We don't use the "pseudo-device" configuration option any longer,
so update the example to use the correct definition.
Add an example for documenting kernel compile options, along with
a small example of how to reference them in the main text of the
man page (I.e. the .Dv macro).
Inspired-by: a brief exchange I saw in in the commit messages mail
Robert Watson [Thu, 5 Apr 2001 06:12:38 +0000 (06:12 +0000)]
o Rather than arbitrarily construct a credential in the nfs_statfs()
VFS operation, make use of the calling process's credential. This
solution may not be ideal (there are a number of other possible
proposals, including making use of the proc0 credential, adding a
credential argument to the VFSOP, and switching from a hard-coded
ucred to a hard-coded nfscred), it is simple and appears to
work. The arguments against using simply crget() are fairly
strong: it is the only place in the code (other than a nearly
identical invocation in ncp) where crget() is invoked, other than
in the process credential creation code; as ucred becomes extensible,
this use of crget() without appropriate context results in less and
less meaningful credential data. The implementation here will
probably be tweaked as a result of experimentation and further
exploration of the requirements. In the mean-time, it allows
progress to be made in ucred expansion for new security models without
causing a crash every time df is used on an NFS mounted file system.
This code has been interop tested against FreeBSD and Solaris NFS
servers. While using the process credentials should not introduce
interop problems, please let me know if any turn out to exist.
Change a couple of M_WAITOKs used in M_PREPEND() to M_TRYWAITs, which
is what they should be. As the returned mbuf is already checked for
failure of M_PREPEND even in the wait case, nothing more to be done
here.
Various style fixes.
Also place the macros under #ifdef _KERNEL. Equally hide the internal
structures such as the freelist structs which include condition variables.
- Add descriptions and cross-references for the ACL editing library
functions.
- Place the acl_dup() description in alphabetical order.
- Move the POSIX.1e descriptions under the ENVIRONMENT section to the
STANDARDS section.
Don't allow immediate values of 0 for operations that can take either an
immediate value or the accumulator. 0 is the chip's internal
representation for the accumulator, and so 0 is an invalid immediate value
when the accumulator can also be specified as an argument.
Matt Jacob [Wed, 4 Apr 2001 21:58:29 +0000 (21:58 +0000)]
Redo a lot of the target mode infrastructure to be cognizant of Dual Bus
cards like the 1280 && the 12160. Cleanup isp_target_putback_atio.
Make sure bus and correct tag ids and firmware handles get propagated
as needed.
Matt Jacob [Wed, 4 Apr 2001 21:53:59 +0000 (21:53 +0000)]
Complete some Ansification. Check to make sure, in tdma_mk, that we won't
overflow the request queue. The reason we want to do this is that we
now push out completed CTIOs as we complete them- this gets the QLogic
working on them quicker. So we need to know whether we can put the entire
burrito out before we start.
We now support conjoint status with data for the last CTIO for both Fibre
Channel and SCSI. Leave the old code in place in case we need to go back
(minor 3 line ifdef).
Ultra-ultra important- *don't* set rq->req_seg_count for non-data
target mode requests in isp_pci_dmasetup. D'oh- this is actually
the tag value area for a CTIO. What *was* I thinking? Boy howdy
does both aic7xxx and sym get awfully unhappy when on reconnect
you give them a constant '1' for a tag value.
Matt Jacob [Wed, 4 Apr 2001 21:49:51 +0000 (21:49 +0000)]
Perform some more Ansification. Remove and then replace the isp_putback_atio
function- we did it a bit cleaner. We only use this if a CTIO completes with
!CT_OK state. We now have managed to get away without having to poke around
and trying to find the original ATIO- the csio we're using has the tag_id
and lun values with it which is mostly what we need when we do the putback.
Make sure we correctly propagate AT_TQAE->CT_TQAE for tags. Make sure
we call ISP_DMAFREE only if we had DATA to move.
Matt Jacob [Wed, 4 Apr 2001 21:46:48 +0000 (21:46 +0000)]
Amazing. The bits to enable tagged queing in target mode, grok that a
tag is active for an ATIO, and say that you want to reconnect with
a tag value in a CTIO have *never* been exercised until now. This lossage
derived from Solaris code where this stuff originally came from that is
about 7 years old. Amazing.
We now bundle the incoming tag (legal values are 0..256) as the low
16 bits of the ccb_accept_tio's at_tagid while we put the firmware
handle for this ATIO in the top 16 bits- define some macros to make
this cleaner.
Matt Jacob [Wed, 4 Apr 2001 21:42:59 +0000 (21:42 +0000)]
After loading f/w, for FC cards print out Firmware Attributes.
Redo establishment of default SCSI parameters whether or not
we've been compiled for target mode. Unfortunately, the Qlogic
f/w is confused so that if we set all targets to be 'safe' (i.e.,
narrow/async), it will also then report narrow, async if we're
contacted in target mode from that target (acting in initiator
role). D'oh!
Fix ISPCTL_TOGGLE_TMODE to correctly enable the right channel for
dual channel cards. Add some more opcodes. Fix a stupid NULL
pointer bug.
Matt Jacob [Wed, 4 Apr 2001 18:24:35 +0000 (18:24 +0000)]
If we have and error and are booting verbosely, don't be complaining
if this was a non-retryable selection timeout- wading through 256 targets
worth of Fibre Channel 'selection timeouts' is tedious at best.
Thomas Moestl [Wed, 4 Apr 2001 18:17:28 +0000 (18:17 +0000)]
Activate build of posix1e extensions in libc and libc_r that have been
moved in from libposix1e, and deactivate build of the soon-to-be-removed
libposix1e.
Thomas Moestl [Wed, 4 Apr 2001 18:00:52 +0000 (18:00 +0000)]
Prepare for the inclusion of libposix1e into libc: retire the old
Makefile, add Makefile.inc needed for libc build; add
#include "namespace.h"/#include "un-namespace.h" pairs around the
includes of sys/acl.h and sys/capability.h, and an additional underscore
in front of the functions that will be overridden in libc_r.
Bruce Evans [Wed, 4 Apr 2001 15:09:54 +0000 (15:09 +0000)]
Fixed a null pointer bug in rev.1.10. Rev.1.10 was supposed to to
move the "for safety" zeroing of unused members of timebuf to a better
place. It actually moved the zeroing to a worse place and didn't add
necessary braces.
Fixed a nearby older bug. timebuf.tm_gmtoff was sometimes used even
when timebuf was invalid. Even when it is zeroed, a failing mktime()
might set it to nonzero.
Simplify initialization and remove offending DMA channel resets there.
The resets trash whatever is pointed to DMA registers, but at cmi_attach()
time the DMA registers have not been initialized with valid addresses.
Reviewed by: Cameron Grant <gandalf@vilnya.demon.co.uk>
Ian Dowse [Tue, 3 Apr 2001 23:48:28 +0000 (23:48 +0000)]
Fix some very broken code in __nc_error() that implements per-thread
`nc_error' variables. Move the nc_lock mutex from mt_misc.c to a
static variable within this function, since it is only used here.
Add a new getnetconfigent() error code `NC_NOTFOUND' to report the
case where the specified netid was not found. Set nc_error in all
error cases in getnetconfigent() so that the error messages returned
by nc_(s)perror are always meaningful.
Add a terminating \n to the output of nc_perror() to match both
our manpage and other implementations of this function.
Reviewed by: deischen, alfred, Martin Blapp <mb@imp.ch>
Ian Dowse [Tue, 3 Apr 2001 22:25:39 +0000 (22:25 +0000)]
Add a leading underscore to the pthread_main_np function name, and
a "#pragma weak" directive linking the external symbol. This matches
the other pthread_* definitions, and ensures that users of this
function from within libc get the real version, not the stub.
Suggested by: deischen
Reviewed by: deischen, alfred
Ian Dowse [Tue, 3 Apr 2001 22:07:19 +0000 (22:07 +0000)]
Remove some hacks that were apparently added to avoid problems with
RPC clients hanging. The real problem turned out to be missing
cleanup code; this was fixed in clnt_vc.c r1.5 and clnt_dg.c r1.4.
Bruce A. Mah [Tue, 3 Apr 2001 21:59:48 +0000 (21:59 +0000)]
New release notes: README file for ACLs and extended attributes,
libpcap update 0.6.2, tcpdump 3.6.2, newfs(8) now defaults to 22
cylinders/group, pkg_version better comparisons and -t.
BSDPAN is the collection of modules that provides tighter than ever
integration of Perl into BSD Unix.
Currently, BSDPAN does the following:
o makes p5- FreeBSD ports PREFIX-clean;
o registers Perl modules in the FreeBSD package database with a
package name derived from the module name.
The name is of the form: bsdpan-ModuleName-V.VV.
Anyone interested in where BSDPAN is developing should read Anton's
message to the ports mailling list:
Message-ID: <20010105040828.A26011@heechee.tobez.org>
Warner Losh [Tue, 3 Apr 2001 18:19:49 +0000 (18:19 +0000)]
Make this file C++ safe. It defines many useful functions (inb, outb)
that people use from userland in C++ programs. I've had this in my
tree for ages and just got bit by it not being in the real tree again.