2701 Commits

Author SHA1 Message Date
dg
929c346a80 Patches from Serge Babkin to fix interrupt handling bugs.
Submitted by:	Serge Babkin
1995-03-23 06:53:39 +00:00
dg
1a822ca3ae Restore my changes to initialize the kdc_shutdown routine pointer. Stefan
clobbered it in his previous commit and not having it causes the machine
to panic during reboot (as well as not doing the important shutdown callout).
1995-03-23 06:14:44 +00:00
dg
559c6d8623 Fixed warning caused by returning a value in a void function (introduced
in a recent commit by me). Relaxed checks before calling vm_object_remove;
a non-internal object always has a pager.
1995-03-23 05:19:44 +00:00
se
3193e6f8ad Correct pcibus_setup() to return as soon as one test succeeds. 1995-03-22 21:35:39 +00:00
se
68b8d4d969 Delete PCI PCI bridge simulator code ...
Submitted by:	Wolfgang Stanglmeier <wolf@kintaro.cologne.de>
1995-03-22 19:51:59 +00:00
se
2a7c96b4c3 Set request sense data size from xp->req_sense_length if != 0.
Submitted by:	Wolfgang Stanglmeier <wolf@kintaro.cologne.de>
1995-03-22 19:45:22 +00:00
dg
4aa8152029 Removed unused fifth argument to vm_object_page_clean(). Fixed bug with
VTEXT not always getting cleared when it is supposed to. Added check to
make sure that vm_object_remove() isn't called with a NULL pager or for
a pager for an OBJ_INTERNAL object (neither of which will be on the hash
list). Clear OBJ_CANPERSIST if we decide to terminate it because of no
resident pages.
1995-03-22 12:24:11 +00:00
se
0a2856a018 Remove use of unitialised variable xp->req_sense_length.
Submitted by:	Wolfgang Stanglmeier <wolf@kintaro.cologne.de>
1995-03-22 11:00:23 +00:00
se
0c8c121f26 Remove spurious declaration of printf().
Submitted by:	Michael Reifenberger <root@rz-wb.fh-sw.de>
1995-03-22 10:52:05 +00:00
dg
ae4e410e30 Fixed potential sleep/wakeup race conditional with splhigh().
Submitted by:	John Dyson
1995-03-22 08:08:44 +00:00
dg
4057b0210c Fixes and improvements from John Dyson:
Fixed the I/O statistics
Allow WD1007 type controllers to work
Support MULTI-BLOCK I/O
Correct delay to use port 0x84, reading the status register
	might not be a long enough delay.
Changed probe message to match SCSI type devices.
1995-03-22 05:23:01 +00:00
dg
08726c6d9b Added a check for wrong object size; print a warning, but deal with it
correctly. The warning will tell us that there is a bug somewhere else
in sizing the object correctly.

Submitted by:	John Dyson
1995-03-22 05:12:18 +00:00
dg
0c24a80ae8 Fixed bug in vm_mmap() where the object that is created in some cases
was the wrong size. This is the likely cause of panics reported by
Lars Fredriksen and Paul Richards related to a -1 blkno when paging
via the swap_pager.

Submitted by:	John Dyson
1995-03-22 05:08:41 +00:00
dg
ac5103f248 Removed unused variable declaration missed in previous commit. 1995-03-21 23:09:53 +00:00
dg
276405b98d Removed do-nothing VOP_UPDATE() call. 1995-03-21 23:07:19 +00:00
se
0cdd391c05 New ISA specific PCI code.
Supports shared PCI interrupts.

Submitted by:	Wolfgang Stanglmeier <wolf@kintaro.cologne.de>
1995-03-21 23:06:07 +00:00
se
6e667246cd Completely new PCI code:
1) Supports PCI to PCI bridge devices (and tries to initialise them,
   even if the BIOS is brain dead).
2) Supports shared PCI interrupts. Interrupt handlers now MUST return
   '0' if they found nothing to do, '1' otherwise.

New features tested with i486 systems based on the Intel Saturn and
a DEC 4channel Ethernet card only, but expected to work on most systems.

The option PCI_REMAP has been removed !

Submitted by:	Wolfgang Stanglmeier <wolf@kintaro.cologne.de>
1995-03-21 23:01:06 +00:00
se
4f92854707 Stylistic changes. Update Wolfgang's e-mail address.
Submitted by:	Wolfgang Stanglmeier <wolf@kintaro.cologne.de>
1995-03-21 22:48:36 +00:00
se
ecb5192aa7 Silence "gcc -Wall".
Submitted by:	Wolfgang Stanglmeier <wolf@kintaro.cologne.de>
1995-03-21 22:43:04 +00:00
se
dfcb9a5280 Cosmetic changes.
Submitted by:	Wolfgang Stnglmeier <wolf@kintaro.cologne.de>
1995-03-21 22:41:19 +00:00
se
53910021c6 Major cleanup: Stylistic changes, 386BSD specific code removed.
Adaptec to new PCI code.

Submitted by:	Wolfgang Stnglmeier <wolf@kintaro.cologne.de>
1995-03-21 22:14:27 +00:00
wollman
73b8a71918 Protocol-cloned routes should gain a reference to their parents to make
sure that rt->rt_parent values can never be re-used harmfully.
1995-03-21 19:50:34 +00:00
dufault
0d7a7de447 Set it so you can add and remove line disciplines without replicating
code for looking for open slots in table (and you could hide the table
if you wanted to).
1995-03-21 11:24:05 +00:00
dufault
0015f4c42b Julian's suport of compressed tape drives. 1995-03-21 11:21:37 +00:00
dufault
274a8d5ee2 cd.c: Julian's CD audio cleanup
sd.c: Julian's removal of subdriver requests
st.c, scsi_tape.h: Julian's suport of compressed tape drives

Note: compressed tape drives are still not working fully.

scsiconf.h, scsi_base.c, scsi_driver.c: address problems in probes
and error console logs
1995-03-21 11:21:08 +00:00
dg
0d274572e3 Disallow non page-aligned file offsets in vm_mmap(). We don't support this
in either the high or low level parts of the VM system. Just return EINVAL
in this case, just like SunOS does.
1995-03-21 10:15:52 +00:00
dg
8772a34db1 Added a new version of trap_pfault() that disallows kernel page faults
to the user address space unless pcb_onfault is set. The code is currently
commented out because iBCS2 and process debugging parts of the kernel
need to be changed/fixed first.
1995-03-21 07:16:12 +00:00
dg
8476ca9401 Changed some #ifdef DIAGNOSTIC code that I added to be #ifdef DEBUG. 1995-03-21 07:02:51 +00:00
dg
d0d2e323fa Fixed bug in the size == 0 case of msync() caused by a bogus return value
check..
1995-03-21 02:54:04 +00:00
dg
4c94a22884 Fixed vinvalbuf() to work like NFS wants it to. The previous code wouldn't
flush pages in the vm object if V_SAVE was true.
1995-03-21 01:13:16 +00:00
dg
27d4af36dd Added a new boolean argument to vm_object_page_clean that causes it to
only toss out clean pages if TRUE.
1995-03-21 01:11:44 +00:00
dg
c9e5cb697a Made minor readability tweak. 1995-03-20 23:00:57 +00:00
wollman
09bae951cd Better fix for the deletion of parents of cloned routes problem,
superseding the `nextchild' hack.  This also provides a way
forward to fix RTM_CHANGE and RTM_ADD as well.
1995-03-20 21:30:21 +00:00
wollman
2aa3b373ab Forgot pppcompress.c in PPP module. 1995-03-20 19:33:35 +00:00
wollman
5e54a01b4e Forgot slcompress.c in SLIP module. 1995-03-20 19:31:47 +00:00
wollman
d590bce33d The discard, tunnel, SLIP, and PPP network interface pseudo-devices
are now dynamically loadable.  It doesn't make sense to do the same
for the loopback.
1995-03-20 19:25:49 +00:00
wollman
1a3906ad11 Support for pseudo-device LKMs. Note that this is restricted to only
one pseudo per module (a restriction which will eventually be lifted) and
isthus not in its final form.
1995-03-20 19:20:44 +00:00
wollman
9786661cb0 Add support for pseudo-device LKMs. 1995-03-20 19:18:51 +00:00
wollman
2a30dae2a5 This should be splimp() rather than splnet() since ifaddrs might go away
as a result of link-layer processing.
1995-03-20 18:31:51 +00:00
wollman
fd40ec89df Fix race conditions involved in setting IP multicast options. This should
fix Dennis Fortin's problem for good, if I've got it figured out right.

(The problem was that a `struct ifaddr' could get deleted out from under
the current requester, thus leaving him with an invalid interface pointer
and causing even more bogus accesses.)
1995-03-20 18:11:31 +00:00
dg
5d88c07ee1 Don't gain/lose an object reference in vnode_pager_setsize(). It will
cause vnode locking problems in vm_object_terminate().
Implement proper vnode locking in vm_object_terminate().
1995-03-20 10:20:42 +00:00
dg
b9e7140c7c Don't gain/lose a reference to the object when yanking its pages in
vinvalbuf()...it will cause vnode locking problems in vm_object_terminate,
and isn't necessary anyway.
1995-03-20 10:19:09 +00:00
dg
ba7cc6e6a9 Fixed "objde1" hang. It was caused by a "&" where an "&&" belonged in the
expression that decides if a wakeup should occur.
1995-03-20 10:14:55 +00:00
dg
cfecdfd362 Don't attempt to sync pages in the V_SAVE case of vinvalbuf; doing so can
lead to a deadlock. Just let the VM system deal with it.
1995-03-20 02:08:24 +00:00
dg
27e7e16904 Removed an unnecessary call to vinvalbuf after the page clean. 1995-03-20 02:06:09 +00:00
dg
bc768fa088 Do proper vnode locking when doing paging I/O. Removed the asynchronous
paging capability to facilitate this (we saw little or no measureable
improvement with this anyway).

Submitted by:	John Dyson
1995-03-19 23:46:25 +00:00
dg
23d0a8bc3c Fixed bug introduced in the previous commit - the lock must be held until
after the call to exec_check_permissions().
1995-03-19 23:27:57 +00:00
dg
d337091388 Lose the lock on the vnode. Changes to implement proper locking in the
vnode pager now require this.

Submitted by:	John Dyson
1995-03-19 23:08:12 +00:00
dg
9cd78521d8 Removed redundant newlines that were in some panic strings. 1995-03-19 14:29:26 +00:00
dg
f572de6775 Backed out change to panic call: As Chris just pointed out to me, panic()
does indeed work like printf(). gdb gets the string untranslated for some
reason.
1995-03-19 13:44:03 +00:00