Commit Graph

649 Commits

Author SHA1 Message Date
Andrey A. Chernov 1e22c1b2c7 Localize previous changes (removing dma_reset)
only for SB card, it seems that it breaks GUS at least.
1994-04-01 15:04:49 +00:00
Andrey A. Chernov 046b1c1ed5 Tracker "swapping" problem finally solved,
all (expect one) dma_reset calls commented out.
1994-03-31 20:54:25 +00:00
Andrey A. Chernov e463296746 Fix error with reducing speed on SB reset. 1994-03-30 20:33:28 +00:00
David Greenman ac322158f5 Eliminated the "physstrat" wart and merged it into kern_physio.c. This
patch also fixes a bug which causes a kernel VM leak.
1994-03-30 02:47:13 +00:00
David Greenman 4a490e4c21 Eliminated the "physstrat" wart and merged it into kern_physio.c. This
patch also fixes a bug which causes a kernel VM leak.
1994-03-30 02:31:11 +00:00
David Greenman 6b4ac811ca New routine "pmap_kenter", designed to take advantage of the special
case of the kernel pmap.
1994-03-30 02:17:47 +00:00
Andrey A. Chernov 827f6dbf32 1) Better fix for false carrier detect on bidir port
2) ttyclose moved after comhardclose, because clears t_state
3) slpx(s) moved after l_open to prevent undetected carrier down
1994-03-26 13:40:18 +00:00
David Greenman dad5c5fe90 ifdef KERNEL the pmap_kextract inline function; ps is unhappy otherwise.
Pointed out by Frank Terhaar-Yonkers <fty@vislab.epa.gov>.
1994-03-25 22:08:59 +00:00
Andrey A. Chernov 70c0dd79d8 Fix false carrier detection on incoming bidir port. 1994-03-25 15:10:50 +00:00
David Greenman ed7fcbd079 From John Dyson: performance improvements to the new bounce buffer
code.
1994-03-24 23:12:48 +00:00
Andrey A. Chernov c9ffdca0a7 1) After discussion with Hannu, returning speed changed back.
Real problem fixed by my previous fix for SB 2.x
2) get_time function slightly modified to minimize possible
overflowing.
1994-03-24 22:23:51 +00:00
David Greenman 6378ff1e87 Enabled bounce buffers by default. This should be done via a probe for
the specific controller type, so this change is temporary.
1994-03-24 02:23:00 +00:00
Andrey A. Chernov 5d8d655374 For SB 2.x speed was reduced to 22050;
I already fix this bug in previous driver version,
but new driver update breaks my changes!
1994-03-23 22:52:30 +00:00
Andrey A. Chernov 176eaca913 SPEED-related ioctls returns wrong speed cause Tracker's damage. 1994-03-23 21:58:59 +00:00
Andrey A. Chernov f73cefd412 1) GET_TIME function completely broken
it returns time in microseconds instead of HZ
(feel difference!)
2) change GET_TIME type to unsigned long in all places to prevent overflow
1994-03-23 19:27:52 +00:00
Andrey A. Chernov 83bd7ca8b0 1) Change dtrwait 300 to 3 * hz (to be more kosher)
2) Protect sioclose by spltty()
1994-03-23 17:28:35 +00:00
David Greenman d5e26ef0ef Bounce buffers. From John Dyson with help from me. 1994-03-23 09:16:04 +00:00
Andrey A. Chernov ac1ad5b2d7 Add missing EXCLUDE_SBPRO 1994-03-23 00:05:25 +00:00
Andrey A. Chernov 7116e6b71c Add siostop to sioclose, because ttyflush called from
wrong places removed now.
1994-03-21 22:19:56 +00:00
Andreas Schulz 308352e4d4 Changed the raw partition number from 3 to 0. This change lets us use
/dev/mcd0a instead of /dev/mcd0d. This is more conforming to the /dev/cd0a
for the SCSI cdrom drives. It breaks the convention d the whole drive.
But the question is, do we really need partitions on cdrom drives ?
1994-03-21 20:59:55 +00:00
Andreas Schulz 16a6a70817 Makefile.i386:
put vers.o at the end of the loader line. We are simply jumping in the
moment into the first location of the text segment in 386bsd. So the
linking order is very important :-). With the addition of the const
types in newvers.sh we jumped into them. I have experimented with an
entry point specification, but was unsuccessfull. Someone else should
look at this.
devices.i386:
files.i386:
Added entries for a Sony cdrom driver.
1994-03-21 20:48:52 +00:00
Andrey A. Chernov 67a850fc67 Increase default DTR wait time up to 3 secs.
Also hardw. specs says 2.5 secs is enough, many modems needs
at least 3 secs.
1994-03-21 15:18:27 +00:00
Andrey A. Chernov 6ec145713c Now printf("changing root... indicates raw partition for floppy
f.e. fd1d
1994-03-21 15:02:47 +00:00
Andrey A. Chernov 3f0afdd835 Fix printf for root system mounted on second floppy 1994-03-21 14:53:08 +00:00
Andrey A. Chernov 10c7408ae0 Fix for root system mounted on second floppy 1994-03-21 14:37:01 +00:00
David Greenman 29360eb099 Changed dynamic stack grow code to grow by "SGROWSIZ" amount. Initially
allocate SGROWSIZ amount of stack. Also set vm_ssize to the initial
stack VM size. Increased DFLSSIZ stack rlimit default to 8MB.
1994-03-21 09:35:24 +00:00
David Greenman 66ad8173f3 previous optimization from John wasn't quite ready for primetime. 1994-03-21 06:37:04 +00:00
David Greenman 93555dc983 Two fixes from John Dyson to fix hangs and panics when using ctrl-T:
1) tty.c: gather all the info about the processes before calling ttyprintf
	(which may block).
2) syscons.c: handle asynchronous output properly (data structures may
	be corrupted otherwise).
1994-03-20 20:05:55 +00:00
Garrett Wollman 1547917a09 Get rid of a nagging call to sleep() which crept back in. 1994-03-20 00:30:59 +00:00
Garrett Wollman 9131cc8d54 Delete some references to sleep() that somehow crept in. 1994-03-20 00:30:04 +00:00
Garrett Wollman f0e96ca631 Added cpu_model and machine variables. 1994-03-19 23:58:58 +00:00
Garrett Wollman 27408f32ce More symtab space. 1994-03-19 22:17:56 +00:00
Andrey A. Chernov 65f120b86a Remove ttyfree from sioclose
Example:
Application use port cua01
Getty open ttyd1 (allocates rawq,outq,etc) and waits while application
done
Application quits, sioclose issued, ttyfree issued (getty calls revoke)
Getty awakes and goes to panic into initrb (NULL rawq)
1994-03-18 23:35:37 +00:00
David Greenman b3e3ac9f89 Increased maximum protection for data segment to VM_PROT_ALL because
some (lisp) programs try to execute code out of it.
1994-03-17 22:21:02 +00:00
Andreas Schulz ee3794ce7d Catch the divide by zero bug earlier. If the drive give back
a zero cylinder and/or head count, set them and the sector count
to some fictious values. The same already happens if the request
sense is unsuccessfull.
1994-03-15 20:49:09 +00:00
Garrett Wollman 11e4fa43bc Added David Mills' kernel NTP PLL code. The current version of NTP does
not yet speak to this code.
1994-03-15 01:58:22 +00:00
Andreas Schulz d6e2315539 Put a safety check in for the secsiz divide for the MB printf. Else
we get a panic integer divide fault in the kernel if the drive returns
a bogus zero secsize.
1994-03-14 23:09:34 +00:00
David Greenman 943a66f340 Performance improvements from John Dyson.
1) A new mechanism has been added to prevent pages from being paged
	out called "vm_page_hold". Similar to vm_page_wire, but
	much lower overhead.
2) Scheduling algorithm has been changed to improve interactive
	performance.
3) Paging algorithm improved.
4) Some vnode and swap pager bugs fixed.
1994-03-14 21:54:03 +00:00
Andrey A. Chernov 05e5086aab Checking l_close in unneeded (one of my previous fixes),
so back it out.
1994-03-14 18:52:14 +00:00
Steven Wallace 63a7486262 Removed EXCLUDE_<driver> for sound drivers so that all sound drivers
are compiled into kernel.  Users are referred to sound doc for info.
1994-03-11 22:17:24 +00:00
Steven Wallace 62d15cccd2 Added appropriate entries into files.i386 for snd drivers in /sys/i386/isa/sound
Added new snd drivers and EXCLUDE_<driver> options to LINT.
1994-03-11 10:31:05 +00:00
Steven Wallace 2d997c1071 Updated include files for sound drivers. 1994-03-11 10:28:36 +00:00
Steven Wallace a75ba8fa22 Integrated Hannu Savolainen's new VoxWare sound drivers, version 2.4.
These drivers now have full SoundBlaster 16 support.
1994-03-11 10:27:25 +00:00
Andrey A. Chernov 2109bd5c86 Don't call ttyclose twice into sioclose and move ttyclose
before comhardclose
1994-03-10 10:06:27 +00:00
Andrey A. Chernov 3b2b53aa9a First open:
now HUPCL set only in bidir case for callin lines
(this prevents set HUPCL on mouse)
comhardclose:
in addition to HUPCL case now DTR dropped for bidir case
if line was active in and no carrier present now.
(this prevents DTR sleep on mouse)
1994-03-08 22:11:10 +00:00
Nate Williams e7e0afea3b From: Jim Babb <babb@sedhps01.mdc.com>
Subject: Re: Bugs with floppy drives
Date: Tue, 8 Mar 94 9:11:54 CST

The transfer speed was only set in the retry after error, not  when
switching drives.
1994-03-08 16:25:29 +00:00
David Greenman 835b7809ab Modified pccnprobe to not set cn_tp = CONSOLE_TTY if __FreeBSD__ is
defined. This code should probably be yanked out.
1994-03-08 15:17:41 +00:00
Rodney W. Grimes 07c2619554 Add mcd1 at 0x340 irq 11. 1994-03-08 05:56:47 +00:00
David Greenman 5c09563e1e 1) enhanced in_cksum from Bruce Evans.
2) minor comment change in machdep.c
3) enhanced bzero from John Dyson (twice as fast on a 486DX/33)
1994-03-07 11:47:32 +00:00
David Greenman 04f1835605 1) "Pre-faulting" in of pages into process address space
Eliminates vm_fault overhead on process startup and
		mmap referenced data for in-memory pages.

		(process startup time using in-memory segments *much* faster)

	2)	Even more efficient pmap code.  Code partially cleaned up.
		More comments yet to follow.

		(generally more efficient pte management)

	3)	Pageout clustering ( in addition to the FreeBSD V1.1 pagein
		clustering.)

		(much faster paging performance on non-write behind disk
		subsystems, slightly faster performance on other systems.)

	4)	Slightly changed vm_pageout code for more efficiency and
		better statistics.  Also, resist swapout a little more.

		(less likely to pageout a recently used page)

	5)	Slight improvement to the page table page trap efficiency.

		(generally faster system VM fault performance)

	6)	Defer creation of unnamed anonymous regions pager until needed.

		(speeds up shared memory bss creation)

	7)	Remove possible deadlock from swap_pager initialization.

	8)	Enhanced procfs to provide "vminfo" about vm objects and user
		pmaps.

	9)	Increased MCLSHIFT/MCLBYTES from 2K to 4K to improve net &
		socket performance and to prepare for things to come.

John Dyson
dyson@implode.root.com
David Greenman
davidg@root.com
1994-03-07 11:38:49 +00:00
Guido van Rooij fe719280d0 Removed a #warning that I left here. 1994-03-06 20:56:26 +00:00
Jordan K. Hubbard 18e494b593 Used definable status codes (some may be sharable, esp the door open codes, but
it still looks a little suspicious that so many of the status codes are missing
so I'm not going to adopt all of the existing ones yet.  Try to be more
descriptive in the use of hex constants.
1994-03-06 14:14:49 +00:00
Jordan K. Hubbard 068a409099 Beginning of change set for making more friendly laptop configurations.
Changes _only_ take effect if `options LAPTOP' is set.

Note:  This one is distinctly dodgy. When my IDE drive spins back up from sleep
mode, it generates this `extra interrupt' condition by spinning back up and
generating an intr, though without any particular action required.  This
message coming out every time is rather annoying, and thus disabled.
However, what I'm not at all sure of is whether or not all IDE drives will
behave in the same way, or if perhaps it needs to be done in a more complicated
fashion by detecting this more involved "I've spun up and am just saying hi"
condition.  This is a simple change and easy to back out/ammend if anybody has
any better ideas.
1994-03-06 03:10:58 +00:00
Andreas Schulz 563ac84861 Added more status bytes for the mitsumi drive. This is only an ugly
hack in the moment for testing purposes and to get the drive going
again.
0x20 means empty drive.
0x30 means closed drive with CDROM inserted.
0x80 means drive pulled out, but door closed.
0xa0 means drive pulled out and door open.
Luckily none of these values are the same as that reported for Ethernet
cards ( 0 for WD8003E, 0x40 for WD8013EPC, 0x60 for NE2000).
The bad part is, the probe code gets the WD8003E so hosed, that it is
no longer usable after it. No problem with the WD8013EPC.
1994-03-05 21:41:51 +00:00
Jordan K. Hubbard 73787aa3f2 This should stop the false probes in their slimey little tracks. 1994-03-05 03:54:19 +00:00
Andrey A. Chernov 3b2acd20e0 1) My previous fix does nothing, now Rod's fix rewrited to implement
my previous fix too (using wdp_heads controller value) and check
0 heads case too.

Other fixes from Bruce:
2) Fix dk_timeout from 2 to about 4 seconds.
3) wdcontrol not retried on internal error.
4) wdwait return check changed ( "!=0" to "<0" into wdsetctlr,
"<0" to "!=0" into wdgetctlr).
1994-03-04 16:43:07 +00:00
Guido van Rooij 79bdab6c87 Ttys structures are now allocated dynamically via ttymalloc/ttyfree.
This inetrface should be used from now on.
pseudo device pty xx still keeps its meaning: a maximum of
xx ptys is allowed.
A ringbuffer is now 2040 bytes long, per Garrett Wollman's request.
The changes are inspired by the way NetBSD did it (thanks for that!),
though I made it slihghtly different, including the interface so
at least 75% of the allocated space is deallocated when the tty is
closed.
Note further that it is easy to modify the ringbuffer length runtime.
This will have to wait untill some later date...


-Guido
1994-03-02 20:28:38 +00:00
Guido van Rooij 8a7af68d49 Ttys structures are now allocated dynamically via ttymalloc/ttyfree.
This inetrface should be used from now on.
pseudo device pty xx still keeps its meaning: a maximum of
xx ptys is allowed.
A ringbuffer is now 2040 bytes long, per Garrett Wollman's request.
The changes are inspired by the way NetBSD did it (thanks for that!),
though I made it slihghtly different, including the interface so
at least 75% of the allocated space is deallocated when the tty is
closed.
Note further that it is easy to modify the ringbuffer length runtime.
This will have to wait untill some later date...


-Guido
1994-03-02 20:18:09 +00:00
Andrey A. Chernov b0568305d3 360 DD entry speed fixed to 250KBPS 1994-03-02 18:34:41 +00:00
Andrew Moore 56ef028575 floppy tape support shouldn't interfere with floppy disk driver on
systems with no floppy tape drive (patch from Jim Babb).
1994-03-02 08:10:42 +00:00
David Greenman 2fd57dbc38 Minor comment change. 1994-03-02 05:50:01 +00:00
Andreas Schulz 3b25168637 Added the missing bzero after the malloc in aha1542.c that seems to
produce the mbox not free messages on many systems. Bug reported from
hd@world.std.com.
1994-03-01 16:06:37 +00:00
David Greenman 38ff12a4b9 Fix from Christoph Robitschko: the '790 interrupt table was wrong. 1994-03-01 12:23:33 +00:00
Andrew Moore 0b96c983e8 floppy tape support still not quite there - it prevents
mounting the floppy disk  drives on some systems that don't have
a floppy tape drive.
1994-03-01 01:27:03 +00:00
Andrew Moore fa7beb42e0 Add floppy tape support. 1994-02-28 04:19:39 +00:00
Poul-Henning Kamp 9b73b5a04a dcfclk driver obsoleted, sio/TIOCTIMESTAMP took over. 1994-02-27 21:53:54 +00:00
Poul-Henning Kamp 11d5168c11 dcfclk driver obsoleted by sio/TIOCTIMESTAMP. 1994-02-27 21:51:05 +00:00
Andrey A. Chernov 4aa43a6797 Bump CLK_TCK to more precise value (128)
If you want more precise, use directly getrusage(),
because clock() emulated via it.
1994-02-26 00:56:02 +00:00
Poul-Henning Kamp bfbc1f09d4 RTS shouldn't be touched unless CS_RTS_IFLOW is set. 1994-02-26 00:04:03 +00:00
Andrey A. Chernov 3932675839 Better fix for >16 heads problem, right value from
controller restored.
1994-02-25 23:17:40 +00:00
Poul-Henning Kamp e3757377ff TIOCTIMESTAMP capability. The port in question must be configured with
"vector siointrts".  Thus only a compare is added for the other ports.
1994-02-24 16:39:48 +00:00
Jeffrey Hsu ffe25c427d Correct definitions of flags used by sigreturn to validate sigcontext. 1994-02-24 00:21:12 +00:00
Jeffrey Hsu 8d27e59b01 validate sigcontext before restoring it 1994-02-24 00:18:04 +00:00
Rodney W. Grimes 5086a82862 Fix off by one error 1994-02-23 11:14:26 +00:00
Rodney W. Grimes 97fca376d6 Put back the bt0 that some one deleted.... 1994-02-23 10:59:44 +00:00
Rodney W. Grimes 9ad564373e Bump boot block revision to 1.9 by a dummy edit on disk.c and:
>From: bde@kralizec.zeta.org.au (Bruce Evans)
Subject: cache botch in bootstrap
Date: Sun, 20 Feb 94 18:14:35 +1100
The cache in the bootstrap loader didn't allow for the device changing.

This caused surprisingly little trouble - the cache is only for a single
track (or part of a track), and the first access to a new device is
always for an early sector, so there is no problem unless the last access
to the old device was for an early sector.  I saw the problem on a system
with BSD on wd1 and no label on wd0.  Everything worked if the the device
name wd(1,a) was specified before the default of wd(0,a) was tried, but
when the default was tried, it failed on the first sector because there
was no label, and then the first sector on wd0 was always used instead
of the first sector on wd1, so there was apparently no label on wd1
either.

Bruce
1994-02-22 22:59:40 +00:00
Rodney W. Grimes 97687d1b3d More clean up of the drive Id string, trancate trailing spaces. 1994-02-22 22:13:37 +00:00
Rodney W. Grimes 1004b0634c The model string can be 40 bytes long with no terminating null, so
convert all nulls to spaces and then print it with a %40s.
1994-02-22 18:51:27 +00:00
Rodney W. Grimes e583b89dfa Cleanup the lptprobe and lpt_port_test routine to be KNF. 1994-02-22 09:05:13 +00:00
Rodney W. Grimes 41553a650d This is Jordans probe code fixes. Tested on LU002, FX001D. Then I went
in and cleaned the spaces vs tabs up, and made the code a little closer
to KNF.
1994-02-22 08:44:31 +00:00
Rodney W. Grimes 1ffa0b1a96 >From: "Andrew A. Chernov" <ache@freefall.cdrom.com>
Subject: Bugfix for SB16 with DSP version 4 and above

No description sent, but it appears to fix a major number problem
with certain models of the SB16.
1994-02-21 14:20:45 +00:00
Rodney W. Grimes 84a161c5f1 Clean up dmesg output so that it matches the scsi stuff.
Small hack, if heads > 16, output a warning and then set the head
count to 16.  This stops the infinite loop on this error and allows
people to later fix the DOS parameter table later with fdisk.
1994-02-21 12:32:33 +00:00
Rodney W. Grimes 2da7751051 Protect some printf's with #ifdef DEBUG 1994-02-21 05:45:06 +00:00
Andrey A. Chernov 5503c7e948 Fix bug with DSP ver2.0, frequency reduced from 44100 to 22050 1994-02-20 09:37:27 +00:00
Rodney W. Grimes 4568df5233 I (rgrimes) cleaned the code up some, mostly just format stuff.
>From: csgr@alpha.ru.ac.za (Geoff Rehmet)
Date: Wed, 16 Feb 1994 21:28:06 +0200 (GMT+0200)

New version of lpt, most of the brokenness fixed.
1994-02-17 10:20:18 +00:00
Rodney W. Grimes dbd8393f77 I don't want to read about all the people that forgot this due to syscons
changes, so I am adding it here until AFTER the 1.1 release:
+ COPTFLAGS+=-D__FreeBSD__
1994-02-17 06:51:15 +00:00
Rodney W. Grimes f2ba1017cc Increase the timout on aha_send_mbox from 1ms to 3ms, needed to reliably
run Exabyte 8505 on 1742's.  This may not be the final solution, but it
makes it work.  It may be better to change the DELAY(10) to DELAY(30)
inside the loop instead of increasing the loop count from 100 to 300.
1994-02-17 05:48:08 +00:00
Nate Williams a60eff2770 From: Jim Babb <babb@sedhps01.mdc.com>
Date: Mon, 14 Feb 94 15:57:14 CST

This adds a copyright to the fdc.h file and fixes a bug in re-tries
during writes on a heavily loaded system.
1994-02-14 22:24:28 +00:00
Nate Williams 56cc87f5d9 From: Jim Babb <babb@sedhps01.mdc.com>
Subject: Bug Fix for ft.c - please commit
Date: Mon, 14 Feb 94 10:22:54 CST

This fixes a bug where the system can crash if the tape is used
after the floppy has been used.
1994-02-14 19:22:34 +00:00
Jordan K. Hubbard a70c96594a This is the new link.h from Paul K. Keeping history is even probably a bad
idea considering the old version (but I haven't time for attic surgery - this
is just a caution).  This is part of (and the major reason for) the new ld
changes.
1994-02-13 20:47:18 +00:00
Jordan K. Hubbard 8d5a4c1f9e Use -Z instead of -z to build kernels. This is consistent with NetBSD's
usage of the -[Zz] flags (we're now in sync).  Part of the ld update
changes.
1994-02-13 20:37:32 +00:00
David Greenman 2c194b2e93 Fixed bug in handling of COW - the original code was bogus and it was
only accidental that it worked. Also, don't cache non-managed pages.
1994-02-13 08:29:33 +00:00
Guido van Rooij 51f4a07b5a ps works inside ddb now. 1994-02-11 21:14:52 +00:00
Nate Williams b21df1d16c Added third parameter to wdwait which contains the amount of time to
'wait' based on suggestion by Rod in -hackers.

No functional change as all the TIMEOUTS are identical currently, but
this will probably change.
1994-02-11 12:02:35 +00:00
David Greenman 43ef94a93a Patch from John Dyson:
a pv chain was being traversed while interrupts were
	fully enabled in pmap_remove_all ... this is bogus, and
	has been fixed in pmap.c. (sorry for adding the splimp)
1994-02-10 03:03:44 +00:00
Nate Williams 8d43398bd2 Commented on what the mse0, mcd0, and lpt/lpa devices were used for.
(No functional changes)
1994-02-09 05:35:57 +00:00
David Greenman aae4685ae8 From: Dave Matthews <dave@prlng.co.uk>
Description:
The integer overflow instruction (into) and the interrupt instruction with
value 4 (int #4) both give rise to SIGBUS signals rather than SIGFPE.  The
problem is that overflow is a trap not a fault (unlike the BOUND instruction).
1994-02-08 12:58:44 +00:00
David Greenman b9d60b3f59 Fixed bugs in stack grow code, and moved it back into a seperate function
like it was originally. Also added back call to "grow" in sendsig now
that this routine actually works.
1994-02-08 09:26:04 +00:00
David Greenman 98446d4e96 Fixes from John Dyson to fix out-of-memory hangs and other problems (such
as increased swap space usage) related to (incorrectly) paging out the
page tables.
1994-02-08 03:07:58 +00:00
Andrew Moore 9c2638e6dc Tentative fdc patches... 1994-02-07 22:12:45 +00:00