Commit Graph

11266 Commits

Author SHA1 Message Date
Justin T. Gibbs
c343bdc635 The core of the Buslogic SCSI driver that is shared for all models on
all buses.

Known problems:
-The PCI probe code has not been tested. Someone with a PCI Bt card will
 have to validate it, but even if it is broken all cards the earlier version
 of this driver found in ISA compatibility mode should still be found.
-Still missing the BT956 PCI ID, so it will be found as an ISA card until
 someone suplies it.
-PCI interrupts go through an interrupt stub that returns an int until
 we remove the edge-triggered PCI compatibiliity cruft.
-ISA interrupts go through an interrupt stub until they pass in (void *).
-The driver could support more mboxes and concurrent commands by allocating
 structures separately and hanging them off the bt_data struct to get around
 the 4K page limit. Someone with documentation should do this and also
 enable tagged queuing.
1995-12-12 08:57:22 +00:00
Justin T. Gibbs
09c30e3a1e Isa/VL probe portion of the Buslogic SCSI driver. 1995-12-12 08:50:54 +00:00
Justin T. Gibbs
ab8f0fa54c Have Eisa and PCI probes occur before ISA probes. Buslogic EISA and PCI cards
can be found in ISA compatibility mode by the ISA driver, but since the
EISA and PCI probes are non-invasive, we prefer them to find the card first.
Since both EISA and PCI probes can rely on interrupts, enable them before
probing of any type is performed.  All ISA probes are still "protected" by
splhigh().
1995-12-12 08:50:15 +00:00
Justin T. Gibbs
8313579d97 Eisa Probe portion of revamped Buslogic SCSI driver. 1995-12-12 08:47:11 +00:00
Justin T. Gibbs
a1d01daf77 Have bt0 entry specify "bt_isa_intr" for its vector. This one entry will
allow one EISA/ISA/PCI/VL Buslogic controller to be probed.  The driver
is almost fully dynamic.  It just needs some kdc work and for the SCSI code
to stop passing unit numbers up in the scsi_xfer struct.
1995-12-12 08:46:40 +00:00
Justin T. Gibbs
eb1a5f2389 Add pci/bt9xx.c - the new PCI probe module of the Buslogic SCSI driver. 1995-12-12 08:44:38 +00:00
John Dyson
beb2f78fb0 This should have fixed some conditions that could cause the
"getblk" hang.  The B_WANTED flag was being cleared gratuitously,
also the optimization of gbincore for ignoring the B_INVAL flag was
incorrect.  There is no place in the code where buffers are on the
hash list that are B_INVAL and not B_BUSY.
1995-12-12 04:18:10 +00:00
Jordan K. Hubbard
3eaa341f6a Bring my changes forward from 2.1 1995-12-11 16:32:33 +00:00
John Dyson
cb6962cdee Some new anti-deadlock code ended up messing up the paging stats. A modified
version of the code is now in place, and gausspage performance is back
up to where it should be.
1995-12-11 15:43:33 +00:00
John Dyson
ec07c60c6a Some DIAGNOSTIC code was enabled all of the time in error. The
diagnostic code is now conditional on #ifdef DIAGNOSTIC again.
1995-12-11 15:41:50 +00:00
Jordan K. Hubbard
6db0bfd820 Information updates, typo patrol, rewrites. 1995-12-11 15:09:13 +00:00
Peter Wemm
04936d2e08 Change phkmalloc so that the page directory is now floating and allocated
via mmap() up around the shared library area.  Previously the directory
was allocated from space from it's own memory pool.  Because of the way it
was being extended on processes with large malloced data segments (ie: inn)
once the page directory was extended for some reason, it was not possible
to lower the heap size any more to return pages to the OS.
(If my understanding is correct, page directory expansion occurs at 4MB,
12MB, 20MB, 28MB, etc.)  I was seeing INN allocate a large amount of short
term memory, pushing it over the 28MB mark, and once it's transient demands
hit 28MB, it never freed it's pages and swap space again.)

I've been running this in my libc for about a month...

Also, seperate MALLOC_STATS from EXTRA_SANITY..  I found it useful to call
malloc_dump() from within INN from a ctlinnd command to see where the hell
all the memory was going.. :-)  I've left MALLOC_STATS enabled, as it has
no run-time or data storage cost.

Reviewed by: phk
1995-12-11 14:28:12 +00:00
Peter Wemm
34321f66e1 Fix a cosmetic null termination problem for completeness.
The #ifdef NEWSALT code doesn't NULL terminate the salt string..
We dont appear to use this code anymore, but it shouldn't hurt

Submitted by: Laurence Lopez <lopez@mv.mv.com>
1995-12-11 14:00:48 +00:00
Peter Wemm
5318395661 Fix yp_mkdb to do what the code suggests it's trying to do..
The code, as written, appears to load the new database data into a new
hash file and renames the two.

Due to a run of bugs and lack of error checking, it's going a whole
mess of unlink() and rename() calls that are failing.  It only
worked in the first place because the data was being inserted into a
"live" hash file.  (I wonder how much stale data has assumulated?)

Submitted by: Laurence Lopez <lopez@mv.mv.com>
1995-12-11 13:56:07 +00:00
Peter Wemm
8c1f170b90 Make FIONREAD return the actual that a read() would return, not just the
amount of data in the first mbuf.

Obtained from: Bob Smart <smart@mel.dit.csiro.au> (for NetBSD & SunOS)
1995-12-11 13:24:58 +00:00
Peter Wemm
6d41b96fd7 Implement support for conf/options and i386/conf/options.i386
Note that this code is dormant unless the options files exist.
Also, parsing of quoted options in the config files is improved.

What this allows, is all the options in LINT to be specified to be
configured as #defines in a file rather than on the CC command line at
kernel build time.  This means that 'make depend' will catch dependencies
on actual *options*, meaning that you can run 'config' and 'make depend'
in complete safety WITHOUT removing the compile directory each time.

Unfortunately, this requires a pass over the source to get the individual
files to #include the new .h files that would be generated by config.
This has a small compile time penalty (appears up to about 2% slower)
from a "fresh" build.  Of course, you should not be needing to do complete
rebuilds very often once this was completed, so it would be an overall
win for most people.

Since this code is dormant and we've got a lot of other things happening
on the kernel tree at the moment (prototypes, devfs, static declarations
etc) I am not planning on doing any changes to activate this feature just
yet.
1995-12-11 10:52:34 +00:00
Poul-Henning Kamp
3724793e05 Back out this one, must have screwed up somewhere :-( 1995-12-11 10:26:34 +00:00
Poul-Henning Kamp
94e20eb776 Staticize 1995-12-11 09:26:18 +00:00
Poul-Henning Kamp
d4b7a3694b Staticize. 1995-12-11 09:24:58 +00:00
John Dyson
983d613468 Undo a change that should not have been committed with the 1Tb enhancements. 1995-12-11 05:02:52 +00:00
John Dyson
a316d390bd Changes to support 1Tb filesizes. Pages are now named by an
(object,index) pair instead of (object,offset) pair.
1995-12-11 04:58:34 +00:00
Peter Wemm
c3fda50ba5 Whitespace cleanup, add forgotten file to CLEANFILES.. 1995-12-11 04:24:11 +00:00
Peter Wemm
db181d69a6 Dive in the deep end and change the examples installation method.. :-/
the 'rm -rf' and cpio was bugging me because rdist used to get false hits
and also it installs the files with the wrong uid.
I've tried this by running a find .. -exec ${INSTALL} ...; instead...
1995-12-11 03:03:24 +00:00
Peter Wemm
805a3a9169 Update usr/share/examples layout to match current reality.. 1995-12-11 03:01:11 +00:00
Peter Wemm
4b8f6a534c Make CVS use /usr/lib/libmd.a rather than supplying Yet Another Copy(TM)
of md5.[ch].  Note that minor mods were made to md5.h to support this,
so a reinstall of lib/libmd is needed before building this cvs.
1995-12-11 02:22:34 +00:00
Peter Wemm
c60e216884 Add a structure definition to the MD* Contexts, so that cvs can use
the standard libmd version of MD5 instead of it's own seperate copy..
1995-12-11 02:18:22 +00:00
Peter Wemm
41ae2b9560 Tweak the install targets so that the installs are done in the right place
relative to the SUBDIR recursion.. Otherwise, the results look really odd.
(basically changed a couple of afterinstall's to beforeinstall's)
1995-12-11 01:58:53 +00:00
Peter Wemm
e57cf9e3b2 Argh! Botch alert! I dont *believe* I did this....
(I think I'll blame it on Tristan! :-)
1995-12-11 01:27:18 +00:00
Peter Wemm
b23b8efe32 Fix a couple of build warts that I broke... 1995-12-11 01:23:45 +00:00
Peter Wemm
ab10d3d509 This commit was generated by cvs2svn to compensate for changes in r12757,
which included commits to RCS files with non-trunk default branches.
1995-12-11 00:48:21 +00:00
Peter Wemm
0ef0ad0b77 Bring in two files that I missed.. These are of no real value unless
you are developing CVS code, but they were already in the tree so we
might as well have the right versions.. :-)
1995-12-11 00:48:21 +00:00
Peter Wemm
54cb448ea5 Attach easy-import.pl (repostory copied from easy-import.perl) and
use the xPERL_PATHx substitution like the rest of the .pl stuff.
1995-12-11 00:45:43 +00:00
Peter Wemm
177f95a913 Clean out some files which are no longer part of CVS... 1995-12-11 00:28:08 +00:00
Peter Wemm
21eb9ed3e1 First round of the post-import cleanups... 1995-12-10 23:10:40 +00:00
Peter Wemm
ac4bd338c8 Import CVS-1.6.3-951211.. Basically, this is the cvs-1.6.2 release
plus a couple of minor changes..

Some highlights of the new stuff that was not in the old version:
 - remote access support.. full checkout/commit/log/etc..
 - much improved dead file support..
 - speed improvements
 - better $CVSROOT handling
 - $Name$ support
 - support for a "cvsadmin" group to cut down rampant use of "cvs admin -o"
 - safer setuid/setgid support
 - many bugs fixed.. :-)
 - probably some new ones.. :-(
 - more that I cannot remember offhand..
1995-12-10 22:31:58 +00:00
Peter Wemm
271f76d028 This commit was generated by cvs2svn to compensate for changes in r12752,
which included commits to RCS files with non-trunk default branches.
1995-12-10 22:31:58 +00:00
Peter Wemm
2304b65669 Import CVS-1.6.3-951211.. Basically, this is the cvs-1.6.2 release
plus a couple of minor changes..

Some highlights of the new stuff that was not in the old version:
 - remote access support.. full checkout/commit/log/etc..
 - much improved dead file support..
 - speed improvements
 - better $CVSROOT handling
 - $Name$ support
 - support for a "cvsadmin" group to cut down rampant use of "cvs admin -o"
 - safer setuid/setgid support
 - many bugs fixed.. :-)
 - probably some new ones.. :-(
 - more that I cannot remember offhand..
1995-12-10 22:31:58 +00:00
Peter Wemm
b05543098c Import CVS-1.6.3-951211.. Basically, this is the cvs-1.6.2 release
plus a couple of minor changes..  

Some highlights of the new stuff that was not in the old version:
 - remote access support.. full checkout/commit/log/etc..
 - much improved dead file support..
 - speed improvements
 - better $CVSROOT handling
 - $Name$ support
 - support for a "cvsadmin" group to cut down rampant use of "cvs admin -o"
 - safer setuid/setgid support
 - many bugs fixed.. :-)
 - probably some new ones.. :-(
 - more that I cannot remember offhand..
1995-12-10 22:31:43 +00:00
Peter Wemm
c294469919 This commit was generated by cvs2svn to compensate for changes in r12750,
which included commits to RCS files with non-trunk default branches.
1995-12-10 22:31:43 +00:00
Bruce Evans
174f8afaa3 Added pcvt option FAT_CURSOR.
Fixed comment about PCVT_VERSION=210.

Fixed tabs and trailing blanks.
1995-12-10 22:14:15 +00:00
Bruce Evans
94c948049a Added undocumented option EXT2FS so that it gets tested.
Enabled option GPL_MATH_EMULATE so it gets tested.  This will cause linkage
errors.

Fixed comment about PCVT_VERSION=210.
1995-12-10 22:09:14 +00:00
Peter Wemm
26992c2473 Disconnect 'cvs' from SUBDIRS in preperation for import of new version.. 1995-12-10 21:50:02 +00:00
Bruce Evans
172fc5ae28 Restored variables that are used iff QUOTA is defined.
ext2fs still uses #if in many cases where the rest of the kernel uses
#ifdef (for QUOTA...).
1995-12-10 21:38:45 +00:00
Peter Wemm
5cf3e37fcc Add "examples", "contrib" and "pcl-cvs" directories below
share/examples/cvs in preperation for cvs-1.6.3 import.
1995-12-10 21:35:19 +00:00
Bruce Evans
cb8cad01f8 Unstaticized cx_cdevsw (it is used in if_cx.c).
Added a prototype.
1995-12-10 21:08:11 +00:00
Bruce Evans
81ab2caf0a Replaced nxreset by noreset (if the reset function gets called, then the
device must be configured.  It's hard to tell whether a reset function
should be noreset or nullreset since reset functions are never called.
Most drivers use nullreset but noreset has the advantage of complaining
if somehow gets called).
1995-12-10 20:54:38 +00:00
Bruce Evans
26ec204be0 Replaced nxmmap by nommap (if the mmap function gets called, then the
device must be configured).
1995-12-10 20:34:53 +00:00
Bruce Evans
f54d2260b4 Replaced odsize by generic nopsize.
Staticized.

Added prototypes.
1995-12-10 20:19:32 +00:00
Bruce Evans
690999827d Replaced scdsize by generic nopsize. 1995-12-10 20:10:23 +00:00
Bruce Evans
658a9cba7e Replaced cdsize by generic nopsize.
Added prototypes.

Declared statics consistently.
1995-12-10 20:02:47 +00:00