wpaul [Fri, 9 Oct 1998 03:59:24 +0000 (03:59 +0000)]
Add support for yet another "cyclone" board, with PCI device id 0x905A.
This is a 100BaseFX board with SC fiber media connectors. I don't actually
have one of these but I've been told it works with the xl driver.
jdp [Fri, 9 Oct 1998 01:43:08 +0000 (01:43 +0000)]
Don't try to print out the signal number that caused core to be
dumped. It is not in a fixed location in the file, so at best,
garbage comes out. I don't think this code was ever valid.
asami [Fri, 9 Oct 1998 01:27:21 +0000 (01:27 +0000)]
Add new variable NO_FILTER_SHLIBS -- it will disable ELF <-> a.out shlib
name conversion. Use it for binary ports that come with its own private
shlib dirs, ports that install linux compatibility libraries (thus following
their naming conventions and not ours), etc.
Reviewed by: Martin Cracauer <cracauer@FreeBSD.ORG>
jdp [Fri, 9 Oct 1998 00:24:49 +0000 (00:24 +0000)]
Fix a panic on SMP systems, caused by sleeping while holding a
simple-lock.
The reviewer raises the following caveat: "I believe these changes
open a non-critical race condition when adding memory to the pool
for the zone. I think what will happen is that you could have two
threads that are simultaneously adding additional memory when the
pool runs out. This appears to not be a problem, however, since
the re-aquisition of the lock will protect the list pointers."
The submitter agrees that the race is non-critical, and points out
that it already existed for the non-SMP case. He suggests that
perhaps a sleep lock (using the lock manager) should be used to
close that race. This might be worth revisiting after 3.0 is
released.
jkh [Fri, 9 Oct 1998 00:01:16 +0000 (00:01 +0000)]
Use lstat() rather than stat in determining whether a file exists,
otherwise we'll miss the "symlink exists but points nowhere" case.
Submitted by: asami and/or possibly <ru@ucb.crimea.ua>
jkh [Thu, 8 Oct 1998 23:34:44 +0000 (23:34 +0000)]
Allow the module area to be used in order to find the MFS image
(in addition to allowing it to be compiled in) and stop overloading
the MFS_ROOT variable to store size information.
jkh [Thu, 8 Oct 1998 23:10:41 +0000 (23:10 +0000)]
remove stdio.h include; I forgot Bruce's cardinal rule that header files
shouldn't include other ones (which, unfortunately, is also a hellish
rule since he broke interfaces like sysctl this way by requiring undocumented
header files to be included just in order to be able to use them now - SIGH!).
msmith [Thu, 8 Oct 1998 21:03:41 +0000 (21:03 +0000)]
Fix up the kernel environment and module data pointers in the bootinfo if
they are present.
If we are told where the end of the loaded kernel image is, believe it.
des [Thu, 8 Oct 1998 20:55:54 +0000 (20:55 +0000)]
Make that annoying "device busy" message dependent on DEBUG (using the
DEB macro). There are probably quite a few other messages that warrant
a similar treatment, and many more that should be converted to plain
log messages (e.g. "WARNING: wrintr but write DMA inactive!"). Now
that I think of it, same goes for the CAM code (e.g. the famed "tagged
openings" message)
des [Thu, 8 Oct 1998 18:52:17 +0000 (18:52 +0000)]
While I'm at it, remove the tickadj manpage from src/share/man0/man8,
though I'm afraid there's a lot more that needs fixing in this file,
judging by 'find /usr/src -name "*.8" -print'.
des [Thu, 8 Oct 1998 18:47:30 +0000 (18:47 +0000)]
Remove all references to tickadj(8) from rc, rc.conf and rc.conf.5.
Disable building tickadj(8) by removing util from SUBDIR in the xntpd
Makefile. Note that the sources are still there and tickadj can still
be built and installed by doing:
# cd /usr/src/usr.sbin/xntpd/util
# make all install
There are enough references to tickadj in e.g. the xntpd documentation
(not to mention the sysctl variables it uses etc.) that I don't feel
up to implementing the final solution right now.
wpaul [Thu, 8 Oct 1998 15:45:36 +0000 (15:45 +0000)]
Correctly update the tail pointer of the transmit queue in tl_start()
(one-liner). I have yet to actually encounter any problems due to this
bug, but why take chances.
ken [Thu, 8 Oct 1998 05:46:38 +0000 (05:46 +0000)]
Add the quirk entry framework to handle disabling the synchronize cache
command on drives that don't like it. Right now, there's just a bogus
quirk entry in the table that doesn't do anything, but that should be
changed once we get actual inquiry data for drives that don't like the
synchronize cache command.
Also, add a shutdown hook that runs through all direct access peripherals
and runs a synchronize cache on them if they're still open, and if
synchronize cache isn't disabled via a quirk entry.
Add a synchronize cache call at the end of dadump() (again, conditionalized
on the quirk entry), so we can insure that the disk cache contents get
flushed to physical media after a dump.
Check the new quirk entry in daclose() to decide whether or not to
synchronize the cache for a disk at final close.
jkh [Wed, 7 Oct 1998 21:53:14 +0000 (21:53 +0000)]
Add MFSKERN flag to enable the combining of kernel and MFS fs.
At some point, it will always be off from the user's POV and used
only internally to build (optionall) both mfskern floppies and
ones where mfs root and kernel go in separate places.
jkh [Wed, 7 Oct 1998 17:32:49 +0000 (17:32 +0000)]
Add a simple mechanism for reading property lists from files (which
I'll convert sysinstall to use shortly) and a simple call which uses
this mechanism to implement an /etc/auth.conf file. I'll let Mark Murray
handle the format and checkin of the sample auth.conf file.
Reviewed by: markm
luoqi [Wed, 7 Oct 1998 13:59:26 +0000 (13:59 +0000)]
Use vm_page_xxx() inline functions to manipulate vm_page::flags, vm_page::busy.
As a side effect, a few wakeup() calls are added, which might fix some of the
missing vm_page wakeups people have been seeing.
gibbs [Wed, 7 Oct 1998 03:40:51 +0000 (03:40 +0000)]
ahc_pci.c:
Disable DPARCKEN in the DSCOMMAND0 register on the aic7890/91/96/97.
Parity checking is broken for some chip/MB combinations and this
is the work around recommended by Adaptec.
dpt_pci.c:
Remove a superflous '{' that prevented DPT_ALLOW_MEMIO from working.
pcireg.h:
Add a definition for Parity Error Reponse bit in the PCI Space
command register.
gibbs [Wed, 7 Oct 1998 03:38:14 +0000 (03:38 +0000)]
Fix a parent tag reference count bug during tag teardown.
Enable optimization for nobounce_dmamap clients by setting the map
held by the client to NULL. This allows the macros in bus.h to check
against a constant to avoid function calls.
Don't attempt to 'free()' contigmalloced pages in bus_dmamem_free().
We currently leak these pages, which is not ideal, but is better than
a panic. The leak will be fixed when contigmalloc is merged into the
bus dma framework after 3.0R.
gibbs [Wed, 7 Oct 1998 03:30:55 +0000 (03:30 +0000)]
Add ADW_ALLOW_MEMIO and DPT_ALLOW_MEMIO. Until our configuration
framework properly detects broken PCI-PCI bridges, users will have to
manually enable memory mapped I/O for these drivers. <sigh>
gibbs [Wed, 7 Oct 1998 03:25:21 +0000 (03:25 +0000)]
Add a quirk entry for the CFP2107, another drive with broken
tagged queuing support.
Ensure that we report that a device supports tagged queuing even if
the system is waiting a "command count delay" before starting to use
them.
If a user disables disconnects on a device ensure that tagged queuing
is also turned off. We did the right thing during initial configuration,
but could be confused by manual changes.
imp [Wed, 7 Oct 1998 03:09:19 +0000 (03:09 +0000)]
Up the read capacity timeout from 20 seconds to 60 seconds to keep my
JAZ drive happy. This shouldn't impact fast drives, and will keep cam
from failing on very slow ones (that are spinning up, say). 20
seconds was almost long enough, but not in all cases.
ken [Wed, 7 Oct 1998 02:57:57 +0000 (02:57 +0000)]
Some fixes for the CD and DA drivers from bde. (and some of my own as
well) Among them:
[ cd driver ]
1. Old labeling code was still there.
2. Error handling for dsopen() was broken (no test for the `error'
returned by dsopen(); bogus test of an `error' that is known to be 0).
3. cdopen() closed the physical device after certain errors although there
may still be open partitions on it.
4. cdclose() closed the physical device although there may still be open
partitions on it.
5. Some printf format fixes was incomplete or missing.
6. cdioctl() truncated unit numbers mod 256.
7. cdioctl() was missing locking.
[ da driver ]
1. daclose() closed the physical device although there may still be open
partitions on it. This was fixed many years ago in sd.c rev.1.57.
2. A minor optimization (the dk_slices != NULL test) in sdopen() became
uglier in daopen(). It is not worth doing. da only regressed compared
with od and my version of sd, since I never committed the change to sd.
daopen() should probably do less if some partition is already open.
This is not addressed by the diffs.
[ ... ]
5. "opt_hw_wdog.h" was not included, so the HW_WDOG code was unreachable.
- Added a getdev CCB call in the cdopen() and daopen() calls so that the
vendor name and device name are available for the disklabel. (suggested
by bde)
- Removed vestigal devfs support in both drivers, since we can't properly
work with devfs yet. (ask bde for details on this)
- Cleaned up the probe code in both drivers in the failure cases. There
were a number of things wrong here. The peripheral driver instances
weren't getting properly cleaned up. Sometimes the wrong probe message
would get printed out (with the failure message appended), so it wasn't
very clear that we failed to attach. SCSI sense information was printed,
even when the error in question wasn't a SCSI error. I put similar fixes
into the changer driver in revision 1.2 of scsi_ch.c.
msmith [Wed, 7 Oct 1998 02:38:26 +0000 (02:38 +0000)]
- VERBOSE_LS is obsolete, as the heap is much better behaved now.
- Don't whine about nodes we can't stat(); these are usually
symlinks that lead out of the filesystem.
- Autoboot is now controlled by $autoboot_delay, which is a value
in seconds or NO to disable autoboot.
- Don't autoboot at the end of boot.conf if we have already tried.
- Add a 'read' command to complement 'echo'. Both are still hidden.
- Improve the 'source' command/function so that it is possible to
source scripts off removable media. The entire script is read and
saved before beginning execution. Script lines beginning with
'@' will not be echoed when being executed. Script execution will
normally terminate at the first error, however if the script line
begins with '-' this behaviour is overriden for that command.
The scandir() function returns -1 if it fails.
In many cases when this happens, it does not free
the memory that it allocated, resulting in a memory
leak, or close the directory opened with opendir().
BAD DOG, BAD!
alex [Tue, 6 Oct 1998 23:17:44 +0000 (23:17 +0000)]
Cast the return value of tvtohz() from a long to an int to satisfy the
compiler that we know what we're doing (the value returned has already
been restricted to int ranges).
asami [Tue, 6 Oct 1998 21:12:14 +0000 (21:12 +0000)]
(1) Add new variable ${PERL} which is equal to ${PERL5} but without the
version number part (i.e., "<directory>/perl"). Use this to
substitute #! lines in your perl5 scripts.
Requested and reviewed by: ache
(2) Add new variable WRKDIRPREFIX (defaults to ""). The "work"
directories are now in ${WRKDIRPREFIX}${.CURDIR}/work by default.
You can have a read-only ports tree (modulo any broken ports that
write something to places other than ${WRKDIR}) by setting this to
a writable location.
Ports that set WRKDIR explicitly should append this to front so
they will work when the user has WRKDIRPREFIX set.
joerg [Tue, 6 Oct 1998 20:47:53 +0000 (20:47 +0000)]
In an attempt to reduce the huge number of differences between the
FreeBSD repository version of this file and the isdn4bsd version,
adopt those changes from the i4b version that make this file
BSD-version independent. I attempted to avoid uglifying this file too
much, thus deviated a little from the i4b version (and hope they will
adopt the changes, too).
The diffs mostly concentrate on:
. #include differences between the systems
. different callout handling between FreeBSD vs. Net/OpenBSD
. interface naming (Net/OpenBSD store the ASCII name including the
unit # in struct ifnet, FreeBSD only the name)
. use of random() in FreeBSD vs. time-based pseudo-randomization in
Net/OpenBSD (for loopback detection ad CHAP challenges -- i
assume at least OpenBSD could also benefit from random(), but that's
the way i've got this file)
. interface address list elements are named a little differently
between FreeBSD and Net/OpenBSD
I attempted to segregate those compat fixes from other code fixes and
enhancements.
dfr [Tue, 6 Oct 1998 14:18:40 +0000 (14:18 +0000)]
Add functions for accessing dense and bwx memory for pci devices. These
routines are necessary to allow the use of certain types of hardware on
the alpha, particularly a Myrinet card.
Submitted by: Andrew Gallatin <gallatin@cs.duke.edu>
kato [Tue, 6 Oct 1998 13:16:29 +0000 (13:16 +0000)]
- Implement enabling write allocate on AMD K5/K6/K6-2 cpus.
The code was originaly contributed by Kelly Yancey
<kbyanc@freedomnet.com> in PR i386/6269 and revised by Akio Morita
<amorita@meadow.scphys.kyoto-u.ac.jp> and me. Test was performed by
Akio Morita and Toshiomi Moriki <moriki@db.is.kyushu-u.ac.jp>.
- Fix stylistic bug in identcpu.c.
- Update copyright in initcpu.c
- Fix typo in LINT.
peter [Tue, 6 Oct 1998 11:28:29 +0000 (11:28 +0000)]
Replace use of non-standard ld -O with a ld -o / mv combination as used
elsewhere in the tree. Binutils doesn't support the -O hack^H^H^H^H
extension. (actually, it ignores it for option compatability with some
other OS).
joerg [Tue, 6 Oct 1998 09:46:46 +0000 (09:46 +0000)]
Avoid the ``ruptime: no hosts in /var/rwho.'' message by not calling
rwho iff /var/rwho is empty. Call `uptime' instead. This doesn't
belong under `network' right away, but at least reports the same
informaton about the local system. rwhod is not turned on by default
(for good reason), and i've already seen too many of the above
messages...