Commit graph

4631 commits

Author SHA1 Message Date
Garrett Wollman bda4c85ae6 Fix a nagging divide-by-zero error resulting from the MTU discovery code
getting triggered at a bad time.
1995-12-20 17:42:28 +00:00
Peter Dufault 23dd4ed477 Bruce's fix for when dk_ndrive >= DK_NDRIVE. Fixes CDROM changer
and other "lots of CDROM devices" problems.  This code should be
put in a single place.
1995-12-20 12:02:43 +00:00
Garrett Wollman 994fdef98a Added a comment about why trying to make a one-behind cache for
the route in ip_output() is a bad idea.
1995-12-19 21:24:19 +00:00
Garrett Wollman ce29ab3ac6 Actually call in_rtqdrain()as was originally intended. 1995-12-19 20:46:15 +00:00
Nate Williams 637442dc62 Add-back strlen.c to the library in case a kernel is compiled without
optimization.  Gcc only in-lines calls to strlen with optimization
turned on.
1995-12-19 19:47:05 +00:00
David Greenman c96819306b Corrected a typo in a comment. 1995-12-19 14:47:41 +00:00
David Greenman 2838c9682a Implemented a (sorely needed for years) double fault handler to catch stack
overflows.
It sure would be nice if there was an unmapped page between the PCB and
the stack (and that the size of the stack was configurable!). With the
way things are now, the PCB will get clobbered before the double fault
handler gets control, making somewhat of a mess of things. Despite this,
it is still fairly easy to poke around in the overflowed stack to figure
out the cause.
1995-12-19 14:30:50 +00:00
Poul-Henning Kamp 7c3efc4023 Cleanup and staticize. 1995-12-18 09:42:44 +00:00
David Greenman 10521e6da6 Added prototype for fxp_scb_wait() and fixed a bug where the wrong pointer
was passed in one case.
1995-12-18 02:47:43 +00:00
John Dyson d63596ce9e Fix paging from ext2fs (and other fs w/block size < PAGE_SIZE). This
should fix kern/900.
1995-12-17 23:29:56 +00:00
Poul-Henning Kamp 27a0b398a7 Staticize.
Unstaticize a function in scsi/scsi_base that was used, with an undocumented
option.
My last count on the LINT kernel shows:
Total symbols:  3647
unref symbols:   463
undef symbols:     4
1 ref symbols:  1751
2 ref symbols:   485
Approaching the pain threshold now.
1995-12-17 21:23:44 +00:00
Poul-Henning Kamp cd239a8a3e Staticize and remove $Log$. 1995-12-17 21:17:48 +00:00
Poul-Henning Kamp b8dce649f1 Staticize. 1995-12-17 21:14:36 +00:00
Poul-Henning Kamp 3ac9f819ae Add an obscure feature, needed for debugging. 1995-12-17 21:11:22 +00:00
Bruce Evans 927c0b1131 Cleaned up prototypes in pmap headers: removed ones for nonexistent
functions; moved misplaced ones; restored most of KNFish formatting
from 4.4lite version; removed bogus __BEGIN/END_DECLS.
1995-12-17 07:39:05 +00:00
Bruce Evans f2c6b65bab Fixed 1TB filesize changes. Some pindexes had bogus names and types
but worked because vm_pindex_t is indistinuishable from vm_offset_t.
1995-12-17 07:19:58 +00:00
Bruce Evans 63c8f42175 Updated to match 1TB filesize changes. Some pindexes were still offsets
and weren't converted.  ptrace() was broken.
1995-12-17 06:59:36 +00:00
Bruce Evans 9b93d9b696 Really finished (?) cleaning up sysinit stuff. 1995-12-16 21:50:15 +00:00
Bruce Evans 6a1441a3e6 Oops, the last commit missed one change from 200 to OBUFSIZ + 100. 1995-12-16 21:45:02 +00:00
Bruce Evans 5add07e53c Removed dead debugging code. 1995-12-16 21:43:47 +00:00
Bruce Evans cc3b5b8ba6 Return the i/o size, not a truth value, in the probe. 1995-12-16 21:37:58 +00:00
Bruce Evans 62f84fd1ba One less magic number. 1995-12-16 21:32:19 +00:00
Bruce Evans 7f31c0b610 Reformatted the list of broken modules and added ip_mroute_mod to it. 1995-12-16 21:19:18 +00:00
Bruce Evans c01db44a14 Fixed comment about IPFIREWALL_VERBOSE.
Added undocumented option SCSI_2_DEF.
1995-12-16 21:00:14 +00:00
Peter Wemm c33b06ba4f Catch a couple more null devsw dereferences... 1995-12-16 18:52:08 +00:00
Peter Wemm 15a76dc428 Another shot at getting working si DEVFS entries.. Apparently, it didn't
understand %02d in it's format string...
1995-12-16 14:03:02 +00:00
Bruce Evans 7a7d7c9ee6 Oops, forgot to update this to match pr_ctlinput.
Added comment about bogus LOMTU.
1995-12-16 03:43:49 +00:00
Bruce Evans 526eacf611 Added undocumented option LINUX so that it gets tested. 1995-12-16 02:19:17 +00:00
Bruce Evans b62d102cbb Uniformized pr_ctlinput protosw functions. The third arg is now `void
*' instead of caddr_t and it isn't optional (it never was).  Most of the
netipx (and netns) pr_ctlinput functions abuse the second arg instead of
using the third arg but fixing this is beyond the scope of this round
of changes.
1995-12-16 02:14:44 +00:00
Bruce Evans a5db65d39f Added `-Wstrict-prototypes -Wmissing-prototypes' to CWARNFLAGS so that
prototypes don't go missing again.  Also added -Winline so that some
doubtful (non-)inlines get fixed.

bsd.kmod.mk:
Also added `-Wreturn-type -Wimplicit -Wnested-externs' to catch up
with the kernel.
1995-12-16 01:57:25 +00:00
Bruce Evans 6ea3e9d839 Completed function declarations and/or added prototypes and/or added
#includes to get prototypes.

pci now uses a different interrupt handler type for interrupts that it
dispatches and the isa interrupt handler type for the interrupts that
it handles.
1995-12-16 00:27:59 +00:00
Bruce Evans 193f212a54 Completed function declarations and/or added prototypes and/or added
#includes to get prototypes.
1995-12-16 00:11:11 +00:00
Bruce Evans 081d3b932c Added a prototype. 1995-12-16 00:05:40 +00:00
Bruce Evans 716962965e Removed unused function lkmenodev(). 1995-12-16 00:01:40 +00:00
Bruce Evans 82b945084b Completed function declarations and added prototypes. Sorted prototypes. 1995-12-15 23:49:42 +00:00
Bruce Evans 68a3b3cddd Completed a function declaration.
Restored order to prototype list.

Restored tabs to #defines.
1995-12-15 22:49:36 +00:00
Stefan Eßer 6549c8c929 Fix the off-by-one error in the calculation of the valid port range.
Reduce default value of pcicb_membase to 0x2000000 (from 0x4000000)
since this seems to be the lower bound used by many systems.

Submitted by:	Mihoko Tanaka <m_tanaka@pa.yokogawa.co.jp>
1995-12-15 13:40:20 +00:00
David Greenman 51cdbfcdaf Changed arg type for pio functions.
Cast a few things appropriately to shut up the compiler.
1995-12-15 07:31:40 +00:00
Peter Wemm 2e69c13c32 Update linux_ipc.c to use the now generated prototypes for the shm* calls
it makes while emulating the linux equivalents.
1995-12-15 05:07:20 +00:00
Peter Wemm b5d5c0c934 Update sysv_*.c to get their argument definitions from sysproto.h 1995-12-15 05:00:31 +00:00
Peter Wemm 295ab04920 Regenerated from syscalls.master... 1995-12-15 04:46:32 +00:00
Peter Wemm bf4f39849b Add the direct sysv shm/sem/msg system calls, in the same way as NetBSD.
This costs very little, we gain prototypes for the calls from the linux
emulator, and this is one less thing in the way of NetBSD binary support.
1995-12-15 04:36:01 +00:00
Peter Wemm 21503ddf4d move typedef for key_t from sys/ipc.h to sys/types.h, as suggested in the
comment in ipc.h.  This is so that prototypes for the sysv ipc functions
can be processed without having to #include <sys/ipc.h> in everything..
1995-12-15 04:22:42 +00:00
Peter Wemm dbe525ffb0 Silence a harmless warning... 1995-12-15 03:36:25 +00:00
Peter Wemm d3cc2bd29e Initial attempt at getting Linux QMAGIC shared lib support. I have
successfully run linux netscape 2.0b3 with a QMAGIC ld.so and libc/libm
that I found on some linux machine that I _think_ is running slackware 3.0.

There are still problems..  ld.so claims the libraries are the wrong
format, but it still runs anyway.. :-/  The QMAGIC ld.so also screams
about needing ld.so.cache, and running a linux ldconfig is quite
educational.  You soon learn to run "chroot /compat/linux /bin/ldconfig"
where ldconfig is living in /compat/linux/bin. :-]

(Lets just say that it puts loads of symlinks in /usr/lib otherwise :-)
1995-12-15 03:28:38 +00:00
Peter Wemm ef04503da8 Clean up some warnings by using the generated structures in <sys/sysproto.h>
for passing to the bsd system calls, rather than inveninting our own
equivalent structures.
1995-12-15 03:06:57 +00:00
Peter Wemm 364a760eb9 Oops. I forgot the change to this file for supporting static configuration
of the linux emulator.
1995-12-15 02:57:40 +00:00
Bruce Evans 247b53374b Changed the maximum output queue count from (TTMAXHIWAT + 200) to
(TTMAXHIWAT + OBUFSIZ + 100) in case someone changes OBUFSIZ.  200
was to allow 100 above high water for ordinary writes and another
100 for kernel printfs.

Increased the reserved output queue count from 512 to the maximum
output queue count.  This prevents exhaustion of clists and increases
the output throughput for 8 cy lines by almost a factor of 2 (on
a system where there aren't many other open ttys so clists become
exhausted after about 4 active lines (or earlier if TTMAXHIWAT is
increased :-]).

ttwrite() behaves very badly when clists are exhausted:
(1) it sleeps on lbolt instead of on TSA_OLOWAT(tp).
    This could be fixed adequately by sleeping on TSA_OLOWAT(tp).
    The nonzero reserved count guaratees that space will become
    available independent of other ttys, and a reserved count
    of 512 is barely enough for efficiency.
(2) it drops output if space runs out in the middle of special
    output processing.  This is too hard to fix without hardening
    the reserved count.  The watermark processing guarantees that
    space doesn't run out only if the advertised space is guaranteed.

Increasing the reserved output queue count defeats the point of
dynamic allocation of clists.  Previously, about 2K of memory per
tty was reserved (the raw queue was already reserved).  Now, about
3.5K is reserved.  Reserving everything would take a whole 0.5K
more.
1995-12-15 02:18:06 +00:00
Bruce Evans a59db23b94 Disabled the sleep in ttyflush(). It can't work in general because
ttyflush() might be called from an interrupt handler.  This fixes
panics in IXOFF mode at the cost of more failures to send the START
character to exit from IXOFF mode.
1995-12-15 01:01:00 +00:00
Bruce Evans 0dfe10a65c Completed function declarations and/or added prototypes and/or added
#includes to get prototypes.
1995-12-15 00:54:32 +00:00
Bruce Evans bfd8f1484e Removed unused #includes. 1995-12-15 00:40:38 +00:00
Bruce Evans 28cc517d85 Removed duplicated #includes of <sys/conf.h> 1995-12-15 00:29:31 +00:00
Bruce Evans 44faa2919b Completed function declarations and added prototypes. Sorted prototypes. 1995-12-15 00:11:27 +00:00
Bruce Evans c3741af960 Added a prototype. Merged prototype lists. 1995-12-14 23:59:04 +00:00
Bruce Evans f3fcde035c Added a prototype. 1995-12-14 23:50:54 +00:00
Bruce Evans cffba52f8b Moved some more prototypes outside of ifdefs and grouped them together. 1995-12-14 23:35:17 +00:00
Bruce Evans fb314a11e2 Completed function declarations and added prototypes. Sorted prototypes. 1995-12-14 23:26:53 +00:00
Bruce Evans f92ad69369 Added a prototype. 1995-12-14 23:23:48 +00:00
Bruce Evans d14122ea44 Fixed staticization of DDB functions. 1995-12-14 23:01:51 +00:00
Bruce Evans 47daf5d5d6 Nuked ambiguous sleep message strings:
old:				new:
	netcls[] = "netcls"		"soclos"
	netcon[] = "netcon"		"accept", "connec"
	netio[] = "netio"		"sblock", "sbwait"
1995-12-14 22:51:13 +00:00
Bruce Evans e0067d71f4 Restored a vm #include. 1995-12-14 22:35:45 +00:00
Bruce Evans 947803d7d8 Restored unused function ttrstrt(). It would be used if the low level
drivers supported inter-character delays.
1995-12-14 22:32:52 +00:00
Bruce Evans d1022821ae Removed my devsw access functions [un]register_cdev() and
getmajorbyname() which were a better (sigh) temporary interface to
the going-away devswitches.

Note that SYSINIT()s to initialize the devswitches would be fatal
in syscons.c and pcvt_drv.c (and are bogus elsewhere) because they
get called independently of whether the device is attached; thus
devices that share a major clobber each other's devswitch entries
until the last one wins.

conf.c:
Removed stale #includes and comments.
1995-12-14 22:03:12 +00:00
Bruce Evans 7cbb44a1d9 Fixed the type of some sysinit functions. 1995-12-14 20:21:58 +00:00
Bruce Evans d9ed07695e Included <sys/conf.h> and updated to indirect devswitches so that
this compiles again, and added a prototype.
1995-12-14 20:16:15 +00:00
Bruce Evans 1e9d97ad7c Moved prototypes to better places.
Fixed indentation of some function headers.
1995-12-14 19:51:15 +00:00
Bruce Evans 157b9ad554 Added prototypes. 1995-12-14 19:44:29 +00:00
Bruce Evans 9bea3bb463 Declared functions as static in their definitions as well as in their
prototypes.
1995-12-14 19:38:40 +00:00
Bruce Evans 2e5444fa24 The change of [cb]devsw was missed here. 1995-12-14 19:13:36 +00:00
Bruce Evans a899362e40 Restored lost prototypes. 1995-12-14 19:04:09 +00:00
Julian Elischer e9fc6a73db another case where cdevsw becoming a pointer makes it neccesary to
check if it's NULL
1995-12-14 18:26:55 +00:00
Peter Wemm b1529bda75 GENERIC/LINT: Remove redundant quoting on some option lines.
LINT: add a couple of new/missing/undocumented options
files.i386: add linux code so that you can compile a kernel with static
linux emulation ("options LINUX")
i386/*: use #if defined(COMPAT_LINUX) || defined(LINUX) to enable static
support of linux emulation (just like "IBCS2" makes ibcs2 static)

The main thing this is going to make obvious, is that the LINUX code
(when compiled from LINT) has a lot of warnings, some of which dont look
too pleasant..
1995-12-14 14:35:36 +00:00
Peter Wemm 73852f5e36 Update the skeleton DEVFS code to match reality a little closer.. :-) 1995-12-14 14:29:10 +00:00
Peter Wemm 78a9e5aea0 *hack alert*! :-) This adds an option to the MFS_ROOT code so that it
is possible to boot a kernel with an empty in-core MFS image, and have
it load the image from floppy directly.  This is admittedly a hack and
would be better replaced by a self-loading ram-disk.
1995-12-14 14:25:03 +00:00
Peter Wemm 60f17fcd9f Change the generic "btintr" function's name to "bt_intr" - the same as
all the other bt_XXX() functions in i386/scsi/bt*.

This the important effect of forcing a link error if the user is
still using the old "vector btintr" which is dangerously wrong
after Justin's updates to the driver.

The correct isa vector line for the bt driver is "vector bt_isa_intr".
Justin mentioned this in the commit message and updated LINT and
GENERIC.  This change is to enforce that.. :-)
1995-12-14 14:19:19 +00:00
Poul-Henning Kamp f708ef1b9e Another mega commit to staticize things. 1995-12-14 09:55:16 +00:00
Poul-Henning Kamp 87b6de2b76 A Major staticize sweep. Generates a couple of warnings that I'll deal
with later.
A number of unused vars removed.
A number of unused procs removed or #ifdefed.
1995-12-14 08:32:45 +00:00
Poul-Henning Kamp e531deaeb2 Two x87 emulators as LKMs.
If somebody with the right HW would make the change to /etc/rc to use
this, we could rip MATH_EMULATE from GENERIC...
1995-12-14 08:26:14 +00:00
Poul-Henning Kamp 5e46340891 Make math_emulators LKMable. 1995-12-14 08:21:33 +00:00
Peter Wemm b10853f674 Check before dereferencing a possible null pointer (cdevsw[i]->d_open) 1995-12-13 20:08:53 +00:00
Julian Elischer 6ba9ebce28 devsw tables are now arrays of POINTERS to struct [cb]devsw
seems to work hre just fine though  I can't check every file
that changed due to limmited h/w, however I've checked enught to be petty
happy withe hte code..

WARNING... struct lkm[mumble] has changed
so it might be an idea to recompile any lkm related programs
1995-12-13 15:13:57 +00:00
Bruce Evans 99406bcc38 Completed function declarations and added prototypes.
Fixed 3 serious type mismatches that were introduced when the driver
was split up.

Reviewed by:	gibbs
1995-12-13 14:32:59 +00:00
John Dyson 3048c51216 There was a bug that the size for an msync'ed region was not rounded
up.  The effect of this was that msync with a size would generally sync
1 page less than it should.  This problem was brought to my attention
by Darrel Herbst <dherbst@gradin.cis.upenn.edu> and Ron Minnich
<rminnich@sarnoff.com>.
1995-12-13 12:28:39 +00:00
Poul-Henning Kamp 85f689485d Staticize. 1995-12-13 10:36:03 +00:00
Poul-Henning Kamp c08c8adcf5 Remove MACH_KERNEL, ORIGINAL, and ZP_DEBUG,
I should have done this before it was imported.
1995-12-13 10:35:36 +00:00
John Dyson 1cdb60485c Fix a problem that was caused by new (partial) support for merged cache
metadata and VBLK type devices.  The code is currently mostly disabled,
and a work-around has been added to disabled attempted clustered writes
for VBLK type device buffers.  Clustered write of meta-data is currently
a work in progress.
1995-12-13 03:47:01 +00:00
Justin T. Gibbs 1fbfe4ca34 PCI portion of the Buslogic SCSI driver. Needs to be tested and more
PCI ids for Buslogic products added.
1995-12-12 08:58:04 +00:00
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
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
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
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 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
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
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
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
Bruce Evans 4439655d52 Replaced nxdump by nodump (if the dump function gets called, then the
device must be configured, so ENXIO is a bogus errno).

Replaced zerosize by nopsize.  zerosize was a temporary alias.
1995-12-10 19:53:42 +00:00
Bruce Evans f332b8a1d5 Replaced nxdump by nodump (if the dump function gets called, then the
device must be configured, so ENXIO is a bogus errno).

Replaced zerosize by nopsize.  zerosize was a temporary alias.
1995-12-10 19:44:58 +00:00
Bruce Evans 5ccbc3cc5a Reduced and cleaned up #includes. 1995-12-10 19:08:32 +00:00
Bruce Evans c73feca0b7 Removed new alias d_size_t for d_psize_t.
Removed old aliases d_rdwr_t and d_ttycv_t for d_read_t/d_write_t and
d_devtotty_t.

Sorted declarations of switch functions into switch order.

Removed duplicated comments and declarations of nonexistent switch
functions.
1995-12-10 15:55:34 +00:00
Bruce Evans bb51c61fdf Removed unused functions sudump() and supsize().
Added `extern' to misplaced public prototypes.
1995-12-10 14:57:04 +00:00
Bruce Evans 9b4288a3d5 Restored used includes of <vm/vm_extern.h>. 1995-12-10 14:52:10 +00:00
Poul-Henning Kamp 154c04e573 Last commit this round: Staticize.
we are now down to about 1146 symbols being global, of which
I estimate that about 100 are validly so.
1995-12-10 13:45:30 +00:00
Poul-Henning Kamp 6f4e0beb7e Staticize and cleanup. 1995-12-10 13:40:44 +00:00
Poul-Henning Kamp 3b0b66ee0e Staticize and cleanup.
Ohh, forgot this bit:
(covers sio.c too) recognize the 16650 too.
1995-12-10 13:40:33 +00:00
Poul-Henning Kamp 87b9115751 Staticize and cleanup.
remove a TON of #includes from machdep.
1995-12-10 13:36:34 +00:00
Poul-Henning Kamp 31774c91a7 Staticize and cleanup.
Make debug variable sysctl aware in 1742.
1995-12-10 13:33:49 +00:00
Poul-Henning Kamp 25eb640d90 Staticize and cleanup. 1995-12-10 13:32:43 +00:00
Julian Elischer 76092b8329 Make NEW_SCSICONF the default way of doing things
It will need to be changed
but it's the better starting point..

also add '?' to wildcarding in SCSI identification of devices..
so we can catch all PIONEER	CD 6??* devices instead of having
separate entries for the 600, 602, 604X, 624X etc..

it's getting so we should have a small regexp routine in the kernel
maybe just a little one..  matching CDX-6[0-9][0-9][ A-Z] would be better

there will be drastic changes in this
but this is the best starting point..
1995-12-10 10:58:30 +00:00
Julian Elischer 46746c3b26 Add DEVFS to LINT 1995-12-10 10:50:32 +00:00
Bruce Evans 965797322b Restored used function fusword() (used by GPL math emulator). 1995-12-10 03:11:32 +00:00
Bruce Evans 81c5b5f59a Moved vm includes out of centralized headers again. 1995-12-10 02:53:07 +00:00
Bruce Evans 5ad9d5a70f Moved the declaration of boolean_t from <vm/vm_param.h> to
<sys/types.h> (if KERNEL is defined).  This allows removing bogus
dependencies on vm stuff in several places (e.g., ddb) and stops
<vm_param.h> from depending on <vm_param.h>

Added declaration of boolean_t to <vm/vm.h> (if KERNEL is not
defined).  It never belonged in <vm/vm_param.h>.  Unfortunately,
it is required for some vm headers that are included by applications.

Deleted declarations of TRUE and FALSE from <vm/vm_param.h>.  They
are defined in <sys/param.h> if KERNEL is defined and we'll soon
find out if any applications depend on them being defined in a vm
header.
1995-12-10 02:34:29 +00:00
Bruce Evans 1f598ab9bc Restored used variable `name[32]' (used by DEVFS).
Completed function declarations and/or added prototypes.
1995-12-10 01:47:34 +00:00
Bruce Evans 7bf60cac80 Restored used variable `name[32]' (used by DEVFS).
Removed an `#ifdef __FreeBSD__'.  Hundreds, if not thousands of other
FreeBSD-specific things aren't ifdefed.
1995-12-10 01:20:17 +00:00
Poul-Henning Kamp 3bda9f9bd5 Staticize, clean lint. 1995-12-09 20:47:15 +00:00
Poul-Henning Kamp 03ddfca89c Change SYSCTL_OPAQUE to take a format string. 1995-12-09 20:46:06 +00:00
Poul-Henning Kamp f6d24a780b Staticize. 1995-12-09 20:43:53 +00:00
Poul-Henning Kamp b2c3ac73a8 scsi_tape.h had some old cruft that looked like missing typedefs or
something.  Cleanup  some lint in sd.c and st.c.
1995-12-09 20:42:38 +00:00
Poul-Henning Kamp 7dfe504fe2 Remove various unused symbols and procedures. 1995-12-09 20:40:43 +00:00
Poul-Henning Kamp 162a9e8732 Move sysctl machdep.consdev to cons.c 1995-12-09 20:39:47 +00:00
Poul-Henning Kamp ba43d44d3a Staticize. 1995-12-09 20:34:16 +00:00
Poul-Henning Kamp dd82b06157 Remove option ARP_PROXYALL, it's now a sysctl var. 1995-12-09 16:10:20 +00:00
Poul-Henning Kamp 885f1aa42b Remove old ballast, clean up a little bit, staticize.
Add five sysctl variables that you should probably never tweak.
	net.arp.t_prune: 300
	net.arp.t_keep: 1200
	net.arp.t_down: 20
	net.arp.maxtries: 5
	net.arp.useloopback: 1
	net.arp.proxyall: 0

(It's net.arp because arp isn't limited to inet, though our present
implementation surely is).
1995-12-09 16:06:54 +00:00
Julian Elischer 4d92e19833 clean a few DEVFS things..
fix a bug where you couldn't place devices in the root directory
of devfs

remove deprecated routines

On my machine devfs now shows:
julian@erf.tfs.com:
julian@erf.tfs.com: ls -RF
bpf0            mem             ptypb           spkr            ttyp8
bpf1            null            ptypc           stderr          ttyp9
bpf2            pcaudio         ptypd           stdin           ttypa
bpf3            pcaudioctl      ptype           stdout          ttypb
console         pt              ptypf           tty             ttypc
cuaa0           ptyp0           random          ttyd0           ttypd
cuaia0          ptyp1           rsd0            ttyid0          ttype
cuala0          ptyp2           rsd1            ttyld0          ttypf
fd/             ptyp3           rvn             ttyp0           tun0
fd0.1440        ptyp4           rworm           ttyp1           urandom
fd1.1200        ptyp5           scsi/           ttyp2           vn
io              ptyp6           sd0             ttyp3           zero
kmem            ptyp7           sd1             ttyp4
lkm             ptyp8           snp0            ttyp5
log             ptyp9           snp1            ttyp6
lpt0            ptypa           snp2            ttyp7

./fd:
0       15      21      28      34      40      47      53      6       9
1       16      22      29      35      41      48      54      60
10      17      23      3       36      42      49      55      61
11      18      24      30      37      43      5       56      62
12      19      25      31      38      44      50      57      63
13      2       26      32      39      45      51      58      7
14      20      27      33      4       46      52      59      8

./scsi:
sctarg  ssc
julian@erf.tfs.com:

which is all devices really there except for disk slices/partitions..
(if I don't have it it's not there, which has GOT to be an improvement..)

no DEVFS fixes from device maintainers yet?
1995-12-09 09:11:25 +00:00
Peter Wemm ac9a8f2f81 Attempt to make the Linux LKM compile again after the recent VM include
de-nesting changes...
(I figured this might be usefulif it actually built, since I've told
 everybody to rebuild it or die.. :-)
1995-12-09 08:17:24 +00:00
Peter Wemm 33c2e07de7 A really gross hack to make more of the source tree compile again.
#include <sys/user> used to be self contained, but now it needs either
half a dozen VM specific includes beforehand (yuck, so much for
portability), or some horrible hack like this for user-mode only
applications..  The kind of stuff that needs this is the libkvm stuff,
w, ps, etc...  I would welcome a better fix for this BTW.. :-)
(note: this is #ifndef KERNEL, so it shouldn't be re-polluting the kernel
 space after it's been so painfully cleaned up...)
1995-12-09 05:10:55 +00:00
Peter Wemm c0072256cd Update ibcs2 to use the new ps_strings / stack gap arrangements.. 1995-12-09 04:33:27 +00:00
Peter Wemm b3728b2483 Update the Linux LKM to use the new ps_strings and stack gap arrangements.
(note you should recompile the linux and ibcs2 lkms after this)
1995-12-09 04:31:47 +00:00
Peter Wemm 1ed012f969 Reorganise ps_strings in order to gain BSD/OS 2.0 binary compatability.
This is now in line with NetBSD as well..

Note that once this series of commits is finished, you must recompile
libkvm, then ps and maybe 'w'.  If you are running the recently imported
sendmail-8.7, you should recompile that too (src/conf.c at least).
1995-12-09 04:29:11 +00:00
Poul-Henning Kamp d2f265fab8 Julian forgot to make the *devsw structures static. 1995-12-08 23:23:00 +00:00
Garrett Wollman be070f4335 Added a conditionalized printf for debugging MTU discovery. 1995-12-08 16:46:06 +00:00
Julian Elischer 87f6c6625d Pass 3 of the great devsw changes
most devsw referenced functions are now static, as they are
in the same file as their devsw structure. I've also added DEVFS
support for nearly every device in the system, however
many of the devices have 'incorrect' names under DEVFS
because I couldn't quickly work out the correct naming conventions.
(but devfs won't be coming on line for a month or so anyhow so that doesn't
matter)

If you "OWN" a device which would normally have an entry in /dev
then search for the devfs_add_devsw() entries and munge to make them right..
check out similar devices to see what I might have done in them in you
can't see what's going on..
for a laugh compare conf.c conf.h defore and after... :)
I have not doen DEVFS entries for any DISKSLICE devices yet as that will be
a much more complicated job.. (pass 5 :)

pass 4 will be to make the devsw tables of type (cdevsw * )
rather than (cdevsw)
seems to work here..
complaints to the usual places.. :)
1995-12-08 11:19:42 +00:00
Peter Wemm 9470f03905 The static prototype for setroot() was apparently accidently moved
into a block of code that was #ifdef CD9660, meaning you got a compile
failure if you didn't have the CD9660 filesystem configured.
1995-12-07 20:31:02 +00:00
David Greenman efeaf95a41 Untangled the vm.h include file spaghetti. 1995-12-07 12:48:31 +00:00
Peter Wemm cde694287a Implement detection of whether or not bounce-buffering is required
for the particular card in use.  At the moment, I've set it to any of
the bt445S VLB cards (not the bt445C which apparently work) and the
bt5xx series (isa cards).  The 742 and PCI cards should not need it. :-)

It may be useful to have something like this:
#ifndef BOUNCE_BUFFERS
  if (bounce_buffers_required && more_than_16MB_ram)
    panic("this card requires bounce buffers for more than 16MB ram!")
#endif
1995-12-07 09:13:48 +00:00
Bruce Evans 0310c19f5d Replaced #includes of <sys/user.h> by less gross headers, usually
<sys/vm.h>.  Many device drivers need only the definition of vtophys()
from vm.

Added nearby #includes of <sys/conf.h> where appropriate.
1995-12-06 23:52:35 +00:00
Bruce Evans 86a1c05db0 Removed unnecessary #includes of <sys/user.h>. Some of these were just
to get the definitions of TRUE and FALSE which happen to be defined in
a deeply nested include.

Added nearby #includes of <sys/conf.h> where appropriate.
1995-12-06 23:44:23 +00:00
Bruce Evans 2baeef32b6 Removed unnecessary #includes of vm stuff. Most of them were once
prerequisites for <sys/sysctl.h>.

subr_prof.c:
Also replaced #include of <sys/user.h> by #include of <sys/resourcevar.h>.
1995-12-06 23:37:44 +00:00
Bruce Evans 40560c4471 Don't #include vm stuff in vnode_if.[ch]. Enough vm stuff (a
single typedef) is now declared in <sys/types.h>.

This is the first of 4 commits that will remove some excessive
includes of vm*.h and user.h.  The total speed improvement isn't
as large as I first thought.  `make depend; make' for LINT only
improved from 2180 seconds to 2108 seconds user time.
1995-12-06 23:33:39 +00:00
Bruce Evans 9346dbcbca Added explicit #include of <vm/vm.h> so that conf.c doesn't break when
vnode_if.h doesn't include vm stuff.
1995-12-06 22:31:54 +00:00
Bruce Evans f9bfc49779 Fixed compilation of lfs utilities which I broke the other day by
#including lfs_extern.h and goop to support it in lfs_conv.c.
1995-12-06 19:46:37 +00:00
Bruce Evans d973c0554a Include <vm/vm.h> explicitly to avoid breaking when vnode_if.h doesn't
include vm stuff.
1995-12-06 19:14:16 +00:00
Stefan Eßer 94fed3c149 Set default burst length limit to 32 bytes, since this seems to be
an acceptable value for all current chip sets (just a hint to PCI
device drivers, used in the NCR driver, for example).
Add PCI Vendor ID of ACER.
1995-12-06 15:52:23 +00:00
Poul-Henning Kamp 65d0bc1387 A couple of minor tweaks to the sysctl stuff. 1995-12-06 13:27:39 +00:00
Peter Wemm 44036f9429 Moving the kern.dumpdev sysctl handler from kern_sysctl.c to swapgeneric.c
is not real helpful since swapgeneric.c doesn't seem to be used, except
perhaps on a GENERIC kernel. (Sorry Paul.. :-)

I've moved it from swapgeneric.c to autoconf.c, since autoconf.c also deals
with dumpdev things.  There may be a better place.....
1995-12-06 09:04:44 +00:00
Bruce Evans 4cb03b1b55 Include <vm/vm.h> or <vm/vm_page.h> explicitly to avoid breaking when
vnode_if.h doesn't include vm stuff.
1995-12-05 21:51:45 +00:00
Bruce Evans f1844d4cdf Added explicit include of <sys/queue.h>. Currently, some things only
compile because <vm/vm.h> happens to be gratuitously included before
<netinet/in_pcb.h> and <vm/vm.h> happens to include <sys/queue.h>.
1995-12-05 21:26:34 +00:00
Bruce Evans 466b676ad5 Define FALSE and TRUE in <sys/param.h> (if KERNEL is defined) as well
as in <vm/vm_param.h> so that <vm/vm.h> doesn't have to be included
in kernel sources just to get the definitions of these fundamental
vm (;-) quantities.
1995-12-05 21:03:13 +00:00
Bruce Evans 0ff89d5b03 Moved the declaration of vm_object_t from <vm/vm.h> to <sys/types.h>
(if KERNEL is defined).  This allows removing the #includes of vm
stuff in vnode_if.h, which will speed up the compilation of LINT by
about 5%.
1995-12-05 20:54:42 +00:00
Bruce Evans d74abd4029 Renamed TRUE (which has value 2) to M_TR to avoid a clash with the
the boolean TRUE.
1995-12-05 20:40:10 +00:00
Bruce Evans 3b8511179e Fixed ity's d_stop entry. itystop() wasn't used. itystop() is inadequate
but probably harmless.  It's hard to tell because apparently no one runs
ity.

Fixed ity's d_reset entry.  `nx' entries should never be used for existing
devices.

conf.c:
Moved a prototype to a better place.

Removed a stale #define.
1995-12-05 20:33:57 +00:00
Bruce Evans ef6f4fab97 Moved some prototypes to a better place.
Removed stale prototypes.

Added prototypes.

Added empty lines.
1995-12-05 20:10:41 +00:00
Bruce Evans 9dcfe99cbf Moved prototypes for rawread(), rawrite() and setconf() to a better place.
Restored order.
1995-12-05 19:53:14 +00:00
Bruce Evans 7c3bc2bfe9 Removed dummy routines sscstrategy(), sscread(), sscwrite() and
sscselect().  Use the standard dummies nostrategy(), noread(),
nowrite() and noselect() instead.

sscread() and sscwrite() returned bogus errnos.  It isn't possible
to return an error from a select routine so noselect() is just as
bogus as sscselect() (it's equivalent to nullselect()).
1995-12-05 19:36:47 +00:00
Bruce Evans c66c72d1b4 Restored #include of <sys/tty.h>. fdesc_vnops.c needs to know too much
about tty_tty.c's cdevswitch functions.
1995-12-05 19:12:05 +00:00
Garrett Wollman b7a44e3486 Path MTU Discovery is now standard. 1995-12-05 17:46:50 +00:00
David Greenman 21864bc400 Updated my copyright.
Fixed two cases of "=" that should have been "==" in card type comparison.
Simplified expression that checks for interface up/down.
Moved ed_ring_copy to before its first use so that it's inlined as intended.
Change mbuf allocation policy so that a received packet is stored in just
an mbuf header (no cluster) if it will fit in one.
1995-12-05 13:01:33 +00:00
David Greenman 23a0ed7c08 Increased the number of Tx segments from 13 to 29 to reduce the need to
recopy to near zero. Wrote the necessary code to recopy the mbuf chain
into another buffer if there are too many mbufs in the chain.
1995-12-05 11:49:55 +00:00
Julian Elischer d3004119ff fix a couple of stuffups in the worm driver and in other associated scsi files 1995-12-05 07:14:27 +00:00
Julian Elischer e862f24129 If the open fails, don't mark the device as open (duh!)
symptom:.. once an open of a 'can only open it once' device fails..
you can never open it again, as it was marked open but wasn't open..
1995-12-05 04:41:20 +00:00
David Greenman 4a5f1499b0 all:
Removed ifnet.if_init and ifnet.if_reset as they are generally unused.
Change the parameter passed to if_watchdog to be a ifnet * rather than
a unit number. All of this is an attempt to move toward not needing an
array of softc pointers (which is usually static in size) to point to
the driver softc.

if_ed.c:
Changed some of the argument passing to some functions to make a little
more sense.

if_ep.c, if_vx.c:
Killed completely bogus use of if_timer. It was being set in such a way
that the interface was being reset once per second (blech!).
1995-12-05 02:01:59 +00:00
Peter Wemm 80308cade5 aargh! I tested JREMOD, only to discover that the "good oil" part of
it for si.c was accidently inside some #ifdef DEBUG code....
1995-12-04 17:33:45 +00:00
Poul-Henning Kamp 946bb7a268 A major sweep over the sysctl stuff.
Move a lot of variables home to their own code (In good time before xmas :-)

Introduce the string descrition of format.

Add a couple more functions to poke into these marvels, while I try to
decide what the correct interface should look like.

Next is adding vars on the fly, and sysctl looking at them too.

Removed a tine bit of defunct and #ifdefed notused code in swapgeneric.
1995-12-04 16:48:58 +00:00
Jordan K. Hubbard f205c88775 Close PR: kern/865
Submitted by:	Juergen Lock <nox@jelal.hb.north.de>
1995-12-04 02:26:53 +00:00
Bruce Evans 88e2f526f5 Added a prototype.
Declared dsioctl() as static consistently.  Note that both if_disc.c
and subr_diskslice.c use the same prefix `ds' and there is a name
conflict for dsioctl().
1995-12-03 19:08:55 +00:00
Bruce Evans f31d402c5a Fixed the type mismatch in check for the bogus mmap function `nullop'.
The test should never succeed and should go away.  Temporarily print
a warning if it does succeed.
1995-12-03 18:59:55 +00:00
Bruce Evans 6fae63d840 Added prototypes.
Staticized.

Moved a NULL-initialized variable to the bss.
1995-12-03 18:46:49 +00:00
Bruce Evans d71f232008 __purified pmap_pte(). This seems to make no difference. 1995-12-03 18:37:44 +00:00
Bruce Evans 8ae2aed25c Completed function declarations and/or added prototypes. 1995-12-03 18:35:28 +00:00
Bruce Evans fb98064487 Oops, the last commit left a redundant declaration. 1995-12-03 18:00:35 +00:00
Bruce Evans 62621eb3be Staticized.
Completed function declarations and added prototypes.

Cleaned up prototypes.

Cleaned up #includes.

Removed unused variable `dkn'.
1995-12-03 17:51:36 +00:00
Bruce Evans 10dd32cd87 Added prototypes.
cd9660_rrip.c:
Added lots of bogus casts to hide type errors exposed by the prototypes.
(Different structs are assumed to have a common prefix.)

cd9660_vnops.c:
Finished staticizing.
1995-12-03 17:14:38 +00:00
Bruce Evans 58c27bcf99 Added prototypes. 1995-12-03 16:42:02 +00:00
Bruce Evans 9b5e8b3aa5 Added prototypes.
Removed some unnecessary #includes.
1995-12-03 14:54:48 +00:00
Bruce Evans 2e52c1f9e5 null_node_find() and umap_node_find() were sometimes called without a
`struct mount *' arg.  I don't know what the effects of this were.
1995-12-03 14:38:57 +00:00
Bruce Evans 1630f073cf Moved inline functions for insque() and remque() to <sys/queue.h>.
Protected them with `#ifdef KERNEL' so that <sys/queue.h> is valid C++.
Added the necessary #includes of <sys/queue.h>.

These functions are bogus and should be replaced by the queue macros.
1995-12-03 13:45:34 +00:00
Bruce Evans cac597e4c0 Completed function declarations and/or added prototypes.
Staticized some functions.

__purified some functions.  Some functions were bogusly declared as
returning `const'.  This hasn't done anything since gcc-2.5.  For
later versions of gcc, the equivalent is __attribute__((const)) at
the end of function declarations.
1995-12-03 12:18:39 +00:00
Bruce Evans 57a4e3fa8a Completed function declarations and/or added prototypes and/or #includes
to get the prototypes.
1995-12-03 11:17:15 +00:00
Bruce Evans b667af1da9 Removed unused thread support (partly to get rid of its incomplete
function declarations).

Removed unused #includes (lots of vm ones).
1995-12-03 10:40:16 +00:00
Bruce Evans dee6b0ab68 Completed function declarations and/or added prototypes and/or moved
prototypes to the right place.
1995-12-03 10:03:12 +00:00
Poul-Henning Kamp cfe2587697 malloc.h: add sysctl class.
sysctl.h add "AUTO" OID.

both of which will be need RSN.
1995-12-02 20:40:20 +00:00
Poul-Henning Kamp dd05856fd3 I don't know what I messed up in 1.40, but the crynwr mode didn't make it.
Here it is then, I hope.
1995-12-02 20:33:40 +00:00
Bruce Evans ce7609a49c Completed function declarations and/or added prototypes. 1995-12-02 19:38:06 +00:00
Bruce Evans af32e59f16 Fixed call to mrt_ioctl(). mrt_ioctl() for some reason has different
number of args when MROUTING is defined.
1995-12-02 19:28:24 +00:00
Bruce Evans 98d938220c Completed function declarations and/or added prototypes. 1995-12-02 18:58:56 +00:00
Poul-Henning Kamp a20e0ea8d7 staticize. 1995-12-02 17:14:34 +00:00
Bruce Evans d841aaa740 Finished (?) cleaning up sysinit stuff. 1995-12-02 17:11:20 +00:00
Bruce Evans 7ee050b70c Staticized.
Added prototypes.
1995-12-02 16:32:03 +00:00
Julian Elischer ee0bc7c399 I fixed this before than committed it on my machine and not on freefall.
(window confusion)
1995-12-02 13:08:20 +00:00
Julian Elischer 9fd7da5843 Submitted by: Heikki Suonsivu
Made the pty devices creates in devfs match the present MAKEDEV naming
1995-12-02 07:30:19 +00:00
Julian Elischer 124b8f8150 A quick fix for a problem that will go away in a few days anyway.. 1995-12-01 23:09:20 +00:00
David Greenman dfe61cf102 Fix minor bug that would cause the packet statistics updates to stop
working under extremely rare circumstances. Also added some additional
comments..
1995-12-01 22:41:56 +00:00
Julian Elischer 1eeac5367e remove typo 1995-12-01 01:38:49 +00:00
Stefan Eßer ff98bff638 Add definition of PROT_NONE=0 for compatibility with SunOS/Solaris/Linux ...
Reviewed by:	julian
1995-11-30 20:59:08 +00:00
Julian Elischer e7a301c64f Submitted by: jb@cimlogic.com.au (John Birrell)
Obtained from:  NetBSD as well (He submitted it there too)

make sure that teh shm region is beyond the sum of the text and data segs
as it was big progs could collide with the shm region.
1995-11-30 07:58:50 +00:00
Paul Traina dedbc6f872 Fix support for QIC_3080 drives...it 1/2 worked before. 1995-11-30 07:43:47 +00:00
Julian Elischer de1676f933 A pair of really tiny patches that not only allow it all to compile
but also IT ACTUALLY WORKS!
FreeBSD with options  JREMOD now runs with no entries in the devsw tables
prior to the devices puting their own entries there..

Thanks to bde and terry for thoughts and comments.
next stop 'Real' devfs support in devices.
1995-11-30 05:59:09 +00:00
Andrey A. Chernov 662f3a95dd Fix my color/attr separation patch.
Swap foreground/background logic to allow DIM REVERSE
1995-11-30 03:29:31 +00:00
Garrett Wollman 48991a3684 Delete obnoxious uprintf()s in load/unload procedures. 1995-11-29 20:10:33 +00:00
Nate Williams e9aaac99f2 GENERIC - Add a commented out line for adding support for IBM ThinkPad
keyboards

LINT - Add SCANSET=2 support to the LINT kernel and comments reflecting it's
       purpose.
1995-11-29 20:07:49 +00:00
Nate Williams 98e9e66ccb Add some comments above the npx0 device to make it even more obvious
that it is a mandatory device.
1995-11-29 20:02:29 +00:00
Garrett Wollman 9350db19e7 Fix Pentium CPU rate diagnosis:
- Don't print out meaningless iCOMP numbers, those are for droids.
	- Use a shorter wait to determine clock rate to avoid deficiencies
	  in DELAY().
	- Use a fixed-point representation with 8 bits of fraction to store
	  the rate and rationalize the variable name.  It would be
	  possible to use even more fraction if it turns out to be
	  worthwhile (I rather doubt it).

The question of source code arrangement remains unaddressed.
1995-11-29 19:57:22 +00:00
Garrett Wollman 8e050b2e86 Disallow LKM manipulations when in seure mode.
Noticed by: bde
1995-11-29 17:45:59 +00:00
Bruce Evans cd0ef57bb3 Don't staticize again (twice).
Cleaned up includes.
1995-11-29 17:40:47 +00:00
Julian Elischer b0d30084c0 missed one..
thanks jim..
(actually I was already aware I'd missed it, but hadn't started
searching for it :)
1995-11-29 15:31:22 +00:00
Bruce Evans 20c6c6ed1d Restored my old changes which were clobbered by the previous commit.
Added prototypes.  The previous version wouldn't have compiled if
prototypes were in scope.
1995-11-29 15:07:59 +00:00
Bruce Evans 56cb20cd72 Removed builtin list of port addresses. The address for sio3
conflicted with S3 graphics cards.  Now users should put sio[2-3]
in the config file if the hardware exisst, even if the probe is
certain to fail due to an interrupt conflict.  Otherwise, ports
sharing the interrupt may fail the probe if the system is warm
booted while sio[2-3] are active (perhaps under another OS).  The
same problem for nonstandard ports is now handled better than
before.
1995-11-29 15:00:07 +00:00
Julian Elischer 7198bf4725 If you're going to mechanically replicate something in 50 files
it's best to not have a (compiles cleanly) typo in it! (sigh)
1995-11-29 14:41:20 +00:00
Julian Elischer adb2dc299a #ifdef out nearly the entire file of conf.c when JREMOD is defined
add a few safety checks in specfs because
now it's possible to get entries in [cd]devsw[] which are ALL NULL
so it's better to discover this BEFORE jumping into the d_open() entry..

more check to come later.. this getsthe code to the stage where I
can start testing it, even if I haven't caught every little error case...
I guess I'll find them quick enough..
1995-11-29 12:38:49 +00:00
Poul-Henning Kamp 2d0b1d708c A test was backwards.
Noticed by:	Cheng, Hsiao-Yang <sycheng@cis.ufl.edu>
1995-11-29 11:28:00 +00:00
Satoshi Asami 1d2e4e9cdf 'see" -> "see" (in the comment).
Noticed by:	hilit19.el (stop laughing! ;)
1995-11-29 11:19:02 +00:00
Julian Elischer 53ac6efbd8 OK, that's it..
That's EVERY SINGLE driver that has an entry in conf.c..
my next trick will be to define cdevsw[] and bdevsw[]
as empty arrays and remove all those DAMNED defines as well..

Each of these drivers has a SYSINIT linker set entry
that comes in very early.. and asks teh driver to add it's own
entry to the two devsw[] tables.

some slight reworking of the commits from yesterday (added the SYSINIT
stuff and some usually wrong but token DEVFS entries to all these
devices.

BTW does anyone know where the 'ata' entries in conf.c actually reside?
seems we don't actually have a 'ataopen() etc...

If you want to add a new device in conf.c
please  make sure I know
so I can keep it up to date too..

as before, this is all dependent on #if defined(JREMOD)
(and #ifdef DEVFS in parts)
1995-11-29 10:49:16 +00:00
Poul-Henning Kamp 3924871a1d staticize. 1995-11-29 10:26:51 +00:00
Poul-Henning Kamp f73a856d23 Staticized and '#ifdef notused' stuff we don't use. 1995-11-29 10:25:50 +00:00
Poul-Henning Kamp ad46e209d2 Add crynwr mode to the lp# interface.
Reviewed by:	pst, phk
Submitted by:	tim@sarc.city.ac.uk
1995-11-29 10:17:03 +00:00
Poul-Henning Kamp bd8b134f3b Staticize again. 1995-11-29 10:12:34 +00:00
Jordan K. Hubbard d01b66804a A batch of Jim Lowe's patches:
o Add signed/unsigned functionality to the matrox meteor device driver.
	o Apply a few fixes to the sound driver.
	o Add a ``SPIGOT_UNSECURE'' compile time definition so, if one defines
	  SPIGOT_UNSECURE in their conf file, then they can use the spigot w/o
	  root.  There is a warning that this allows users access to the IO
	  page which is probably not secure.
Submitted by:	james
1995-11-29 01:07:59 +00:00
David Greenman a17c678ed2 Device driver for Intel Pro/100 PCI Fast Ethernet controller. 1995-11-28 23:55:26 +00:00
Joerg Wunsch d449a67ea9 Add Lyndon's man page.
Closes PR # docs/842

Submitted by:	lyndon@orthanc.com (Lyndon Nerenberg)
1995-11-28 21:12:06 +00:00
Julian Elischer b2b028bab9 oops forgot one.. 1995-11-28 09:44:42 +00:00
Julian Elischer 376c314995 the second set of changes in a move towards getting devices to be
totally dynamic. (the first was about 7 weeeks ago)

this is only the devices in i386/isa
I'll do more tomorrow.
they're completely masked by #ifdef JREMOD at this stage...
the eventual aim is that every driver will do a SYSINIT
at startup BEFORE the probes, which will effectively
link it into the devsw tables etc.

If I'd thought about it more I'd have put that in in this set (damn)
The ioconf lines generated by config will also end up in the
device's own scope as well, so ioconf.c will eventually be gutted
the SYSINIT call to the driver will include a phase where the
driver links it's ioconf line into a chain of such. when this phase is done
then the user can modify them with the boot: -c
config menu if he wants, just like now..
config will put the config lines out in the .h file
(e.g. in aha.h will be the addresses for the aha driver to look.)
as I said this is a very small first step..
the aim of THIS set of edits is to not have to edit conf.c at all when
adding a new device.. the tabe will be a simple skeleton..

when this is done, it will allow other changes to be made,
all teh time still having a fully working kernel tree,
but the logical outcome is the complete REMOVAL of the devsw tables.

By the end of this, linked in drivers will be exactly the same as
run-time loaded drivers, except they JUST HAPPEN to already be linked
and present at startup..
the SYSINIT calls will be the equivalent of the "init" call
made to a newly loaded driver in every respect.

For this edit,
each of the files has the following code inserted into it:

obviously, tailored to suit..
----------------------somewhere at the top:
#ifdef JREMOD
#include <sys/conf.h>
#define CDEV_MAJOR 13
#define BDEV_MAJOR 4
static void 	sd_devsw_install();
#endif /*JREMOD */
---------------------somewhere that's run during bootup: EVENTUALLY a SYSINIT
#ifdef JREMOD
        sd_devsw_install();
#endif /*JREMOD*/
-----------------------at the bottom:
#ifdef JREMOD
struct bdevsw sd_bdevsw =
	{ sdopen,	sdclose,	sdstrategy,	sdioctl,	/*4*/
	  sddump,	sdsize,		0 };

struct cdevsw sd_cdevsw =
	{ sdopen,	sdclose,	rawread,	rawwrite,	/*13*/
	  sdioctl,	nostop,		nullreset,	nodevtotty,/* sd */
	  seltrue,	nommap,		sdstrategy };

static sd_devsw_installed = 0;

static void 	sd_devsw_install()
{
	dev_t descript;
	if( ! sd_devsw_installed ) {
		descript = makedev(CDEV_MAJOR,0);
		cdevsw_add(&descript,&sd_cdevsw,NULL);
#if defined(BDEV_MAJOR)
		descript = makedev(BDEV_MAJOR,0);
		bdevsw_add(&descript,&sd_bdevsw,NULL);
#endif /*BDEV_MAJOR*/
		sd_devsw_installed = 1;
	}
}
#endif /* JREMOD */
1995-11-28 09:43:45 +00:00
Julian Elischer 7146c13e43 the second set of changes in a move towards getting devices to be
totally dynamic.

this is only the devices in i386/isa
I'll do more tomorrow.
they're completely masked by #ifdef JREMOD at this stage...
the eventual aim is that every driver will do a SYSINIT
at startup BEFORE the probes, which will effectively
link it into the devsw tables etc.

If I'd thought about it more I'd have put that in in this set (damn)
The ioconf lines generated by config will also end up in the
device's own scope as well, so ioconf.c will eventually be gutted
the SYSINIT call to the driver will include a phase where the
driver links it's ioconf line into a chain of such. when this phase is done
then the user can modify them with the boot: -c
config menu if he wants, just like now..
config will put the config lines out in the .h file
(e.g. in aha.h will be the addresses for the aha driver to look.)
as I said this is a very small first step..
the aim of THIS set of edits is to not have to edit conf.c at all when
adding a new device.. the tabe will be a simple skeleton..

when this is done, it will allow other changes to be made,
all teh time still having a fully working kernel tree,
but the logical outcome is the complete REMOVAL of the devsw tables.

By the end of this, linked in drivers will be exactly the same as
run-time loaded drivers, except they JUST HAPPEN to already be linked
and present at startup..
the SYSINIT calls will be the equivalent of the "init" call
made to a newly loaded driver in every respect.

For this edit,
each of the files has the following code inserted into it:

obviously, tailored to suit..
----------------------somewhere at the top:
#ifdef JREMOD
#include <sys/conf.h>
#define CDEV_MAJOR 13
#define BDEV_MAJOR 4
static void 	sd_devsw_install();
#endif /*JREMOD */
---------------------somewhere that's run during bootup: EVENTUALLY a SYSINIT
#ifdef JREMOD
        sd_devsw_install();
#endif /*JREMOD*/
-----------------------at the bottom:
#ifdef JREMOD
struct bdevsw sd_bdevsw =
	{ sdopen,	sdclose,	sdstrategy,	sdioctl,	/*4*/
	  sddump,	sdsize,		0 };

struct cdevsw sd_cdevsw =
	{ sdopen,	sdclose,	rawread,	rawwrite,	/*13*/
	  sdioctl,	nostop,		nullreset,	nodevtotty,/* sd */
	  seltrue,	nommap,		sdstrategy };

static sd_devsw_installed = 0;

static void 	sd_devsw_install()
{
	dev_t descript;
	if( ! sd_devsw_installed ) {
		descript = makedev(CDEV_MAJOR,0);
		cdevsw_add(&descript,&sd_cdevsw,NULL);
#if defined(BDEV_MAJOR)
		descript = makedev(BDEV_MAJOR,0);
		bdevsw_add(&descript,&sd_bdevsw,NULL);
#endif /*BDEV_MAJOR*/
		sd_devsw_installed = 1;
	}
}
#endif /* JREMOD */
1995-11-28 09:42:06 +00:00
Bruce Evans 43cbfcb357 Removed all #includes of the unused file <sys/device.h>. 1995-11-28 07:29:59 +00:00
Bruce Evans a349554809 Removed bogus __BEGIN_DECS/__END_DECLS. 1995-11-28 07:23:09 +00:00
Peter Wemm 018309ece7 After having put on my Asbestos suit, complete the MFS_ROOT part of Terry's
mountroot changes.  This means that the mfs_initminiroot functionality
into the root mfs_mount....
1995-11-28 03:15:58 +00:00
Peter Wemm 6884d2aae7 Implement read/write to kernel space - I use this for a self-loading/
self-decompressing ram disk that I'm fiddling with..

(Note, this depends on the various syscalls having correctly set uio_segflag
 before calling physio - I've checked and they look correct.)
1995-11-28 02:40:38 +00:00
Peter Wemm 59a4c16a68 Attempt to solve the busy-buffers-on-shutdown caused by MFS once and for all.
What was happening, was that the main mfs loop was sleeping, and when it was
being awoken by a wakeup when it was supposed to process some IO requests.

The problem was that if it was being woken out of the tsleep() by a signal
at shutdown, it was going straight into dounmount() without servicing any
pending IO requests, causing dounmount() to fail because there were busy
buffers (and they could not be "processed" because the processing loop was
trying to unmount rather than dispatching into mfs_doio()).

This (dare I say it :-) appears to be a layering problem....
1995-11-28 02:15:29 +00:00
Peter Wemm 070fc2ce12 Mainly cosmetic cleanups... It now uses more consistant message reporting
on the console, and no longer uses "SLXOS" which I suspect may be a
trademark... (I'm not sure, but this is not really a SLXOS driver anyway)
1995-11-28 02:07:36 +00:00
Peter Wemm 968757cbee Implement some rudimentry IPX support... 1995-11-28 01:59:19 +00:00
Andrey A. Chernov 00265e7d4d Separate colors & attributes as Terry points
Reviewed by: soren
1995-11-28 00:17:32 +00:00
Bruce Evans 84478e7f42 Fixed setting of speed B0 - don't output a bogus divisor of 0 and a
random prescaler, just hang up.  This may fix hangup problems with
mgetty.
1995-11-26 17:13:23 +00:00
Bruce Evans 9c68e470a2 Oops, the previous change was missing the declaration of `struct
buf_queue_head'.  It isn't forward declared in <sys/types.h> like
`struct buf'.
1995-11-24 15:59:11 +00:00
Bruce Evans fec104de77 Completed function declarations and/or added prototypes. 1995-11-24 15:15:30 +00:00