Commit Graph

5735 Commits

Author SHA1 Message Date
wosch
9f795376b3 `mv'' -> `mv -f''
``rm'' -> ``rm -f''
so mv/rm may not ask for confirmation if you are not root
1996-05-07 23:19:49 +00:00
nate
25e7738786 Simplify probe. Removed the DELAY() as it's not needed. 1996-05-07 22:33:19 +00:00
nate
eb818a13ad Removed one of the un-documented CTRL pokes, and replace it with a one
second delay.  My ps/2 mouse is now found reliably on my ThinkPad (it
didn't before) and still works on my NEC Versa.

Submitted by:	Richard Wiwatowski <rjwiwat@adelaide.on.net>
1996-05-07 21:59:44 +00:00
nate
8aad1b23c8 Make sure you include <sys/devconf.h> if you have devconf code. :( 1996-05-07 21:56:46 +00:00
nate
3fd47327ba Added code to avoid keyboard 'hangs' during the probe.
Submitted by:	Richard Wiwatowski <rjwiwat@adelaide.on.net>
1996-05-07 21:48:55 +00:00
nate
ff4bbe34cd Added devconf() support.
Obtained from: Richard Wiwatowski <rjwiwat@adelaide.on.net>
1996-05-07 21:32:29 +00:00
nate
5d669ae010 Re-wrote psm_poll_status() to use the ioport supplied in the kernel
config file instead of hard-coding it in the driver.  No functional
differences.

This is based on the code Richard Wiwatowski <rjwiwat@adelaide.on.net>
sent to the mailing list.
1996-05-07 21:11:13 +00:00
nate
aafe5f318c Last typo fixed (network came up for a few minutes). 1996-05-07 20:39:34 +00:00
nate
028122f31b Augh, more typos.
(I hate *Sprint*, since the network is down it's hard to test things well.)
1996-05-07 20:08:21 +00:00
nate
f18f0cf633 Whoops, brain-o's with the previous commit. Fix up quite a few typos. 1996-05-07 19:40:47 +00:00
nate
e816a9ae5f - KNF'ify
- Prepend PSM_ to some defines to avoid any possible name-space problems
- Use some already defined constants instead of magic #'s where appropriate.

[ No functional changes (yet) ]
1996-05-07 19:01:31 +00:00
phk
76d21f8e79 Several locations in sys/netinet/ip_fw.c are lacking or incorrectly
use spl() functions.

Reviewed by:	phk
Submitted by:	Alex Nash <alex@zen.nash.org>
1996-05-06 20:31:04 +00:00
wollman
a62508b8be Add three new route flags to help determine what sort of address
the destination represents.  For IP:

- Iff it is a host route, RTF_LOCAL and RTF_BROADCAST indicate local
  (belongs to this host) and broadcast addresses, respectively.

- For all routes, RTF_MULTICAST is set if the destination is multicast.

The RTF_BROADCAST flag is used by ip_output() to eliminate a call to
in_broadcast() in a common case; this gives about 1% in our packet-generation
experiments.  All three flags might be used (although they aren't now)
to determine whether a packet can be forwarded; a given host route can
represent a forwardable address if:

	(rt->rt_flags & (RTF_HOST | RTF_LOCAL | RTF_BROADCAST | RTF_MULTICAST))
	== RTF_HOST

Obviously, one still has to do all the work if a host route is not present,
but this code allows one to cache the results of such a lookup if rtalloc1()
is called without masking RTF_PRCLONING.
1996-05-06 17:42:13 +00:00
phk
05b36227ad An old typo MCLBYTES/CLBYTES became more obvious bogus now.
Submitted by:		wollman
1996-05-06 17:18:12 +00:00
pst
ae22f445c8 Update qcamdriver to 1.1-release distribution.
- move the cdevsw structure back up front (sigh)
- use __linux__ instead of LINUX
1996-05-06 16:47:28 +00:00
peter
f6bfadad28 Avoid potential trademark conflict 1996-05-05 17:55:54 +00:00
peter
535c447fea Change the logic of the interrupt/poll loop. It no longer loops until
it empties all of the 256 byte incoming fifo, as it can spend more time
processing one port than intended, especially if data is streaming in
at 115.2K.  The port fifo will be emptied and dumped into the tty system
and left until next time.  I've been running this for quite some time on
one of my systems here.
Also, if the tty layer is blocked or full it lets the hardware assert the
flow control rather than loosing the data.
1996-05-05 17:35:19 +00:00
peter
9785128d44 Change the compiled-in polling parameters to a sysctl setting. 1996-05-05 17:09:04 +00:00
joerg
ecfc9b829b uninitialized auto variable shmseg is used in ...
Closes PR #kern/1174

Submitted by:	enami@ba2.so-net.or.jp
1996-05-05 13:53:48 +00:00
pst
65eaa0a47c Add DDB_UNATTENDED to opt_ddb.h where it belongs. 1996-05-05 02:26:57 +00:00
peter
45a2c47597 Add $Id$ 1996-05-04 08:53:27 +00:00
peter
8569603de7 Some trivial updates to the information in here, A good deal of this
is out of date, as it deals with patching the driver into the kernel.
1996-05-04 08:51:42 +00:00
peter
9defd27d4f Add $Id$
Compile for FreeBSD-2.2
Fix some compile warnings about function declarations
-current's VM include files have changed lately, this needed to be updated.
Use correct major number.
1996-05-04 08:49:40 +00:00
peter
c0472a5f77 Add $Id$
Compile for FreeBSD-2.2 (it compiles for 2.0.5, 2.1 and 2.2)
Use -current include file locations
Use -current pciintr calling conventions
1996-05-04 08:44:42 +00:00
peter
f7d96b0e47 Add $Id$ 1996-05-04 08:42:14 +00:00
peter
8805a58112 Add stl and stli drivers for the Stallion cards. 1996-05-04 08:41:28 +00:00
peter
59cdbc12b0 Distinguish the classes of stallion boards (intelligent vs. "smart" cd1400)
and which driver is for which.  Major 72 was for the cd1400 based cards,
I've grabbed the next free (75) for the intelligent, high performance
boards.
1996-05-04 08:40:13 +00:00
pst
37d037134d Update to 1.1beta5d 1996-05-04 07:05:55 +00:00
pst
ad5460030c Update to version 1.1beta5d of the driver. This driver now runs under
FreeBSD 2.1 and 2.2, BSD/OS 2.x, Linux, Solaris, and SCO V.
1996-05-04 07:03:55 +00:00
peter
6becf07972 This commit was generated by cvs2svn to compensate for changes in r15599,
which included commits to RCS files with non-trunk default branches.
1996-05-04 06:31:39 +00:00
peter
29ffb5b52c Import kernel parts of the v0.0.5alpha Stallion driver(s).
This is now two seperate drivers that support (I think) all of Stallions's
range, including the high performance intelligent cards, and their older
cards.

Submitted by: Greg Ungerer (gerg@stallion.oz.au)

(User-mode parts and patches to follow)
1996-05-04 06:31:39 +00:00
peter
1a2aa66fa2 This commit was generated by cvs2svn to compensate for changes in r15596,
which included commits to RCS files with non-trunk default branches.
1996-05-04 06:16:23 +00:00
peter
e8571341bd Import v0.0.4alpha of the Stallion driver.
Sumbitted by: Greg Ungerer (gerg@stallion.oz.au)
1996-05-04 06:16:23 +00:00
peter
c1aa340b20 This commit was generated by cvs2svn to compensate for changes in r15593,
which included commits to RCS files with non-trunk default branches.
1996-05-04 06:13:22 +00:00
peter
b200fe400c Import v0.0.3alpha of Stallion driver.
Submitted by: Greg Ungerer (gerg@stallion.oz.au)
1996-05-04 06:13:22 +00:00
peter
e8c7788704 This commit was generated by cvs2svn to compensate for changes in r15590,
which included commits to RCS files with non-trunk default branches.
1996-05-04 06:09:47 +00:00
peter
69bc3a9cf9 Import v0.0.2 alpha of the Stallion driver
Submitted by: Greg Ungerer (gerg@stallion.oz.au)
1996-05-04 06:09:47 +00:00
peter
abc05ec9f1 This commit was generated by cvs2svn to compensate for changes in r15587,
which included commits to RCS files with non-trunk default branches.
1996-05-04 06:03:59 +00:00
peter
afae86dda5 Initial import of driver for the Stallion EasyIO and EasyConnection 8/32
boards by Greg Ungerer (gerg@stallion.oz.au).  (v0.0.1 alpha)

This is a multiple import of all revisions available to build up
a history.

This driver supports only some of the Stallion range, in particular, not
the highly intelligent cards.  That comes in shortly.

Submitted by: Greg Ungerer (gerg@stallion.oz.au)
1996-05-04 06:03:59 +00:00
phk
5d01dc3d50 Another sweep over the pmap/vm macros, this time with more focus on
the usage.  I'm not satisfied with the naming, but now at least there is
less bogus stuff around.
1996-05-03 21:01:54 +00:00
phk
6ed0fd2b8b Remove buf->b_actf, nobody uses it anymore.
Clean up some pmap macro usage.
1996-05-03 20:56:09 +00:00
phk
92fc958d50 A nasty #define, so that we don't use buf->b_actf anymore. 1996-05-03 20:52:18 +00:00
phk
549d5250e0 Typo. 1996-05-03 20:15:11 +00:00
phk
8d261ab19f Forget that TAILQ's must be init'ed. 1996-05-03 16:49:14 +00:00
phk
04c1e3cc5c disksort() is gone, all drivers now use tqdisksort(). 1996-05-03 15:05:17 +00:00
phk
1bb866817d Move from the old buf.b_actf to the new TAILQ(buf.b_act).
Also remove a ton of weird comments and a couple of no-use options.
1996-05-03 14:58:11 +00:00
phk
0e9ca34540 Move from the old buf.b_actf to the new TAILQ(buf.b_act). 1996-05-03 14:57:27 +00:00
asami
50f7572385 Add ccd to list of devices. Also add a sample entry in LINT. 1996-05-03 05:44:45 +00:00
asami
722d862f57 Bring in ccd support.
New disk type for ccd.
1996-05-03 05:38:34 +00:00
asami
c8d322f8e5 Bring in ccd support.
ccd is a pseudo device.
1996-05-03 05:37:54 +00:00
phk
7dad665664 Move atdevbase out of locore.s and into machdep.c
Macroize locore.s' page table setup even more, now it's almost readable.
Rename PG_U to PG_A (so that I can...)
Rename PG_u to PG_U.  "PG_u" was just too ugly...
Remove some unused vars in pmap.c
Remove PG_KR and PG_KW
Remove SSIZE
Remove SINCR
Remove BTOPKERNBASE

This concludes my spring cleaning, modulus any bug fixes for messes I
have made on the way.

(Funny to be back here in pmap.c, that's where my first significant
contribution to 386BSD was... :-)
1996-05-02 22:25:18 +00:00
phk
a65c6cdecd Don't fiddle page tables by hand, use pmap_enter.
(copied from wd.c)
1996-05-02 22:20:52 +00:00
ache
cca5f23bae Fix ^[[1K (clear from beginning of line to cursor) and
^[[2K (clear whole line), they not work _initially_
1996-05-02 21:47:50 +00:00
joerg
48edb94942 Replace the dependency of install' from kernel' by a test for the
existance fo `kernel'.

Submitted by:	peter
1996-05-02 21:40:50 +00:00
phk
e6bd7df55c Removed $Log$ 1996-05-02 14:58:15 +00:00
phk
596105b399 This can go now. 1996-05-02 14:21:57 +00:00
phk
5a6fb3a7da removed:
CLBYTES PD_SHIFT PGSHIFT NBPG PGOFSET CLSIZELOG2 CLSIZE pdei()
        ptei() kvtopte() ptetov() ispt() ptetoav() &c &c
new:
        NPDEPG

Major macro cleanup.
1996-05-02 14:21:14 +00:00
peter
df35ab2846 Fix a nasty bug that causes random crashes and lockups particularly on
very busy servers (eg: news, web).  This is an interaction between
embryonic processes that have not yet finished forking, and happen to
cause the kernel VM space to grow, hitting the uninitialised variable.

It was possible for this to strike at any time, depending on the size of
your kernel and load patterns.  One machine had paniced occasionally
when cron launches a job since before the 2.1 release.

If you had "options DIAGNOSTIC", you may have seen references to bogus
addresses like 0xdeadc142 and the like.

This is a minimal change to fix the problem, it will probably be done
better by reordering p_vmspace to be in the startzero section, but it
becomes harder to validate then.

It's been vulnerable since pmap.c rev 1.40 (Jan 9, 1995), so it's been a
cause of problems since well before 2.0.5.  This was when the merged
VM/buffer cache and the dynamic growing kernel VM space were first
committed.  This probably fixes a few of PR's.
1996-05-02 11:38:05 +00:00
phk
779840c457 First pass at cleaning up macros relating to pages, clusters and all that. 1996-05-02 10:43:17 +00:00
phk
2476b0058a Rename the very bogus indeed option "LINUX" to "COMPAT_LINUX".
I can only presume that the brain behind this have never seen code
that says "#ifdef LINUX" :-(
1996-05-02 10:41:18 +00:00
phk
7bfc0101cb KGDB is dead. It may come back one day if somebody does it. 1996-05-02 09:34:51 +00:00
fenner
1284248a56 Back out my stupid braino; I was thinking strlen and not sizeof. 1996-05-02 05:54:14 +00:00
fenner
2163f66f9a Size temp var correctly; buf[4*sizeof "123"] is not long enough
to store "192.252.119.189\0".
1996-05-02 05:31:13 +00:00
bde
ca8106a4ee Added calibration the i8254 and the i586 clocks agains the RTC at boot
time.  The results are currently ignored unless certain temporary options
are used.

Added sysctls to support reading and writing the clock frequency variables
(not the frequencies themselves).  Writing is supposed to atomically
adjust all related variables.

machdep.c:
Fixed spelling of a function name in a comment so that I can log this
message which should have been with the previous commit.

Initialize `cpu_class' earlier so that it can be used in startrtclock()
instead of in calibrate_cyclecounter() (which no longer exists).

Removed range checking of `cpu'.  It is always initialized to CPU_XXX
so it is less likely to be out of bounds than most variables.

clock.h:
Removed I586_CYCLECTR().  Use rdtsc() instead.

clock.c:
TIMER_FREQ is now a variable timer_freq that defaults to the old value of
TIMER_FREQ.  #define'ing TIMER_FREQ should still work and may be the best
way of setting the frequency.

Calibration involves counting cycles while watching the RTC for one second.
This gives values correct to within (a few ppm) + (the innaccuracy of the
RTC) on my systems.
1996-05-01 08:39:02 +00:00
bde
00b2015fb5 i386/machdep.c
include/clock.h
isa/clock.c
1996-05-01 08:31:21 +00:00
jkh
aa76d4da80 Include <sys/buf.h> so that this does't blow up with B_WRITE undefined.
I fully updated my src tree and did a `make includes' in /usr/src before
trying this fix, so I can only presume that Bruce missed something.
1996-05-01 06:31:18 +00:00
bde
13cbb1411c Oops, restored existent option LINUX. It is used at config-time. 1996-05-01 05:04:38 +00:00
bde
b3256ea959 Made this self-sufficent (except for <sys/types.h>) when compiled in
user mode.

Improved formatting and comments (mostly punctuation in comments).
1996-05-01 04:18:20 +00:00
bde
3f15f680f2 Fixed a race that caused panics in kernel printfs when the screen timeout
routine changed the screen pointers while output was in progress.
1996-05-01 03:58:21 +00:00
bde
789804f746 Don't return unused values in cpu_switch() or savectx().
Don't preserve unused registers in the NPX case in savectx().
1996-05-01 03:47:04 +00:00
bde
8ff8e22ec9 Removed unused #include. 1996-05-01 03:32:46 +00:00
bde
aa97fefae9 Removed nonexistent option "LINUX" (what's that :-). 1996-05-01 03:30:04 +00:00
bde
4fd408f6ef Only disable sio3 by default. 1996-05-01 03:26:58 +00:00
bde
422674387f Removed prototype for obsolete function sleep(). 1996-05-01 02:52:05 +00:00
bde
f92cdcae99 Removed unnecessary #includes from <sys/imgact.h> so that it is
self-sufficient and added explicit #includes where required.
1996-05-01 02:43:13 +00:00
bde
82c1afdaa1 Removed bogus _BEGIN_DECLS/_END_DECLS.
Removed unused struct tag declarations in cloned code.

Added or cleaned up idempotency ifdefs.
1996-05-01 02:16:17 +00:00
bde
b3ded284a0 Made this self-sufficent (apart from <sys/types.h>) again. It included
<sys/stat.h> and <sys/filedesc.h> just to get struct tags and depended
on a previous #include for <sys/queue.h>
1996-05-01 01:53:59 +00:00
bde
f8633871d3 Made this compile again. A comment delimiter got deleted in the Lite2
changes.
1996-05-01 01:46:00 +00:00
bde
8e1d546f3a Oops, this should have been with the ctype changes.
Fixed longstanding namespace convolution involving rune_t vs wchar_t...

This change breaks similar (but more convoluted) convolutions in the
stddef.h in gcc distributions.  Ports of gcc should avoid using the
gcc headers.
1996-05-01 00:47:05 +00:00
bde
5dcde3c31e Fixed timeouts. I broke them in rev.1.17 for the FORCE_COMCONSOLE and
(interactively set RB_SERIAL) && BOOTWAIT (serial i/o) cases.
1996-04-30 23:43:25 +00:00
bde
c0563d1613 Removed gratuitous differences from Lite2.
Cleaned up vm typedefs.
1996-04-30 23:35:57 +00:00
bde
4284463ff9 #include <sys/filedesc.h> explicitly instead of depending on it being
bogusly included by <sys/socketvar.h>.
1996-04-30 23:26:52 +00:00
bde
6f2ee869e3 Fixed nfs sysctls. They missed out on the fs -> vfs name changes from
Lite2.  This broke nfsstat.
1996-04-30 23:23:09 +00:00
se
df6f0d5e13 Make pcibus_check() ignore Device/Vendor IDs of all 0. 1996-04-30 21:37:21 +00:00
phk
13d970367d Don't include <machine/ansi.h> twice.
Reviewed by:	phk
Submitted by:	"Philippe Charnier" <charnier@lirmm.fr>
1996-04-30 12:54:27 +00:00
phk
9502945d5b pte.h: Add the VADDR(pdi,pti) macro to construct virtual address from
page dir+table index.
pmap.h: remove NUPDE, it was wrong and not used.  Sanitize KSTKPTEOFF.
vmparam.h: Calculate virtual addr from PDI+PTI from pmap.h rather than
using magic math.  Remove UPDT, not used.
1996-04-30 12:02:12 +00:00
phk
f7fbc2347d Remove a spurious mapping that was introduced earlier. 1996-04-30 11:58:56 +00:00
dyson
4f2a49e711 Move the map entry allocations from the kmem_map to the kernel_map. As
a side effect, correct the associated object offset.
1996-04-29 22:04:57 +00:00
julian
6c04f7821c slight re-ordering to allow the qcam to compile with devfs enabled. 1996-04-29 20:05:52 +00:00
jkh
457e99728a Add ATAPI_STATIC so that the ATAPI cdroms work correctly again
under -current.
Submitted-By: Serge Vakulenko <vak@cronyx.ru>
1996-04-29 20:03:41 +00:00
smpatel
cc39b8d5e5 Fixed two typos in the comment.
Pointed out by:	davidg
1996-04-29 15:07:59 +00:00
gibbs
a18fa55c6a Fix the abort code in the BUS DEVICE RESET case. Needed to set cmdlen to 0.
Ensure that queued commands are not touched by the abort code by setting
the SCB status to indicate what queue it is in.

Fix deadlocks when using SCB paging by using SCBs from the assigned_scbs
queue or an SCB that completed during the same interrupt if needed.

Don't ever use insl to pull SCBs from any of the controllers.  You can
only do 8bit PIO reads.  This only affected SCB paging.

With this checkin, SCB paging works quite a bit better, but I still have
some problems with it that may be caused by a firmware problem in my
PD1800s.  It seems that using a tag number higher than the maximum number
of tags allowed by the device, confuses it.  For example, if I queue
two commands, tagged 3 and 36, it never reconnects for tag 36.
1996-04-28 19:21:20 +00:00
phk
dabc13d18f Fix some bugs I introduced and some old ones as well.
Add BDE_DEBUGGER back.
Improve quality of comments.
Thanks Bruce!

Reviewed by:	phk
Submitted by:	bde
1996-04-28 07:14:05 +00:00
ache
8a5de28c05 inet_ntoa buffer was evaluated twice in log_in_vain, fix it.
Thanx to: jdp
1996-04-27 18:19:12 +00:00
joerg
9c10d8e8d1 Make install' depend on kernel'. Some idiot tried to install a
non-built kernel and complained in Usenet... :-)
1996-04-27 07:30:49 +00:00
bde
42379df49e Fixed a bug introoduced in the previous change. ISA device memory was
mapped to semi-random place(s) depending on the content(s) of physical
address 0xA0000.  This was fatal at least on my system with a some
memory-mapped devices.  Console syscons somehow wasn't affected.  It
bogusly hardcodes the address.  Sigh.
1996-04-26 22:26:45 +00:00
wollman
c9ab94c878 Delete #ifdef notdef blocks containing old method of srtt calculation.
Requested by: davidg
1996-04-26 18:32:58 +00:00
wollman
411e2af1bd Delete #if 0 block containing remnants of pre-MTU discovery rmx_mtu
initialization.
1996-04-26 18:31:41 +00:00
wollman
8fcdf08026 Delete #if 0 block containing unused definitions for ARPANET/DDN IMP
and HYPERchannel link layers.
1996-04-26 18:30:52 +00:00
phk
60683a571f A significant debogofication of locore.s. I havn't found any actualy
bugs, but it is a lot easier to navigate this twisted code now.
1996-04-26 13:47:39 +00:00
sos
04ce015dd8 Removed options MAXCONS & HARDFONT, they are no longer in use
(and havn't been for long, sigh)
1996-04-26 06:45:41 +00:00
phk
ec76275a92 Fix cpu_fork for real.
Suggested by:	 bde
1996-04-25 06:20:19 +00:00
asami
09153e86b5 Fix logic bug in pci bridge code. For a PCI-PCI bridge, secondary
should be <= than subordinate, not the other way around.

They are both true if the bridge is not cascaded (i.e., twin-channel
scsi/e-net adapters won't be affected by this bug), which is probably why
it was unnoticed until today.
1996-04-25 06:04:27 +00:00
dg
c401fbe8f3 Regardless of whether or not the check for IPv4 is useful, we certainly
don't need to assign the "ip" pointer twice.
1996-04-25 02:34:37 +00:00
phk
af5eac078b Reject all IP versions but 4. 1996-04-24 15:44:34 +00:00
asami
0128db8c55 Add missing "int" to static var. 1996-04-24 09:42:22 +00:00
dyson
6c1ec28cad This fixes kmem_malloc/kmem_free (and malloc/free of objects of > 8K).
A page index was calculated incorrectly in vm_kern, and vm_object_page_remove
removed pages that should not have been.
1996-04-24 04:16:45 +00:00
nate
67c93bbe60 - This code adds some backwards compatability hacks for buggy APM BIOS
implementations, and synchronizes us with the Nomad's latest code.

This code is based on the Nomad code, but heavily hacked by me.

Reviewed by:	phk
Submitted by:	the 'Nomads'
1996-04-23 19:59:14 +00:00
nate
d41d7b99af Format the already applied PCCARD additions to use KNF form. No
functional changes.
1996-04-23 18:36:56 +00:00
nate
298d7dcd87 Adds the APM hooks into the generic pccard kernel files. With this code
in place device drivers can now register power-down/power-up routines so
that we can use common routines to power-up/power-down cards for
insert/removals, suspend/resume, etc..

Reviewed by:	phk
Submitted by:	the 'Nomads'
1996-04-23 16:03:08 +00:00
gibbs
2a55e3d7aa Fix second instance of the inb type when getting the current sequencer address.
Submitted by:	Nate Williams <nate@sri.MT.net>
1996-04-23 04:47:02 +00:00
gibbs
49e4a7fe26 Fix a typo in the RESTART_SEQUENCER macro that could have caused
strange results.  This  bug has been in here for a loooong time.
Many thanks to Pedro Salenbauch for finding this.

Submitted by:	pedrosal@nce.ufrj.br (Pedro Salenbauch)
1996-04-23 04:22:41 +00:00
nate
b63bf89ae5 Updated the laptop 'kludge' file. Hopefully this can go away soon.
Submitted by:	The 'Nomads'
1996-04-22 22:29:40 +00:00
nate
32d5c84b4c - add apm to the GENERIC kernel (disabled by default), and add some comments
regarding apm to LINT
- Disabled the statistics clock on machines which have an APM BIOS and
  have the options "APM_BROKEN_STATCLOCK" enabled (which is default
  in GENERIC now)
- move around some of the code in clock.c dealing with the rtc to make
  it more obvios the effects of disabling the statistics clock

Reviewed by:	bde
1996-04-22 19:40:28 +00:00
gibbs
7b5dbe22ec The default number of tags in the SCB paging case was supposed to be
8 not the 18 I was using during some of my own testing.  Ooops.

For those that want to change the number for experimentation, you can
set the value on line 1553 of this file.
1996-04-22 13:21:40 +00:00
dyson
df610a2d49 This fixes a troubling oversight in some of the pmap code enhancements.
One of the manifiestations of the problem includes the -4 RSS problem
in ps.

Reviewed by: dyson
Submitted by: Stephen McKay <syssgm@devetir.qld.gov.au>
1996-04-22 05:23:08 +00:00
bde
22a2f6a4fc Fixed in-line IP header checksumming. It was performed on the wrong header
in one case.
1996-04-21 13:47:43 +00:00
gibbs
a51d69965b Add PCI IDs for the aic7860 (basically an aic7850 Ultra) and the aic7855
(HP motherboard aic7850 controllers).

Properly handle 4 bit controller SCSI IDs.

Update my copyright.
1996-04-20 21:31:27 +00:00
gibbs
62413c04e3 Implement SCB paging which allows up to 255 active commands on aic7770
(Rev E or greater), aic7850, aic7860, aic7870, and aic7880 controllers.
SCB paging is enabled with the option "AHC_SCBPAGING_ENABLE".  Full
comments on the algorithm are at the top of i386/scsi/aic7xxx.c.

options "AHC_TAGENABLE" and "AHC_QUEUE_FULL" have been removed.  The
default is 4 tags without SCB paging, 8 with.

Clear the SCSIRSTI bit after throwing a bus reset.  Some cards seem to get
confused otherwise.

Handle SCSIRSTI interrupts before checking to see if there is a valid
SCB in use since this can happen. (Clears PR# i386/1123)

Clean up the way we determine the number of SCBs on the card
(courtesy of Dan Eischen).

Guard against attempts to negotiate wide to a narrow controller.

Fix some comments.

Update my copyrights.
1996-04-20 21:29:27 +00:00
gibbs
02afa38b7b Change the devconf description from "ISA or EISA bus" to "ISA bus" now
that we have eisaconf.
1996-04-20 21:22:32 +00:00
gibbs
6402039406 Turn on SCB paging for aic7770 chips rev E or greater.
Update my copyrights.
1996-04-20 21:21:50 +00:00
gibbs
cafb54d853 Implement SCB paging. This allows up to 255 active commands on
aic7770 >= Rev E, aic7850, aic7860, aic7870, and ai7880 based controllers.

Make findSCB safer for non-tagged commands when tagged commands are
active on the controller.  The symptoms of this problem were
"Overlapped commands attempted" messages during error recovery
attempts.

Compact scratch ram usage.  This leaves 8 bytes free for future use.

Clean up some comments.

aic7xxx_reg.h:
Update my copyright.
1996-04-20 21:20:31 +00:00
bde
8831d940d6 Yet more b_flags fixes. The previous ones broke the clearing of B_DONE
and B_READ before writing.  This was was fatal.  They also broke the
clearing of B_INVAL before doing i/o.  This didn't actually matter.

Submitted by:	mostly by joerg
1996-04-19 19:34:19 +00:00
bde
e5094c363b Fixed removal of devfs entries for the real slice corresponding to the
compatibility slice.  They were forgotten on last-close and then
creating them on first-open failed.

Devfs entries for slices other than the one containing the root file
system are still invisible unless you open a non-devfs inode on the
slice.
1996-04-19 19:22:29 +00:00
bde
b0b36003dc Don't include <sys/types.h> when it isn't used.
This commit covers most of the ANSI library functions. Many others only
need <sys/types.h> because they use u_xxx.
1996-04-19 18:40:25 +00:00
bde
a807e1724b Don't depend on <sys/types.h> including <sys/cdefs.h>. 1996-04-19 17:39:57 +00:00
phk
df5c003119 savectx returns through cpu_switch in case of the child, so it must
return void just like cpu_switch.  Fix prototype and usage from machdep.c
1996-04-19 07:28:04 +00:00
phk
a25821060d Whoops, shouldn't really have been here, but what the heck: remove some
stale comments.
1996-04-18 21:37:43 +00:00
phk
d01137f090 Fix a bogon. cpu_fork & savectx ecpected cpu_switch to restore %eax,
they shouldn't.
1996-04-18 21:34:53 +00:00
nate
6eb9f2ef25 - Save/restore the FS data segment.
Reviewed by:	bde
1996-04-18 19:22:59 +00:00
nate
7dd4e08430 - Addition of my name to the APM Copyright
- More code cleanups
- #ifdef DEBUG debugging code
- More consistant printfs
- Better handling of the apm_int() assembly code (mostly from Bruce Evans)

Reviewed by:	bde
1996-04-18 19:21:47 +00:00
wollman
c1be8d9d1d Three speed-ups in the output path (two small, one substantial):
1) Require all callers to pass a valid route pointer to ip_output()
   so that we don't have to check and allocate one off the stack
   as was done before.  This eliminates one test and some stack
    bloat from the common (UDP and TCP) case.

2) Perform the IP header checksum in-line if it's of the usual length.
    This results in about a 5% speed-up in my packet-generation test.

3) Use ip_vhl field rather than ip_v and ip_hl bitfields.
1996-04-18 15:49:06 +00:00
wollman
26b91f003d Define a few macros useful in the _IP_VHL case. 1996-04-18 15:42:50 +00:00
wollman
753262bd8b Fix a warning by not referencing ip_output() as a pr_output() member. 1996-04-18 15:41:51 +00:00
wollman
de80c032c5 Always call ip_output() with a valid route pointer. For igmp, also get the
multicast option structure off the stack rather than malloc.
1996-04-18 15:41:11 +00:00
wollman
0deb98a21f Add an inline function to compute the common-case IP header checksum. 1996-04-18 15:39:27 +00:00
nate
35e568fc93 Added a disabled psm0 (PS/2) mouse device, using the new 'disable'
keyword.
1996-04-18 04:02:30 +00:00
smpatel
191537cd0c Implement the RFNOWAIT flag for rfork(). If set this flag will cause the
forked child to be dissociated from the parent).

Cleanup fork1(), implement vfork() and fork() in terms of rfork() flags.

Remove RFENVG, RFNOTEG, RFCNAMEG, RFCENVG which are Plan9 specific and cannot
possibly be implemented in FreeBSD.

Renumbered the flags to make up for the removal of the above flags.

Reviewed by:	peter, smpatel
Submitted by:	Mike Grupenhoff <kashmir@umiacs.umd.edu>
1996-04-17 17:05:08 +00:00
pst
4ca9bc781d Support FreeBSD v2.1 1996-04-17 09:37:17 +00:00
pst
451ae592ee Add in linux support for the quickcam driver bottom half and
add a new "invasive camera scan" option for folks who have weird
cameras or weird parallel ports.
1996-04-17 09:00:53 +00:00
dg
f248f3aa32 Fix for PR #1146: the "next" pointer must be cached before calling soabort
since the struct containing it may be freed.
1996-04-16 03:50:08 +00:00
dg
64edb8a1f6 Two fixes from Rich Stevens:
1) Set the persist timer to help time-out connections in the CLOSING state.
2) Honor the keep-alive timer in the CLOSING state.

   This fixes problems with connections getting "stuck" due to incompletion
of the final connection shutdown which can be a BIG problem on busy WWW
servers.
1996-04-15 03:46:33 +00:00
se
0604466bec Update PCI bus code from my current sources:
- always use pci_conf_read() and pci_conf_write(). (This is required to
  simulate non-existant devices in my system for PCI bridge code tests.)

- reorder some functions (put the main functions at the end).

- correct off by one bug in the code dealing with unitialized PCI to PCI
  bridge chips. (Bug found by ASAMI Satoshi.)

- print function number for multi-function devices.
1996-04-14 20:14:36 +00:00
phk
1bba52ece2 Now that I have started to use netboot, I see what is missing...
Load symbols and set boot args more nicely.
1996-04-14 09:54:14 +00:00
bde
ece7fb1dfd Fixed handling of device flags. The real flags were never used.
Submitted by:	Michael Smith <msmith@atrad.adelaide.edu.au>
1996-04-13 18:33:04 +00:00
bde
6656815ec4 Oops, include opt_pcvt_hdr.h before the key value in it is used. 1996-04-13 16:59:29 +00:00
bde
d844e408e7 Fixed `PCVT_FREEBSD=210'. 1996-04-13 16:50:23 +00:00
bde
a8973daccf Another try: fixed bogus change of the fifo settings for the non-speed of 0.
rev.1.30 incorrectly changed the behaviour from always disabling the fifo
to always enabling it.
1996-04-13 14:55:18 +00:00
jhay
240bb0139d Don't use a newfangled auto initializer. Initialize everything by
assignment to avoid one bug and several pessimizations.

In the old version, gcc-2.6.3 (i386 version) generates 16 bytes
of static data and copies it using 4 4-byte load-stores.  gcc-2.7.2
generates 2 1-byte stores and calls memset() to zero 14 bytes.
Linking fails because memset() doesn't exist in the kernel.

In both versions, the 2 bytes stored directly are all that is
actually used unless the null padding at the end is used, since
the 3 4-byte words in the middle are initialized again by struct
assignment.  These words are misaligned.  gcc generates misaligned
load-stores for (small) misaligned struct copies.

Submitted by:	Bruce Evans
1996-04-13 14:37:22 +00:00
bde
14b22b0b80 Changed _BSD_PID_T_ from long to int. Lite2 changed pid_t from long to
int32_t in <sys/types.h> but this change was missed when the Lite2 types
were merged.
1996-04-13 14:25:06 +00:00
bde
7233dd0287 Changed noreturn' to __noreturn__' so that all headers don't break if
an application #defines `noreturn'.

Changed one instance of `const' similarly.  This is less like to be a
problem since applications shouldn't #define `const', and the common
hack of #defining `const' as nothing gives harmless (?) null attributes
instead of syntax errors.

Fixed comments on #endifs to match code.
1996-04-13 14:23:29 +00:00
phk
52978a6ce9 Fix a longstanding bug and a buglet of no significance.
Now net.ipx works.

Noticed by:	John Hay -- John.Hay@csir.co.za
1996-04-13 13:28:54 +00:00
bde
2b5198592c Eliminated sloppy common-style declarations. Now there are no duplicated
common labels for LINT.  There are still some common declarations for the
!KERNEL case in tcp_debug.h and spx_debug.h.  trpt depends on the ones in
tcp_debug.h.
1996-04-13 12:53:53 +00:00
bde
6eb67292b0 Eliminated sloppy common-style declarations. Now there are no duplicated
common labels for LINT.  There are still some common declarations for the
!KERNEL case in tcp_debug.h and spx_debug.h.  trpt depends on the ones in
tcp_debug.h.
1996-04-13 12:45:57 +00:00
bde
e97a7a15c6 Declared `unittab' as static. It was bogusly shared between the asc and
gsc drivers.
1996-04-13 12:18:45 +00:00
jkh
e09f62677a Document how to drop into DDB from a serial console. 1996-04-13 11:57:18 +00:00
bde
0af805cb7d Use PCB_SAVEFPU_SIZE instead of a too-small size in savectx(). This
bug only affected FPU emulators.  It might have caused bogus FPU states
in core dumps and in the child pcb after a fork.  Emulated FPU states
in core dumps don't work for other reasons, and the child FPU state
is reinitialized by exec, so the problem might not have caused any
noticeable affects.

Cleaned up #includes.
1996-04-13 11:24:13 +00:00
bde
92761fc7cd Generate #define of PCB_SAVEFPU_SIZE for use in savectx(). 1996-04-13 11:22:57 +00:00
jhay
be9d3765f6 Improve the handling of receive errors. Fix a nasty bug in the receive
buffer code.
1996-04-12 19:57:44 +00:00
phk
1c2cbbd040 Make alltraps a .globl so that DDB doesn't make people belive they have
an ALIGNFLT on their hands all the time.
1996-04-12 12:22:14 +00:00
phk
a6adcd28ee Fix a bogon I introduced with my last change.
Submitted by:	Andreas Klemm <andreas@knobel.gun.de>
1996-04-12 09:24:22 +00:00
wosch
791b2ca0a6 remove variables KMODGRP?=, KMODOWN?=, KMODMODE?=
replace ${BIN*} variables with ${KMOD*} variables

cleanup manpage code

include bsd.obj.mk
remove targets clean, cleandir, obj (included by bsd.obj.mk)
1996-04-11 23:03:10 +00:00
bde
de77142595 Moved AUTO_EOI_[12] and most sio and pcvt options out of the makefile. 1996-04-11 21:18:49 +00:00
bde
a680120460 Fixed a spl hog. The vmdaemon process ran entirely at splhigh. It
sometimes disabled clock interrupts for 60 msec or more on a P133.
Clock interrupts were lost ...

Reviewed by:	dyson
1996-04-11 21:05:25 +00:00
bde
23914989a4 Spell cpu_switch() with an i in a comment. 1996-04-11 20:56:29 +00:00
bde
f48cd2e7e2 Fixed the PF_REMOTE case of ptcwrite(). I broke it in rev.1.22. Output
was duplicated until the canq filled up, and write() normally returned 0.
This case is apparently rare.  It was reported for Jove's shell buffer in
PR 1130.
1996-04-11 18:43:37 +00:00
smpatel
b99b299984 Added a note about OPTi 82C929 based cards.
Clarified GUS DMA Settings.
Other misc. changes.

This should hold us over until I can finish cleaning up TASD, and finish
reintegrating all of the FreeBSD changes to the sound driver.  At that time
this document will be removed, and it's information moved to the handbook.
1996-04-11 15:34:22 +00:00
dg
fb670ba266 When cslip gets an uncompressed packet, it attempts to save off the TCP/IP
header for use in decompressing subsequant packets. If cslip gets garbage
(such as what happens when there is a port speed mismatch or modem line
noise), it will occasionally mistake the packet as a valid uncompressed
packet. When it tries to save off the header, it doesn't bother to check
for the validity of the header length and will happily clobber not only
the cslip data structure, but parts of other kernel memory that happens
to follow it...causing, ahem, undesired behavior.
1996-04-11 06:46:24 +00:00
scrappy
17aa8d19ec Added documentation for "options PAS_JOYSTICK_ENABLE" 1996-04-11 06:23:18 +00:00
scrappy
65f13e11fa mentioned support for enabling gameport on ProAudio Spectrum with
appropriately commented out "options" line for PAS_JOYSTICK_ENABLE
(PR#i386/960 - partial closer)
1996-04-11 06:19:44 +00:00
jkh
554249e991 Disable sio3 in GENERIC - it messes with ATI cards. 1996-04-10 23:03:36 +00:00
scrappy
ca60561595 removed RS_IBUFSIZE #ifndef - have been informed it was a bad idea 1996-04-10 18:09:58 +00:00
nate
0e0a5fb013 hp300 -> i386 1996-04-10 05:27:11 +00:00
scrappy
563a581ee6 Placed an #ifndef around RS_IBUFSIZE so that it can be changed in the
config file ... PR#528 is reportly fixed by adding 'options RS_IBUFSIZE=1024'
to the config file
1996-04-10 04:18:36 +00:00
jkh
8c536fe336 Gag! Somebody removed the bus mouse from GENERIC for reasons unknown.
That certainly explains why I noticed it suddenly missing from the
2.2 SNAPSHOT! :-)
1996-04-09 09:00:41 +00:00
pst
67931eee29 Logging UDP and TCP connection attempts should not be enabled by default.
It's trivial to create a denial of service attack on a box so enabled.

These messages, if enabled at all, must be rate-limited. (!)
1996-04-09 07:01:53 +00:00
dyson
a3cc211552 Reinstitute the map lock for processes being swapped out. This
is needed because of the vm_fault used to bring the page table page
for the kernel stack (UPAGES) back in.  The consequence of the
previous incorrect change was a system hang.
1996-04-09 04:36:58 +00:00
smpatel
2511d49751 Added isa_dmadone() to fix the errors the sound driver has been complaining
about.

Update driver to use isa_dma_acquire() and isa_dma_release()
1996-04-08 19:42:07 +00:00
smpatel
9739208301 Update drivers to use isa_dma_acquire() and isa_dma_release()
Reviewed by:	bde
1996-04-08 19:40:57 +00:00
smpatel
6b740ac6e9 Add a lock for DMA Channels to prevent two devices from using the same DMA
channel at the same time.  The functions isa_dma_acquire() and
isa_dma_release() should be used in all ISA drivers which call isa_dmastart().
This can be used more generally to register the usage of DMA channels in
any driver, but it is required for drivers using isa_dmastart() and friends.

Clean up sanity checks, error messages, etc.
Remove isa_dmadone_nobounce(), it is no longer needed

Reviewed by:	bde
1996-04-08 19:38:57 +00:00
wollman
6a74f9b51b Added a $Id$ keyword. Bruce still needs to put a copyright notice
on this file.
1996-04-08 16:41:06 +00:00
phk
241c31412f Replace usage of buf->b_actf with queue.3 and buf->b_act. 1996-04-08 07:56:42 +00:00
phk
eacbf55fca Replace usage of buf->b_actf by queue.3 and buf->b_act 1996-04-08 07:54:51 +00:00
phk
88dda49bb2 Add five macros to TAILQ family to improve readability. 1996-04-08 07:51:57 +00:00
dyson
cdc4afc0a8 Map lock checks not needed anymore for swapping out. We don't use
map operations for it anymore.  Certain deadlocks should never happen
anymore.
1996-04-08 03:42:01 +00:00
dg
1ea5e98511 Removed sections 3 and 4 from my copyright. 1996-04-08 01:31:42 +00:00
dg
67e2f2c62f Killed sections 3 and 4 of my copyright as I think it is unnecessarily
restrictive.
1996-04-08 01:25:22 +00:00
dg
d1862b5655 Killed sections 3 and 4 of my copyright as I don't agree with it (I believe
it to be unnecessarily restrictive). For tty_subr.c, update to my standard
copyright.
1996-04-08 01:22:00 +00:00
phk
ea84b79e93 remove b_actb, it's not used anywhere. 1996-04-07 22:12:25 +00:00
bde
7c0a6ed764 Use breakpoint() function instead of inline assembler. 1996-04-07 18:34:59 +00:00
bde
b6732671c1 Changed bdb() to breakpoint() and always enable it.
Made the style more consistent, especially for the new Pentium functions.
1996-04-07 18:30:56 +00:00
bde
b4a0a5c2e5 Use rdtsc() function instead of inline essembler. 1996-04-07 18:16:26 +00:00
bde
82c211f290 Changed #includes of <i386/include/foo.h> to #includes of <machine/foo.h>. 1996-04-07 17:56:53 +00:00
bde
f350e6c811 Changed #includes of <i386/include/foo.h> to #includes of <machine/foo.h>. 1996-04-07 17:50:10 +00:00
bde
d75a1370e4 Removed never-used #includes of <machine/cpu.h>. Many were apparently
copied from bad examples.
1996-04-07 17:39:28 +00:00
bde
cfdfb3c281 Removed now-unused #includes of <machine/cpu.h>. They were for bootverbose
being declared in the wrong place.
1996-04-07 17:32:42 +00:00
bde
53619b445e Removed unused declaration of bootverbose. 1996-04-07 17:03:12 +00:00
bde
feb665fd7f systm.h:
Moved declaration of bootverbose to a better place.  It isn't
machine-dependent.

proc.h:
Moved declaration of cpu_fork() to a better place.  Only its
implementation is machine-dependent.
1996-04-07 16:46:28 +00:00
bde
d8bbfe26c9 Moved declaration of bootverbose to a better place. Externs should
only be declared in headers.
1996-04-07 16:45:36 +00:00
bde
ad8fa4b2a3 Moved declaration of bootverbose to a better place. It isn't
machine-dependent.

Moved declaration of cpu_fork() to a better place.  Only its
implementation is machine-dependent.
1996-04-07 16:44:28 +00:00
bde
50c6f44d2e Declared pgrpdump() properly. 1996-04-07 16:16:05 +00:00
bde
059d798920 Fixed the ownership and permissions of /dev/io. Rev.1.32 broke rev.1.29. 1996-04-07 14:59:26 +00:00
bde
dc93ac0bb9 Fixed devfs device names and numbers.
Fixed handling of unknown CMOS types - don't attach unrecognized devices.
1996-04-07 14:46:42 +00:00
bde
76bf9ad082 Cleaned up naming and formatting in recent changes. 1996-04-07 14:32:14 +00:00
bde
eac7371c68 Allow specifying the BIOS drive number. Removed the hd drive type.
hd essentially wired the FreeBSD drive number to 0 without changing
the BIOS drive number.  Now the numbers can be specified independently.

Replaced the BOOT_HD compile time flag with with BOOT_HD_BIAS.  Defining
the new flag as 1 should give the same behaviour as defining the old
flag as anything.  I haven't tested defining these flags.
1996-04-07 14:28:05 +00:00
bde
aa05872301 Don't generate code for the unused function sleep(). 1996-04-07 13:35:58 +00:00
bde
5103ae40e0 Removed the 2 remaining calls to sleep(). 1996-04-07 13:20:40 +00:00
phk
f7f7113b0b Move the "mib" variables out to their own file. 1996-04-07 13:03:06 +00:00
dg
d12b1628ed Added proper splnet protection while modifying the interface address list.
This fixes a panic that occurs when ifconfig ioctl(s) were interrupted
by IP traffic at the wrong time - resulting in a NULL pointer dereference.
This was originally noticed on a FreeBSD 1.0 system, but the problem still
exists in current sources.
1996-04-07 06:59:52 +00:00
dyson
efe5631797 Major cleanups for the pmap code. 1996-04-07 02:23:05 +00:00
joerg
426074daf3 Fix the reproto.sh script that was broken after my KNFification.
Pointed out by: bde
1996-04-07 01:15:03 +00:00
joerg
427df293ee KNFify the function definitions. It's harder to grep around when the
function names don't start in column 1.
1996-04-06 13:34:37 +00:00
gpalmer
c3be8da3c6 pccard.c:
#include <i386/include/clock.h> to get sysbeep() prototype

pcic.c:
	add appropriate #ifdef around a prototype to quiet GCC because
	fn decl. is also #ifdef'd.
1996-04-06 01:16:19 +00:00
dg
ecbbba2d2c Switch 586/686 back to generic_bzero and #if 0'd the "optimized" code. It
turns out that it actually reduces performance in real-world cases.

Noticed by:	bde
1996-04-06 01:06:06 +00:00
scrappy
6233a36953 Fixed a bug in DEVFS code that was producing "name slot allocation failed"
messages.
1996-04-05 19:12:01 +00:00
ache
72565796f2 Fix adjkerntz expression priority.
Make filetimes the same as DOS times for UTC cmos clock.
1996-04-05 18:59:06 +00:00
ache
73f61b578d Fix adjkerntz expression priority 1996-04-05 18:56:10 +00:00
ache
a17e006b7f Don't adjust file times for UTC clock to have the same timestamps
for DOS/FreeBSD.
1996-04-05 16:31:49 +00:00
ache
434490d438 Add wall_cmos_clock sysctl variable, needed to manage adjkerntz even for
UTC cmos clocks (needed for Local Timezone FSes)
1996-04-05 03:36:31 +00:00
joerg
e20b650550 Work around a braindead signal handling in many newer HP printers.
They don't have BUSY de-asserted by the time they ACK (and thus cause
an interrupt).  The workaround is to try seeing if the BUSY will be
de-asserted soon, and if not, to use an incremental backoff and
semi-polled mode instead of the fixed timeout with 1/2 s we've been
using previously (that caused the printer to run really slooow).

Printers that have been working previously should not be affected by
this.
1996-04-04 12:28:36 +00:00
phk
8fad3d6dbc Add a sysctl (net.inet.tcp.always_keepalive: 0) that when set will force
keepalive on all tcp sessions.  Setsockopt(2) cannot override this setting.
Maybe another one is needed that just changes the default for SO_KEEPALIVE ?
Requested by: Joe Greco <jgreco@brasil.moneng.mei.com>
1996-04-04 11:17:04 +00:00
phk
1eff72b85f Log TCP syn packets for ports we don't listen on.
Controlled by: sysctl net.inet.tcp.log_in_vain: 1

Log UDP syn packets for ports we don't listen on.
Controlled by: sysctl net.inet.udp.log_in_vain: 1

Suggested by:	Warren Toomey <wkt@cs.adfa.oz.au>
1996-04-04 10:46:44 +00:00
smpatel
065f0f1d90 Fixed a typo in the comment for sv_errsize. 1996-04-04 01:08:20 +00:00
gpalmer
6495025245 add a `Warning:' to the message saying that the root directory is not a
multiple of the clustersize in length to try and reduce the number
of questions we get on the subject.
1996-04-03 23:05:40 +00:00
phk
1b40c12e76 Improvementss to netboot
Initial but not yet functional PCI support.

Reviewed by:	phk
Submitted by:	Luigi Rizzo <luigi@labinfo.iet.unipi.it>
1996-04-03 19:01:37 +00:00
wollman
a9ce2b638f Always pass a route structure when calling ip_output(). 1996-04-03 18:52:22 +00:00
phk
8a4381b139 Add feature for tcp "established".
Change interface between netinet and ip_fw to be more general, and thus
hopefully also support other ip filtering implementations.
1996-04-03 13:52:20 +00:00
phk
7ab974cf9c Pick up CWARNFLAGS from /etc/make.conf if defined. 1996-04-03 12:08:52 +00:00
dyson
ceb23bccb6 Fixed a problem that the UPAGES of a process were being run down
in a suboptimal manner.  I had also noticed some panics that appeared
to be at least superficially caused by this problem.  Also, included
are some minor mods to support more general handling of page table page
faulting.  More details in a future commit.
1996-04-03 05:23:44 +00:00
scrappy
a949e4988c Removed prototype for devfs_add_devsw() as it no longer exists 1996-04-03 03:03:55 +00:00
scrappy
2e8aad5ee1 Merged devfs_add_devsw() into devfs_add_devswf() 1996-04-03 03:03:27 +00:00
gpalmer
ee9f97b773 Add NULLFS_DIAGNOSTIC, KERNFS_DIAGNOSTIC, UMAPFS_DIAGNOSTIC, UNION_DIAGNOSTIC
and SAFETY. Currently all commented out until I can verify that they don't
cause LINT to fail to compile.
1996-04-03 00:28:40 +00:00
gpalmer
983e1f4e6f Correct a comment which was hiding part of the declaration of
devfs_link(), causing compiles to fail.
1996-04-03 00:01:40 +00:00
gpalmer
65f1d7ec03 Correct a bug which wrote the result of devfs_add_devswf() for two
separate devices to the same place

Reviewed by:	Julian Elischer <julian>, Marc G. Fournier <scrappy>
1996-04-02 22:06:23 +00:00
scrappy
b6f39e71af Prototyped wrong the first time through for devfs_link() 1996-04-02 19:07:38 +00:00
wollman
5952e69723 Document PERFMON.
Delete obsolete PROBE_VERBOSE.
1996-04-02 18:13:36 +00:00
phk
40dcfd6328 Align help screen.
add gateway command.
1996-04-02 15:17:36 +00:00
phk
5a3487eb35 Fix two cases where ia->ia_ifp could be NULL. 1996-04-02 12:26:10 +00:00
scrappy
e7c6a05609 take out prototype for dev_linkf()
change prototype for dev_link() to devfs_link()
1996-04-02 06:17:14 +00:00
scrappy
e14745c8ea Change dev_link() to devfs_link() 1996-04-02 04:54:26 +00:00
scrappy
52b6bf2e18 Made the src code match the man page.
Removed dev_link() and dev_linkf(), replacing dev_linkf() with devfs_link()
1996-04-02 04:53:05 +00:00
scrappy
99d214961d changed from using dev_link() to devfs_link() 1996-04-02 04:52:03 +00:00
scrappy
dd0ca9fc5d Convert from using dev_link() to dev_linkf() 1996-04-01 21:03:07 +00:00
scrappy
af671400e8 Convert from using devfs_add_devsw() to devfs_add_devswf()
Fixed Permissions/Ownership in DEVFS to reflect /dev
1996-04-01 21:02:14 +00:00
scrappy
4673aad9a1 Changed use of devfs_add_devsw() to devfs_add_devswf()
Changed DEVFS structure devfs_token so that adding the devices is
a simple matter of a 4 line for loop versus 16 lines of code

Reviewed by:	julian@freebsd.org
1996-04-01 02:12:53 +00:00
dg
44e3654e32 Change if/goto into a while loop. 1996-03-31 23:00:32 +00:00
jkh
ed7401f29f Remove bogus architectures to allow make tags to work.
Submitted-by: Andreas Klemm <andreas@knobel.gun.de>
1996-03-31 18:53:43 +00:00
gibbs
a56dd7c164 Convert to use stdarg in bt_cmd. Use XS_SELTIMEOUT for selection timeouts.
Obtained from: stdarg fixes adapted from cgd's work on the NetBSD BT driver
1996-03-31 18:19:50 +00:00
gibbs
01cb6205d3 Convert to use stdarg in aha_cmd. Use XS_SELTIMEOUT for selection timeouts.
Obtained from: stdarg fixes adapted from cgd's work on the NetBSD BT driver
1996-03-31 18:19:38 +00:00
joerg
bdef1551ef Fetch the (dummy) READY CHANGED condition interrupt stati that
happen after an FDC reset.

Submitted by:	bde
1996-03-31 18:04:51 +00:00
joerg
0441b4c3bf Fix a bogus message:
ed0: Invalid irq configuration (2) must be 2-5 for 3c503
                                ^          ^
1996-03-31 15:53:19 +00:00
bde
14c8c2c164 Removed dead option DUMMY_NOPS.
Restored undead option AUTO_EOI_1.
Added undocumented option PERFMON.
1996-03-31 04:18:02 +00:00
bde
7dc3a0570a Finished removing NOP macros. 1996-03-31 04:17:25 +00:00
bde
b26bbde39a Moved rtcin() to clock.c.
Always delay using one inb(0x84) after each i/o in rtcin() - don't
do this conditional on the bogus option DUMMY_NOPS not being defined.
If you want an optionally slightly faster rtcin() again, then inline
it and use a better named option or sysctl variable.  It only needs
to be fast in rtcintr().
1996-03-31 04:05:36 +00:00
bde
20ef589c86 Killed religous FASTER_NOP again. 1996-03-31 03:31:29 +00:00
gibbs
1f233472df Implement the SLIST and the STAILQ macros. This gives a program all the
aesthetics of using the 4.4 queue macros without paying undo space or time
in scenartios where a singly-linked list works fine.

From queue.h:
/*
 * A singly-linked list is headed by a single forward pointer. The elements
 * are singly linked for minimum space and pointer manipulation overhead at
 * the expense of O(n) removal for arbitrary elements. New elements can be
 * added to the list after an existing element or at the head of the list.
 * Elements being removed from the head of the list should use the explicit
 * macro for this purpose for optimum efficiency. A singly-linked list may
 * only be traversed in the forward direction.  Singly-linked lists are ideal
 * for applications with large datasets and few or no removals or for
 * implementing a LIFO queue.
 *
 * A singly-linked tail queue is headed by a pair of pointers, one to the
 * head of the list and the other to the tail of the list. The elements are
 * singly linked for minimum space and pointer manipulation overhead at the
 * expense of O(n) removal for arbitrary elements. New elements can be added
 * to the list after an existing element, at the head of the list, or at the
 * end of the list. Elements being removed from the head of the tail queue
 * should use the explicit macro for this purpose for optimum efficiency.
 * A singly-linked tail queue may only be traversed in the forward direction.
 * Singly-linked tail queues are ideal for applications with large datasets
 * and few or no removals or for implementing a FIFO queue.
 */
1996-03-31 03:21:45 +00:00
gibbs
c6c3051dbc Implement the XS_SELTIMEOUT error code. This causes the SCSI code to
not retry again and should be used when a device times out during selection
(ie is not on the bus).  This should speed up the boot sequence.
1996-03-31 03:19:09 +00:00
gibbs
b6df07d918 ncr.c:
Use new XS_SELTIMEOUT error code for selection timeouts.

aic7870.c:
   Move SCB walking code to aic7xxx.c and make it work for all card types.

   The flag AHC_EXTSCB is no longer needed since the SCBs are walked in
   all cases now.
1996-03-31 03:17:50 +00:00
gibbs
8097526e6f Fix support for the aic7850 by looking only at the relavent bits of the
QINCNT.  The 7850 puts random garbage in the high bits and all my attempts
to determine the cause of this failed.  This approach does seem to work
around the problem.

Go back to relying on the SCSIPERR interrupt instead of having the sequencer
interrupt at the beginning of ITloop after a parity error occured.

Determine the number of SCBs on a card automatically and base the qcntmask
on the number of SCBs.

Add entries for 11.4MHz, 8.8MHz, 8.0MHz, and 7.2MHz to ULTRA portion of
the syncrate table.  They seem to work fine on the 2940UW I have here and
will allow more non-ultra devices (like my tape drive) to run sync while
the adapter is in ULTRA mode.

Return XS_SELTIMEOUT instead of XS_TIMEOUT for selection timeouts.  I was
getting sick of waiting for the SCSI code to retry each non-existant unit
multiple times during boot and XS_SELTIMEOUT bypasses all retries.

Use new SLIST queue macros.  This was inspired by NetBSD using TAILQs in
their SCSI drivers.  For optimum cache hits, the free scb list should
be LIFO which is what the old and new code does.  NetBSD implemented a
FIFO queue for some reason.

Spaces -> tabs.
1996-03-31 03:15:31 +00:00
gibbs
f9a1865e19 Override the unit number passed into us in the isa_device structure with
the current unit in bt_unit.  We do this as a kludge to make the unit nubmer
work properly between the pci/eisa/isa bt boards that are in the system.
1996-03-31 03:06:20 +00:00
gibbs
4aa004468a Don't set the number of SCBs here. aic7xxx.c determines the number of
SCBs by walking them.
1996-03-31 03:04:38 +00:00
gibbs
52d94c6588 aic7xxx.seq:
Fix support for the aic7850 by looking only at the relavent bits of the
    QINCNT.  The 7850 puts random garbage in the high bits and all my attempts
    to determine the cause of this failed.  This approach does seem to work
    around the problem.

    Don't trust SCSIPERR to tell us when there is a parity error.  On
    some revs of the 7870 and the 7880, this bit follows the parity of
    the current byte.  Instead of using a SEQINT to tell the kernel,
    re-enable the standard parity error interrupt since it seems to pause
    the sequencer right at the time of the error which is the effect we were
    looking for anyway.

aic7xxx_reg.h:
    Remove PARITY_ERROR seqeuncer interrupt type, its no longer used.

    Define QCOUNTMASK as the SRAM location for the mask to use on the
    QINCNT register.  QCOUNTMASK is determined by the number of SCBs
    supported by the device we're working on.

aic7xxx_asm.c
    Properly check the return value of fopen, and define the arg list
    in getopt correctly.
    Submitted by: Pete Bentley <pete@demon.net>
1996-03-31 03:02:37 +00:00
peter
2659e4abf8 Correct the handling of NOCLDSTOP when using sigvec()
Make the SA_NODEFER handling more correct, previously if you called
sigaction to set a handler and had SA_NODEFER set, and manually masked
the signal itself in sa_mask, and when you read the settings back later,
you'd find SA_NODEFER incorrectly cleared.

Pointed out by: bde
1996-03-30 15:15:30 +00:00
peter
293cac4565 Add a SV_NODEFER and SV_RESETHAND #define, after Bruce pointed out that
a program that was saving and restoring a signal via sigvec() was not
doing the complete job if either of these bits had been set via sigaction.
1996-03-30 15:10:18 +00:00
peter
f8622a8bd6 re-add the ps_signodefer. The interaction between SA_NODEFER and the
sa_mask was "non intuitive" and broke another of bde's test cases.
1996-03-30 15:08:14 +00:00
peter
72d37bed2c Because of the way that ptrace() now calls procfs routines to read/write
the process's memory, it was possible for the procfs_domem() call to
return a residual leftover, but with no errno.  Since this is no good for
ptrace which ignored the the residual, remap a leftover amount into an
errno rather than fooling the caller into thinking it was successful when
in fact it was not.

Submitted by: bde (a very long time ago :-)
1996-03-30 15:02:58 +00:00
peter
cd652cf1fa When doing a 'make depend', dont blow away the existing .depend until
the generation of a new one is complete.
1996-03-30 14:57:02 +00:00
wollman
b862967122 There is no need to zero out the TSC when configuring a counter,
says Mike Haertel.
1996-03-29 17:48:21 +00:00
bde
e88d323eb2 Count PCI irqs in up to 4 ISAish counters named `pci irqnn' instead of
in the clk0 counter.

Reviewed by:	s
1996-03-29 15:01:51 +00:00
bde
b277faacff Fixed the type of sv_sendsig. The `code' arg to signal handlers is now
u_long.
1996-03-29 14:29:50 +00:00
bde
bf6fcb191e Parenthesized macros.
Fixed munged tabs.
1996-03-29 14:14:07 +00:00
bde
338e708cf9 Added necessary quotes (${CPP} might have spaces in it). Removed
unnecessary quotes.
1996-03-29 14:08:30 +00:00
bde
9e53680c28 Added newlines and punctuation.
Removed defunct options.  It will be easy to keep track of bogus options
by looking at CFLAGS when all real options are moved out of CFLAGS.
1996-03-29 13:51:30 +00:00
bde
af3ddac770 Removed references to nonexistent files. 1996-03-29 13:39:48 +00:00
bde
a6d3515d00 Removed never-used files. 1996-03-29 13:22:04 +00:00
bde
a0131ad117 Fixed reference counting related to relookup(). relookup() must
be called with the directory referenced, and this reference will
be dropped iff relookup() fails, so the value returned must not be
ignored.

Reviewed by:	davidg
1996-03-29 12:30:30 +00:00
bde
6043e95113 Fixed devfs group and permissions of some more disk devices.
Added devfs cd control device.
1996-03-29 11:57:52 +00:00
bde
b8b4cb9e81 Fixed devfs group of some more disk devices.
Added devfs lpt control device (only the standard one, not the ones that
aren't supported by MAKEDEV).

Removed some stupid comments.
1996-03-29 11:54:56 +00:00
bde
084c1ca106 Fixed group of some more disk devices.
Fixed devfs function names.
1996-03-29 11:45:12 +00:00
bde
c66296b1b0 Fixed missing quote in a devfs string. 1996-03-29 11:39:08 +00:00
fenner
fe678071c2 Eliminate panic("rtfree") caused by double-freeing the route
when rt == rt->rt_gwroute .  rt == rt->gwroute shouldn't happen
in the first place, but that's another problem.

(try "route add -host <hostonmynet> <hostonmynet>; ping <hostonmynet>;
route delete <hostonmynet>")
1996-03-29 08:02:30 +00:00
dg
bcaf3321ab Change v_usecount & v_writecount from a short to an int. As shorts they
can and will overflow on large machines - especially on machines with
filesystems with lots of files (like netnews servers), and the result
is a "free vnode isn't" panic or worse.
This fixes one of the causes of these panics that I've been experiancing on
wcarchive.
1996-03-29 06:39:39 +00:00
dg
4d625bffc5 Revert to previous calculation of vm_object_cache_max: it simply works
better in most real-world cases.
1996-03-29 06:28:48 +00:00
scrappy
6bebd36987 Fixed missing variable 'name' for DEVFS code 1996-03-29 04:35:09 +00:00
wollman
4f10aa1ba0 Sync up the Pentium implementation with the documentation.
Previously, the sense of the E flag was reversed on
Pentiums.
1996-03-28 21:00:29 +00:00
wollman
0c6a9cd275 >Blush<. Use the correct opcode for the WRMSR instruction. 1996-03-28 20:39:45 +00:00
wollman
0e478acfb7 Nit: according to the Harvard code, it is necessary to clear the timestamp
counter before loading the performance-monitor control register.  I'm
not sure I believe this, but we'll follow their lead for the moment.
As a result of this commit, the performance-monitoring test program that
I wrote now works (the program will find its way to share/examples).
1996-03-28 20:39:20 +00:00
wollman
a607edf559 Teach the disassembler about the 0f,3x family of instructions
(RDMSR, RDTSC, WRMSR, and RDPMC).
1996-03-28 20:35:03 +00:00
jkh
cb41a0ae0e A bug fix and a couple of new modes for the meteor driver.
Submitted-By: Jim Lowe <james@miller.cs.uwm.edu>
1996-03-28 20:28:14 +00:00
swallace
36d7c0f69e Implement ioctl's IBCS2_TCFLSH and IBCS2_TCXONC. Improve termios conversion.
Implement xenix_eaccess() system call.

Obtained from: NetBSD
1996-03-28 19:53:21 +00:00
scrappy
abe7f073d9 Back out change of log from being in /var/run to back in /dev 1996-03-28 18:29:14 +00:00
scrappy
d163509006 Fixed a Typo 1996-03-28 16:51:12 +00:00
bde
edc7662d0a Undid last revision. It duplicated part of second last revision. 1996-03-28 15:40:17 +00:00
bde
82241f73c0 Removed an unused devfs variable again.
Added $Id$.
1996-03-28 15:25:43 +00:00
bde
9c3ddb1006 Undid the last 2 commits. Rev.1.43 reversed the changes in rev.1.42 and
rev.1.44 was a subset of them.
1996-03-28 15:03:41 +00:00
scrappy
7dcaa810dc devfs_add_devsw() -> devfs_add_devswf modifications
Reviewed by:	julian@freebsd.org
1996-03-28 14:36:48 +00:00
scrappy
49f25e73b0 syslog.h -> changed /dev/log to be /var/run/log (its a socket, not a device)
devfsext.h -> added prototype for dev_linkf();

Reviewed by:	julian@freebsd.org
1996-03-28 14:35:37 +00:00
scrappy
0567ca9a10 Using devfs_add_devswf() instead of devfs_add_devsw()
Reviewed by:	julian@freebsd.org
1996-03-28 14:33:59 +00:00
scrappy
745bb4c905 Added dev_linkf() function (dev_link() + printf-style arguments)
Reviewed by:	julian@freebsd.org
1996-03-28 14:32:27 +00:00
scrappy
85dc41d2a0 Switched from using devfs_add_devsw() to devfs_add_devswf()
Reviewed by:	julian@freebsd.org
1996-03-28 14:31:42 +00:00