bde [Sun, 18 Feb 2001 02:22:58 +0000 (02:22 +0000)]
Added a dummy lookup vop. Specfs was broken by removing its dummy
lookup vop so that it defaulted to using vop_eopnotsupp for strange
lookups like the ones for open("/dev/null/", ...) and stat("/dev/null/",
...). This mainly caused the wrong errno to be returned by vfs syscalls
(EOPNOTSUPP is not in POSIX, and is not documented in connection with
specfs in open.2 and is not documented in stat.2 at all). Also, lookup
vops are apparently required to set *ap->a_vpp to NULL on error, but
vop_eopnotsupp is too broken to do this.
bde [Sun, 18 Feb 2001 01:06:13 +0000 (01:06 +0000)]
Quick fix for attempts to free non-malloc()ed memory. The variables
current_file_name and current_link_name sometimes point into the
middle of malloc()ed memory and sometimes point to alloca()ed memory,
but free() is sometimes called on them. This seems to be harmless
for the usual tar operations, but it is usually fatal for `tar -W'.
E.g., for `cd /etc; tar Wcf /tmp/foo rc', at the start of
verify_volume(), current_file_name points to alloca()ed memory, and
tar attempts to free it.
phk [Sat, 17 Feb 2001 19:14:42 +0000 (19:14 +0000)]
Add some FreeBSD logo material to the tree:
"FreeBSD.pfa" - the (postscript) font used to write "FreeBSD".
"beastie.fig" - a 4.3 BSD style Daemon in vector graphic.
"beastie.eps" - same converted to encapsulated postscript.
"poster.sh" - an example how to use this stuff.
"README" - the full story.
obrien [Sat, 17 Feb 2001 09:06:31 +0000 (09:06 +0000)]
Merge rev 1.2 (-fformat-extensions); 1.{7,9} (complain about -O2 on the
Alpha & FORCE_OPTIMIZATION_DOWNGRADE); 1.8 (-Wnon-const-format)
into GCC 2.95.3(RC#3).
gibbs [Sat, 17 Feb 2001 01:53:22 +0000 (01:53 +0000)]
Limit CHANNEL_B_PRIMARY's effect to twin channel adapters where we can easily
register our sub-busses in the reversed order. In the future, we may provide
a hint to CAM on how to order the scans for multi-function adapters that also
set this flag, but trying to do it the "twin channel" way will lead to
a panic.
imp [Fri, 16 Feb 2001 21:09:49 +0000 (21:09 +0000)]
Extra needs to be initialized for our usual pool of FILEs. This was
causing some versions of as to dump core. This survived make
buildworld/installworld and the building gettext port afterwards.
Submitted by: <nnd@mail.nsk.ru> "N.Dudorov"
Reviewed by: "Daniel M. Eischen" <eischen@vigrid.com>
jlemon [Fri, 16 Feb 2001 14:31:49 +0000 (14:31 +0000)]
Introduce copyinfrom and copyinstrfrom, which can copy data from either
user or kernel space. This will allow layering of os-compat (e.g.: linux)
system calls. Apply the changes to mount.
ru [Fri, 16 Feb 2001 11:35:39 +0000 (11:35 +0000)]
SEE ALSO is the special name, and should not be taken in quotes,
since -mdoc checks for the "SEE" word only to set its variables.
In the SEE ALSO section, -mdoc automatically emits an empty line
before each new reference.
imp [Fri, 16 Feb 2001 06:11:22 +0000 (06:11 +0000)]
Fix the current libc breakage in current:
o Back out the __std* stuff. Can't figure out how to do this right now,
so we'll save it for late.
o use _up as a pointer for extra fields that we need to access.
o back out the libc major version bump.
iedowse [Thu, 15 Feb 2001 22:42:44 +0000 (22:42 +0000)]
Fix `fstat -m' (show memory-mapped files), which was broken by
revision 1.25. When evaluating the termination condition for the
iteration over all map entries, we must take care to use the kernel
versions of all pointers. The code was comparing a kernel pointer
to a pointer within a local variable, so the loop never terminated.
tegge [Thu, 15 Feb 2001 22:26:21 +0000 (22:26 +0000)]
Don't allow special devices of type NODEV (NOUDEV as seen from kernel).
They can't be created via mknod and the kernel crashes if it encounters
such an inode.
Approved by: mckusick
tegge [Thu, 15 Feb 2001 22:12:50 +0000 (22:12 +0000)]
Remove freelists managed by Balloc/Bfree.
Change __dtoa to not free the string it allocated the previous time it was
called. The caller now frees the string after usage if appropiate.
bde [Thu, 15 Feb 2001 12:41:44 +0000 (12:41 +0000)]
Fixed rotted-as-committed pseudo-prototype for VFS_CHECKXP(). It had not
caught up with the changes to avoid storing socket addresses in mbufs,
although the VFS_CHECKEXP() code had to since it was committed 2 years
after those changes.
bde [Thu, 15 Feb 2001 12:21:44 +0000 (12:21 +0000)]
Fixed missing and wrong includes in synopsis. The prerequisites for
using bus_alloc_resource(), etc., are especially unobvious, but were
especially wrong (<sys/resource.h> has nothing to do with the resources
documented here...). Order and format the includes as correctly as
possible (a layering violation makes <machine/bus.h> a prerequisite for
<sys/rman.h>).
bde [Thu, 15 Feb 2001 11:58:38 +0000 (11:58 +0000)]
Fixed missing include in synopsis.
Added evil #define of ACCEPT_FILTER_MODULE to synopsis. Some of
the functions defined in this man page aren't declared unless
ACCEPT_FILTER_MOD is defined before including <sys/socketvar.h>.
peter [Thu, 15 Feb 2001 01:34:37 +0000 (01:34 +0000)]
Manually run /usr/sbin/sendmail -q once a day. Folks seem to be too
trigger happy and turn off sendmail_enable entirely (instead of setting
sendmail_flags to -q30m instead). I have seen boxes with things like daily
run reports that have sat in mailq for 5 months. Since /usr/sbin/sendmail
is actually mailwrapper, this should be safe for the other plugins that
provide the sendmail calling interface.
peter [Wed, 14 Feb 2001 21:56:03 +0000 (21:56 +0000)]
Work around the p_comm[] size limit. If the user supplies more than
16 characters, only check the first 16 since that is all the kernel
records. This isn't ideal, but it is probably the best we can do.
Otherwise, "killall communicator-linux-4.76.bin" will not match
the process as the kernel only records "communicator-lin".
ru [Wed, 14 Feb 2001 10:14:35 +0000 (10:14 +0000)]
mdoc(7) police: replace -hang list with the -tag list,
add missing .Xo/.Xc to the tags. This only worked due
to the off-by-one bug in the -hang lists, which I will
hopefully backport from the mdocNG shortly.
bmilekic [Wed, 14 Feb 2001 05:13:04 +0000 (05:13 +0000)]
Implement m_getm() which will perform an "all or nothing" mbuf + cluster
allocation, as required.
If m_getm() receives NULL as a first argument, then it allocates `len'
(second argument) bytes worth of mbufs + clusters and returns the chain
only if it was able to allocate everything.
If the first argument is non-NULL, then it should be an existing mbuf
chain (e.g. pre-allocated mbuf sitting on a ring, on some list, etc.) and
so it will allocate `len' bytes worth of clusters and mbufs, as needed,
and append them to the tail of the passed in chain, only if it was able
to allocate everything requested.
If allocation fails, only what was allocated by the routine will be freed,
and NULL will be returned.
Also, get rid of existing m_getm() in netncp code and replace calls to it
to calls to this new generic code.
peter [Wed, 14 Feb 2001 05:00:20 +0000 (05:00 +0000)]
Commit a libc fix going by the current state of the version numbering
bikeshed in -arch. It isn't quite over, but it has been well established
that this can be adjusted or refined. But we do seem to have consensis
on a major bump of some sort. After this, it should reasonably safe
to build world again.
This change is to get rid of __sF[] and use seperate __stdin/out/err
handles. This means we can pad on extra bits onto the end of FILE
at will without going through this all over again. __sF[] was evil
because it compiled the sizeof(FILE) into every stdio using program.
Asbestos suit on: check!
Peril sensitive sunglasses on: check!
*gulp!*
mjacob [Tue, 13 Feb 2001 22:48:12 +0000 (22:48 +0000)]
Doug found that doing a W1C on MCPCIA_INT_REQ just around the time you
clear MCPCIA_INT_MASK0 helps things substantially. So, why not indeed?
Rearrange irq and cookie calculation to use shifts/masks instead
of division. Fix things to correctly remember the intpin for that
one in a million non-INTA PCI device.