Commit Graph

2094 Commits

Author SHA1 Message Date
David Greenman
740c65cfec Added two missing brelse() calls.
Submitted by:	rick@snowhite.cis.uoguelph.ca
1995-01-10 13:06:51 +00:00
Jordan K. Hubbard
ed4a82f717 Latest update from Serge Vakulenko <vak@cronyx.ru>
Submitted by:	vak
1995-01-10 11:41:28 +00:00
David Greenman
5943df8331 PG_FAKE is no longer used - so don't bother to clear it. 1995-01-10 09:20:34 +00:00
David Greenman
a776a317e9 Kill VM_PAGE_INIT macro as it is only used once and makes the code more
difficult to understand. Got rid of unused vm_page flags.
1995-01-10 09:19:52 +00:00
David Greenman
480dff540b Fixed some formatting weirdness that I overlooked in the previous commit. 1995-01-10 07:32:52 +00:00
Bruce Evans
fa724216f5 Always build libkern_p.a. `NOPROFILE' should only control user libraries. 1995-01-10 01:57:56 +00:00
Joerg Wunsch
b324392f6b fix for: kern/97: wt DELAY patch
Wangtek PC-02 QIC-02 controller with Cipher 150MB tape drive

        Any attemp to open /dev/rwt0 hangs.

        The following patch to /sys/i386/isa/wt.c is derived from Mikael
Hybsch's wt driver.

Submitted by:	Terry Lee <terry@uivlsi.csl.uiuc.edu>
1995-01-09 17:55:10 +00:00
David Greenman
0d94caffca These changes embody the support of the fully coherent merged VM buffer cache,
much higher filesystem I/O performance, and much better paging performance. It
represents the culmination of over 6 months of R&D.

The majority of the merged VM/cache work is by John Dyson.

The following highlights the most significant changes. Additionally, there are
(mostly minor) changes to the various filesystem modules (nfs, msdosfs, etc) to
support the new VM/buffer scheme.

vfs_bio.c:
Significant rewrite of most of vfs_bio to support the merged VM buffer cache
scheme.  The scheme is almost fully compatible with the old filesystem
interface.  Significant improvement in the number of opportunities for write
clustering.

vfs_cluster.c, vfs_subr.c
Upgrade and performance enhancements in vfs layer code to support merged
VM/buffer cache.  Fixup of vfs_cluster to eliminate the bogus pagemove stuff.

vm_object.c:
Yet more improvements in the collapse code.  Elimination of some windows that
can cause list corruption.

vm_pageout.c:
Fixed it, it really works better now.  Somehow in 2.0, some "enhancements"
broke the code.  This code has been reworked from the ground-up.

vm_fault.c, vm_page.c, pmap.c, vm_object.c
Support for small-block filesystems with merged VM/buffer cache scheme.

pmap.c vm_map.c
Dynamic kernel VM size, now we dont have to pre-allocate excessive numbers of
kernel PTs.

vm_glue.c
Much simpler and more effective swapping code.  No more gratuitous swapping.

proc.h
Fixed the problem that the p_lock flag was not being cleared on a fork.

swap_pager.c, vnode_pager.c
Removal of old vfs_bio cruft to support the past pseudo-coherency.  Now the
code doesn't need it anymore.

machdep.c
Changes to better support the parameter values for the merged VM/buffer cache
scheme.

machdep.c, kern_exec.c, vm_glue.c
Implemented a seperate submap for temporary exec string space and another one
to contain process upages. This eliminates all map fragmentation problems
that previously existed.

ffs_inode.c, ufs_inode.c, ufs_readwrite.c
Changes for merged VM/buffer cache.  Add "bypass" support for sneaking in on
busy buffers.

Submitted by:	John Dyson and David Greenman
1995-01-09 16:06:02 +00:00
Jordan K. Hubbard
716831f5f4 Add a MIN macro. 1995-01-09 11:38:40 +00:00
Poul-Henning Kamp
5b568d88bb cdev #50 -> pcmcia 1995-01-09 09:36:48 +00:00
Peter Dufault
04bcc6f58b Ensured all files have copyright and RCS ID variable. 1995-01-08 15:56:10 +00:00
Andreas Schulz
c9082578fa Submitted by: Gerd Truschinski
Removed one semicolon, two are one to much :-). Found by the hc860 compiler
and Gerd Truschinski 8-).
1995-01-08 15:13:40 +00:00
Peter Dufault
f948427e16 Added ssc device 1995-01-08 13:42:19 +00:00
Peter Dufault
081964045f Added residual length for 1542C only 1995-01-08 13:41:28 +00:00
Peter Dufault
e8831d3712 added ssc device 1995-01-08 13:40:31 +00:00
Peter Dufault
832ac3cac7 Added "change address" ioctl for ssc device. 1995-01-08 13:39:46 +00:00
Peter Dufault
7562b0d606 Reviewed by: gibbs@estienne.CS.Berkeley.EDU
Reenabled "SCIOCOMAND" ioctl.
Restructured so low level drivers can easily request retries.
Added preliminary fixed SCSI devices (should be revisited before 2.1)
Added "ssc" device that can have its' (HBA, ID, LUN) set via ioctl.
1995-01-08 13:38:38 +00:00
David Greenman
f7c9e2441f Restored Herb's current copyright. The one in the file appeared to have
been run through indent and additionally doesn't contain clauses 3 and 4
that were apparantly added sometime after the driver was put into FreeBSD.
1995-01-08 10:47:23 +00:00
Andreas Schulz
ddfdef1374 Submitted by: Steve Gerakines
Delete some parts of the ultra 24F tests for the controller, so that
it now accepts a broader range.
1995-01-07 23:23:40 +00:00
Jordan K. Hubbard
f677a957bf Fix indenting of gsc entry, reserve 48 for cyclades. 1995-01-07 23:20:08 +00:00
Andreas Schulz
a9700525d8 Work around a compiler bug in gcc2.6.3 in handling (long long) variables and
shifting. Also correct the original code as Garrett noticed it in mail.
Leave the mishandled code in to use it later if future versions of gcc
are correct. The code was part of the calibrate_cyclecounter routine to
get the speed of the pentium chip.
1995-01-07 17:26:35 +00:00
Jordan K. Hubbard
2f6df2645b Gunther Schadow <gusw@fub46.zedat.fu-berlin.de>'s
driver for the Genius GS-4500 hand scanner.
Submitted by:	gusw@fub46.zedat.fu-berlin.de
1995-01-07 14:52:08 +00:00
David Greenman
d8e5ab9731 Got rid of unused nclist declaration. 1995-01-07 06:08:15 +00:00
Joerg Wunsch
dc5df763e4 Peter's work to work around one of the most annoying bugs in the
floppy driver (or in the hardware?).  It turned out to be caused by
spurious interrupts, right after an FDC reset.

Also major cleanup in the low-level structure, there are now functions
performing error-checks for the FDC I/O.

Submitted by:	(mostly) Peter Dufault <dufault@FreeBSD.org>
1995-01-06 15:20:00 +00:00
Bruce Evans
123bcf5fda Fix scaling for TIOCM[SG]DTRWAIT to work when hz != 100.
Bruce
1995-01-06 15:03:41 +00:00
Bruce Evans
4c5e4b09a7 Fix error handling for new TIOCSDRAINWAIT ioctl. 1995-01-06 14:56:42 +00:00
Stefan Eßer
623976474c Submitted by: Wolfgang Stanglmeier <wolf@dentaro.GUN.de>
Reviewed by: <wollman>
First hooks and defines for the ISDN driver,
that soon will see the light ...
1995-01-05 19:51:51 +00:00
Justin T. Gibbs
ff2e6a8b6f Add VNINACT flag. LFS has a habbit of skipping the ufs_inactive procedure.
It used to do this by setting a global <Yuck>.  Now we set th VNINACT
flag in the vnode to force a skip of ufs_inactive.

Sorry for missing this file in my last commit folks.

Index: vnode.h
===================================================================
RCS file: /usr/cvs/src/sys/sys/vnode.h,v
retrieving revision 1.14
diff -c -r1.14 vnode.h
*** 1.14	1994/11/14 13:51:53
--- vnode.h	1994/12/03 01:06:27
***************
*** 116,121 ****
--- 116,122 ----
  #define	VALIASED	0x0800	/* vnode has an alias */
  #define	VDIROP		0x1000	/* LFS: vnode is involved in a directory op */
  #define VVMIO		0x2000	/* VMIO flag */
+ #define VNINACT		0x4000  /* LFS: skip ufs_inactive() in lfs_vunref */

  /*
   * Vnode attributes.  A field value of VNOVAL represents a field whose value
1995-01-05 16:22:17 +00:00
David Greenman
010cf3b9e3 Make sure that the object being collapsed doesn't go away on us...by
gaining extra references to it.

Submitted by:	John Dyson
Obtained from:
1995-01-05 04:30:40 +00:00
David Greenman
f81dd52383 Initialize map start hint to vm_map_find()...not doing so will cause it
to fail if the random thing on the stack happens to be too large.

Submitted by:	David Jones <dej@qpoint.torfree.net>
1995-01-05 03:59:38 +00:00
Andrey A. Chernov
33c38bd574 Fight against hanging modems: add timeout to ttywait.
Reviewed by: Bruce
1995-01-05 00:01:07 +00:00
Justin T. Gibbs
61acca9f2f Change panic messges that are ffs_blah functions to say they are ffs not
ufs functions.
1995-01-04 23:48:04 +00:00
Justin T. Gibbs
1a451e33ef LFS stability patches. There is still a problem with directory update
ordering that can prove fatal during large batches of deletes, but this
is much better than it was.  I probably won't be putting much more time
into this until Seltzer releases her new version of LFS which has
fragment support.  This should be availible just before USENIX.
1995-01-04 23:46:34 +00:00
David Greenman
53cdbe34f1 Made a few cosmetic changes, and fixed a bug in handling the case of the
remote DMA not completing correctly (the packet was still queued for xmit).
1995-01-04 21:10:17 +00:00
David Greenman
b5ba45f6f3 Corrected the list of volatile registers for outsb, outsw, and outsl.
This bug caused my ethernet driver to break, among other things no doubt.
1995-01-04 20:42:25 +00:00
Paul Traina
e228c81074 Fix the GUS driver so that it will initialize properly from power-on...
no more DOS boots to start it up.

Simply did a localized nuke of the OUTB macro in this file.  This is
a kludge, since it seems it may actually be necessary in other GUS
files (tbd).

Thanks to: Amancio Hasty & Ken Hornstein
1995-01-04 20:07:27 +00:00
Bruce Evans
f73f117cf0 Don't allow negative console numbers for the VT_WAITACTIVE ioctl. Use the
correct console number for the VT_WAITACTIVE ioctl.  Invalid console numbers
caused waiting on an invalid pointer.

Use bcopyw() instead of move_up() and move_down().  bcopyw() handles
overlapped copies and should be faster.  Actually use bcopy().  bcopy()
is slightly faster if video memory is 16-bit and about twice as fast if
it is 32-bit.  bcopy() is said to fail on someGA's, but syscons already
depends on it working for other accesses to video memory.
1995-01-03 16:56:05 +00:00
Jordan K. Hubbard
c4cab716b9 From Gene Stark:
If nd->swap_nblks is zero in nfs_mountroot(), then the system
       comes up without initializing swapdev_vp to an actual vnode pointer.
       The swap pager assumes a non-NULL value for swapdev_vp.

       The fix is to try initializing local swap if no NFS swap space
       is specified.
1995-01-03 07:44:10 +00:00
Bruce Evans
37e52b59cc Use sufficient parentheses in macros.
Remove bogus input operands for fnsave(), fnstcw() and fnstsw().

Change all fwait's to fnop's.  This might help avoid hardware bugs.
Wait after fninit with an fnop.  This should be safer now.

Fix some spelling and formatting errors.

Use natural sizes for control and status words (u_short, promotes to int).

Don't clobber the SWI_CLOCK_MASK bits in npx0_imask when using IRQ13.

Set the devconf state correctly (always busy, if configured).  Improve
code for npx_registerdev() a little (gcc can't keep id->id_unit in a
register for some reason).  Don't register a nonexistent npx device.

Print a useful message in npxattach() again (delete references to errors
and not the whole message).  Don't print "387 emulator" if there is no
emulator in the kernel.

Use %p for pointers in error messages.

Don't clobber the FPU state when there is an FPU exception.  Just clear
the exception flags (after saving the flags as before).  This allows
debuggers and SIGFPE handlers to look at the full exception state.
SIGFPE handlers should normally return via longjmp(), which restores a
good FPU state (as before).  Returning from a SIGFPE handler may leave
the FPU in the wrong state (as before).

Clear the busy latch _after_ clearing the exception flags so that there
is less chance of getting a bogus h/w interrupt for a control operation.

Clear the saved exception status word when the next FPU instruction is
excuted so that it doesn't stick around until the next exception.

Clear the busy latch after fnsave() in npxsave() in case it was set when
npxsave() was called.
1995-01-03 04:00:06 +00:00
Bruce Evans
d5ebbddc5e Replace sv_ex_tw by padding (it is no longer used; the tag word in sv_env
is valid).

Expand comment about bogus padding for emulators.

Update prototpe for npxinit().
1995-01-03 03:57:46 +00:00
Andreas Schulz
832f3afd12 Submitted by: Ben Jackson
just a missing newline in a kernel printf added.
1995-01-02 22:56:00 +00:00
Bruce Evans
85ae1cf1dc Remove `MKDEP= -p'. Now I know why lkm compiled so fast after headers
are changed.
1995-01-01 21:11:55 +00:00
David Greenman
84bcd8659a Possible fix for NE2000 problems...the remote byte count wasn't word
aligned even though the transfers are 16bit.
1995-01-01 06:38:14 +00:00
David Greenman
c38c2f7f9b Get rid of unused variable. 1995-01-01 03:54:34 +00:00
Andreas Schulz
d3287e7c11 Change the errors in the XT_KEYBOARD patch. red in the face. Thanks Bruce. 1994-12-31 20:34:19 +00:00
Justin T. Gibbs
53a69701bc Handle both channels of Twin channeled devices. Respect the configuration
values for syncronous negotiation.  The 284x series adaptors can now be
supported without the Bios being enabled.  If you disable the Bios on the
274x series adaptors, all configuration parameters revert to the default
since there is no way to retrieve them.
1994-12-31 19:31:56 +00:00
Justin T. Gibbs
58e4304e3d Handle the aic7770 driver's dependancies correctly.
YOU MUST REBUILD CONFIG.
1994-12-31 19:27:29 +00:00
Justin T. Gibbs
8ff1d93efb Update the sequencer code to handle both channels of Twin channel devices.
You can now sling 14 devices off of a 274xT.  In the process of adding
twin channel support, I removed all evident restrictions on supporting
Wide channeled devices, but I do not have a Wide controller to test them
on.

aic7770_seq.h, the pre-compiled header, is no longer needed since config
handles this dependancy.
1994-12-31 19:26:54 +00:00
Jordan K. Hubbard
00ed485bc4 Really provide support for 3COM cards now.
Submitted by:	wpaul
1994-12-31 17:16:50 +00:00
Jordan K. Hubbard
95da7f140e Another part of Bill Paul's fix to swapgeneric to properly use the -a flag.
Submitted by:	wpaul
1994-12-31 17:15:16 +00:00
Jordan K. Hubbard
dd4a485085 From Bill Paul:
- /sys/i386/i386/swapgeneric.c is just plain broke. But fear not, for I
  have unbroken it. One thing that swapgeneric.c does is walk through the
  list of configured devices searching for a boot device. The only easy
  way to accomplish this in 2.0 is to use Garret Wollman's kern_devconf
  stuff. *BUT*, the head of the kern_devconf linked list (dc_list) is declared
  static in /sys/kern/kern_devconf.c. This means that swapgeneric.c can't
  see it at link time. I had to remove the 'static' keyword to get around
  this little problem. I hope this doesn't break anything anywhere.

  *Furthermore,* there's a small matter of making the call to setconf()
  in swapgeneric.c disappear when 'config kernel swap generic' isn't used.
  You could change /sbin/config to create a dummy setconf() function in
  swapkernel.c, but that seems messy somehow. (It's also someting of an
  'it isn't broken, why are you fixing it' situation.) My solution was to
  do what the NetBSD people did and put an #ifdef GENERIC around the call
  to setconf(). If your kernel is called GENERIC or you define 'options
  GENERIC,' then you can use 'config kernel swap generic' and it'll work.

  That aside, the upshot is that: a) swapgeneric.c actually works, and
  and b) the -a boot flag now works as well. If you boot with -a, as in
  "Boot: wd(0,a)/kernel -a" you will be presented with a 'root device?'
  prompt after the autoconfig phase, at which point you can specify what
  device you want mounted as root. Regrettably, you can't specify an NFS
  filesystem. Yet. Three files are affected: /sys/i386/i386/swapgeneric.c,
  /sys/i386/i386/autoconf.c and /sys/kern/kern_devconf.c.

Submitted by:	wpaul
1994-12-31 17:11:59 +00:00
Jordan K. Hubbard
63c5d14d1b Miscellaneous changes from Bill Paul:
- /sys/i386/isa/if_ed.c doesn't quite know how to deal with SMC EtherEZ
  ethernet cards. The EtherEZ looks just like the Elite Ultra, except it
  has only 8K of shared memory. The only way to have it properly detected
  is to zero and test a few bytes of memory just about the first 8K region.
  If it clears properly, it's an Elite Ultra, otherwise it's an EtherEZ.

  I've also got an EtherEZ patch for netboot (Makefile, ether.c and ether.h).

- /sys/i386/isa/syscons.c wraps at the next to the last column rather than
  the last column, like it should. You don't really notice this unless you
  use certain programs that write all the way out to, say, the 80th column,
  like VMSmail. Along with a one-line fix for this are some changes to
  implement a non-blinking cursor. Put 'options "NOBLINK_CURSOR"' in your
  config file and give it a try. :)

Submitted by:	wpaul
1994-12-31 17:09:58 +00:00
Jordan K. Hubbard
86dccd9394 From: Luigi Rizzo <luigi@labinfo.iet.unipi.it>
Would you please commit this two-line patch to /sys/i386/isa/b004.c
(the Transputer driver) so that it at least compiles under 2.x
Haven't tried if the driver is working properly, but a kernel with
compiled-in driver has been running for two days now with no apparent
problems.
Submitted by:	luigi
1994-12-31 12:32:59 +00:00
Andrey A. Chernov
16e544e7a1 Fix problem when attached process detached
Submitted by: Gary Jennejohn
1994-12-31 12:26:50 +00:00
Andrey A. Chernov
1af33e5a7a Changes to allow keypad 5 produce \E[E like SCO/ANSI term does 1994-12-31 11:38:39 +00:00
Jordan K. Hubbard
10bfdf2bae From: "Serge V.Vakulenko" <vak@gw.cronyx.msk.su>
This is new version of Seagate ST01/02, Future Domain TMC-885, TMC-950
SCSI driver for FreeBSD.  I started from the 2.0R version and mostly
rewrote it.  New features are:

1) New probe algorithm.  Old driver read the BIOS region of the adapter
   memory and find the copyright string.  The problem was in the BIOS itself:
   it conflicted with IDE disks.  The solution was to unplug it and
   make the probe algorithm to work without it.
2) Proper timeout handling in numerous places where the driver
   polls waiting for some event.
3) Assembler flagments added in critical places, mostly for data transfer
   to of from the target.  It was possible to make it faster,
   but at the price of decreasing reliability.
4) Target-dependent delays when waiting for REQ deassert event.
   Some devices seem to be slower (CD-ROMS, some tape drives),
   and some seem to be too fast (disks).  The driver tests the REQ
   deassert timeout for each target and then uses it for polling.
5) Device flags added for SCSI parity control and sense request
   priority control.
6) Generic cleanup, after which the driver became much more readable
   (at least by me:).
7) Target data parity error logging is limited to avoid log file overflow.
8) Manual page added.

Submitted by:	serge
1994-12-31 05:31:48 +00:00
Bruce Evans
43469be308 icu.s:
Move definition of `stat_imask' to clock.c.

clock.c:
Rename `rtcmask' to `stat_imask' and export it.  Rename `clkmask' to
`clk_imask' for consistency.

Only calculate TIMER_DIV(hz) once.

Merge debugging and "garbage" code to produce debugging code and format the
output better.

Make writertc() static inline and use it everywhere.  Now all accesses to
the clock registers go through rtcin() and writertc().

Move rtc initialization to cpu_initclocks().

Merge enablertclock() with cpu_initclocks() and remove enablertclock().
The extra entry point was just a leftover from 1.1.5.
1994-12-30 12:43:35 +00:00
Bruce Evans
06ea59471c spl.h:
Don't calculate imask for splstatclock() every call.

Remove declaration of nonexistent variable `high_imask'.

Sort declarations of imasks and spl's.
1994-12-30 12:42:15 +00:00
Bruce Evans
62f603b64d Change an 0 to WHOLE_DISK_SLICE. 1994-12-30 12:19:11 +00:00
Bruce Evans
2336b9d7d7 Print "(null)" instead of "<null>" for NULL string args for consistency
with the libc and ddb printf's.

Print "(fmt null)\n" for NULL formats.
1994-12-30 12:17:42 +00:00
Bruce Evans
cac3ff6bba Avoid compiler warnings for overflow in ~(__LDPGSZ - 1). 1994-12-30 08:06:19 +00:00
Bruce Evans
1365ed99fb Clean up previous commits (format for 80 columns...). 1994-12-30 08:02:16 +00:00
Bruce Evans
7010a8abed Save 16 bytes of data by not explicitly initializing to 0. 1994-12-30 07:48:07 +00:00
David Greenman
73c2ab4621 Moved declaration of ifnet pointer out of the header file and into the
.c file where it belongs. Bezeroed some uninitialized malloc data.
1994-12-30 06:46:21 +00:00
David Greenman
5197faa894 Fix specification of octal constants.
Submitted by:	John Beukema <jbeukema@HK.Super.NET>
1994-12-30 05:38:14 +00:00
David Greenman
8f5067ba28 Make printf() a bit more robust and allow NULL strings (print them as
"<null>"). It bad to have diagnostic printfs cause panics when they are
trying to tell you about another problem.
1994-12-28 06:28:34 +00:00
David Greenman
be6a1d148e Fixed multiple bugs that cause null pointers to be followed or FREEed data
to be accessed if a process blocks when it is being run down.
1994-12-28 06:15:08 +00:00
Andrey A. Chernov
c74995075b Move INSTALL?=install line duplicated into each .mk to sys.mk
instead
1994-12-28 03:51:03 +00:00
Bruce Evans
59f08b8ba7 Use the same current time throughout ffs_update().
Update some macro names in comments.

Don't use MNT_WAIT for something not related to mounting.
1994-12-27 14:44:42 +00:00
Bruce Evans
e4bebee03e Use the same current time throughout ITIMES(). I want all current
timestamps for an atomic operation such as rename() on a local file
system to be identical.

Uniformize yet another idempotency ifdef.  The comment nesting was
bogus.
1994-12-27 13:59:14 +00:00
Bruce Evans
0c4fe20e8a Keep track of the devconf state. 1994-12-27 13:07:07 +00:00
Bruce Evans
a176f73d19 Fix panic for `cp -p' by root to an msdos file system. Improve handling
of attributes so that `cp -p' to an msdos file system can succeed under
favourable circumstances (no uid or gid changes and no nonzero flags
except SF_ARCHIVED).

msdosfs_vnops.c:
The in-core inode flags were confused with the on-disk inode flags, so
chflags() clobbered the lock flag and caused a panic.

denode.h, msdosfs_denode.c, msdosfs_vnops.c:
Support the msdosfs archive attibute (ATTR_ARCHIVE) by mapping it to
the complement of the SF_ARCHIVED flag and setting the ATTR_ARCHIVE
bit when a file's modification time is set (but not when a file's
permissions are set; this is the standard wrong DOS behaviour).

denode.h, msdosfs_denode.c:
Remove the DE_UPDAT() macro.  It was only used once, and the corresponding
macro in ufs has already been removed.

denode.h:
Don't change the timestamp for directories in DE_TIMES() (be consistent
with deupdat()).

msdosfs_vnops.c:
Handle chown() better: return EPERM instead of EINVAL if there are
insufficient permissions; otherwise, allow null changes.
1994-12-27 12:37:36 +00:00
David Greenman
2048dd682c Fixed two security holes in the pcmmap() function.
Submitted by:	Bruce Evans
1994-12-27 08:43:06 +00:00
Andreas Schulz
3c8f8257cd Add a patch that someone on the net has used to run on his IBM Thinkpad.
Sorry, lost the name and mail of the original author. The whole patch
is ifdefed, so it should not disturb someone else in the moment.
1994-12-26 17:50:18 +00:00
Andreas Schulz
2d85986466 Add examples for the sony and the panasonic drivers. 1994-12-26 17:33:52 +00:00
Andreas Schulz
8c2f8d0653 Correct the devices.i386 for the major numbers. 8 was already used now
by the lkm driver, so put scd and pcd to the numbers they have now
in i386/conf.c.
Add the pcd.c file for the panasonic driver in files.i386.
1994-12-26 01:06:41 +00:00
Andreas Schulz
60ecea7924 Add entries for the sony and panasonic drives and drivers. 1994-12-25 23:25:54 +00:00
Andrey A. Chernov
beae072bc9 Merge several probe diagnostics into one.
Adjust for newer model for all non-LUxxx too.
FLAGS status register names cleanup
1994-12-24 13:24:02 +00:00
Bruce Evans
82189b149e Fix comments on dk_wds and dk_wpms to match code. Improve comment on
dk_time.
1994-12-24 10:11:18 +00:00
Bruce Evans
9834a1b204 Fix the "wds" count stat. 1994-12-24 09:48:32 +00:00
Bruce Evans
11fa0751bc Fix the "wd" count stat. The seek and xfer stats are still very bogus
for wd (they both count the number of sectors).  The wpms stat is still
moderately bogus for all drivers.  Even the count stat could be handled
better (partial blocks should be counted as full blocks; should errors
and retries be counted?).
1994-12-24 09:43:12 +00:00
Bruce Evans
026c9b2ce6 Really fix the "byte" count stat. `wd's are actually blocks of 32 16-bit
words in dkstat-speak.  `ms's are seconds in dkstat-speak...
1994-12-24 09:19:00 +00:00
Bruce Evans
13d7c724ca Obtained from: 1.1.5
Fix single-stepping of emulated FPU instructions.

Don't panic if an FPU instruction is attempted but there is no FPU
and no FPU emulator is configured.
1994-12-24 07:22:58 +00:00
David Greenman
55c4727190 Revert last patch - it's wrong. 1994-12-23 23:03:32 +00:00
David Greenman
be7b04cd7e Fixed byte count stat.
Submitted by:	John Dyson
1994-12-23 22:44:55 +00:00
Nate Williams
1603af0d3b Warning and weak reference macros which are used to generate link-time
messages.

Obtained from: NetBSD
1994-12-23 22:38:54 +00:00
Nate Williams
d27e9722db Document some of the fields used by the new shlib code.
Obtained from: NetBSD
1994-12-23 22:32:48 +00:00
David Greenman
45cbbb298d Do vm_page_rename more conservatively in rcollapse and qcollapse, and
change list walk so that it doesn't get stuck in an infinite loop.

Submitted by:	 John Dyson
1994-12-23 05:00:19 +00:00
David Greenman
7609ab12e4 Initialize b_vnbuf.le_next before returning a new buffer in getpbuf and
trypbuf. Move a couple of splbio's to be slightly less conservative.
1994-12-23 04:56:51 +00:00
David Greenman
602d2b481a Protect vnode buffer chain manipulation with splbio to prevent list
corruption..
1994-12-23 04:52:55 +00:00
David Greenman
edd5a4af47 Restore my changes in rev 1.11 that Garrett killed in his commit. 1994-12-22 23:42:25 +00:00
Garrett Wollman
b2774d00ad Make arp_rtrequest() static since nobody needs to referene it any more. 1994-12-22 22:00:30 +00:00
Garrett Wollman
dd2e410221 Move ARP interface initialization into if_ether.c:arp_ifinit(). 1994-12-22 21:56:22 +00:00
Stefan Eßer
9a3c07de07 Add support for -v option passed to boot loader (bootverbose).
Reviewed by:
Submitted by:
Obtained from:
1994-12-22 21:20:39 +00:00
Stefan Eßer
68d2fa1f21 Added SCSI_DATA_OUT to flags passed to the device driver in sd_dump()
since device drivers may decide not to accept a data out phase without
this flag present.
Submitted by:	Wolfgang Stanglmeier <wolf@dentaro.GUN.de>
1994-12-22 21:18:48 +00:00
Garrett Wollman
59d8d13f60 Added `ds', a black-hole network interface. 1994-12-22 21:00:05 +00:00
David Greenman
511cdd1649 Removed bogus semicolon at end of a #define line. 1994-12-22 07:20:03 +00:00
David Greenman
6f7bc393bb Fixed a benign off by one error. 1994-12-22 05:18:12 +00:00
Bruce Evans
222d875bec Print `slicename' and not a bogus pointer in diskerr() 1994-12-22 04:42:31 +00:00
Garrett Wollman
074c4a4e2e Add generic part of generic multiple-physical-interface support (the
successor of IFF_ALTPHYS).
1994-12-21 22:57:05 +00:00
Garrett Wollman
b30cbe4a6b Add a #define for if_rawoutput(), which isn't used now, but eventually will
be.
1994-12-21 18:03:41 +00:00
Garrett Wollman
f811ab0233 Avoid a serious race by blocking netisrs while walking the route tree.
(IWBRNI we could just block IP netisrs...)
1994-12-21 17:25:52 +00:00
Garrett Wollman
3c896bda76 Correct sysctl info so that net.inet.ip.rtexpire is actually accessible. 1994-12-21 17:23:59 +00:00
Andrey A. Chernov
f8c32a9711 Remove get status from probe, confuse LU002
Add check stbytes[1] != stbytes[2] for presence real Mitsumi
controller
1994-12-21 15:17:59 +00:00
Andrey A. Chernov
0bda4f122a stbytes miss by one for new model 1994-12-21 15:12:41 +00:00
David Greenman
6185408336 Don't ever clear B_BUSY on a pbuf (or any other flag for that matter).
This appears to be the cause of some buffer confusion that leads to
a panic during heavy paging.

Submitted by:	 John Dyson
1994-12-19 00:02:56 +00:00
Joerg Wunsch
e72e8750d3 Insert a hook to initialize the serial port at the beginning of
boot().  This is needed so the "serialboot" stuff can share this file,
too.

Everything is #ifdef'ed so it evaluates to nothing when actually been
built in the "biosboot" directory.
1994-12-18 20:30:10 +00:00
Joerg Wunsch
2c681fc102 This became a frequently requested item now.
The files in this directory are modified version of "biosboot".  The
only difference is in that they perform their I/O via a serial port,
so their preferrable usage is to form bootblocks for systems where the
kernel happens to have an "options COMCONSOLE".  Most of the code is
actually shared with "biosboot", and make will not (and should not)
descend into this directory by default.  It is in the responsibility
of the user to build these bootblocks instead of the original ones.
1994-12-18 20:12:10 +00:00
Joerg Wunsch
0246a9d813 Initialize syscons also in cases where it ain't the system's console
(i.e., there's a comconsole).
1994-12-18 19:45:53 +00:00
Joerg Wunsch
91c38cb885 Ooops, i forgot one NVT > 0 in a previous commit. Now pcvt will also
work as the system's console.
1994-12-18 19:42:41 +00:00
Joerg Wunsch
00e82d39d7 Move the code providing the equivalent of ICRNL for console input from
the device driver(s) to cons.c.
1994-12-18 19:35:59 +00:00
Bruce Evans
bf67b544a2 Pass the slice number of the boot device to the kernel in the previously
unused bitfields for the adaptor and the controller.  It should go in
the bitfield for the partition but that would not be backwards compatible.
1994-12-18 19:14:19 +00:00
Poul-Henning Kamp
d9a2713bb5 Make sure we allocate at least 8 scbus if we allocate any at all. 1994-12-18 18:48:39 +00:00
Poul-Henning Kamp
40a97f50d4 > ../../i386/isa/if_le.c still has a mountain of warnings.. Anyone keen
> to fix?

Sure. How's this? -

Reviewed by:	phk
Submitted by:	Mark Murray <mark@grondar.za>
1994-12-18 18:42:03 +00:00
David Greenman
2b4e0927f6 Unbogify the size being passed to bzero when clearing struct softc. 1994-12-18 14:40:26 +00:00
David Greenman
94101b5208 Move page_unhold's in pmap_object_init_pt down one line to gard against
a potential race condition.
1994-12-18 14:16:22 +00:00
David Greenman
66ecebed58 Fixed multiple bogons with the map entry handling. 1994-12-18 13:58:41 +00:00
Guido van Rooij
f81fcd410f Fix bug in sysctl_string so that when a string has a length that is to
short, it gets filled uop to its length. This matches the getdomainname
and gethostname manual pages.
(getbootfile also uses this function and I think it should have the same
behaviour)

This also fixes a bug with keyinit where the seed was not saved in
/etc/skeykeys. So S/Key should be fully functional again.

Reviewed by:
Submitted by:
Obtained from:
1994-12-18 13:56:50 +00:00
Jordan K. Hubbard
76fe9b2793 Add a 'vn' to GENERIC 1994-12-18 12:01:40 +00:00
David Greenman
053bbc788c Fixed bug where statically allocated map entries might be freed to the
malloc pool...causing a panic.

Submitted by:	John Dyson
1994-12-18 10:28:40 +00:00
David Greenman
dd0bd066e0 Change swapping policy to be a bit more aggressive about finding a
candidate for swapout. Increased default RSS limit to a minimum of 2MB.
1994-12-18 06:31:31 +00:00
David Greenman
931bde7f72 Check for PG_FAKE too in pmap_object_init_pt. 1994-12-18 03:36:27 +00:00
David Greenman
d9b026fcbd Add two more page table pages to keep 64MB machines happy. 1994-12-18 03:11:46 +00:00
David Greenman
8a8d90d871 Fix possible off by one in b_save allocation size. 1994-12-18 03:05:49 +00:00
Jordan K. Hubbard
fc0a941a94 Bump LINT's symtab space. 1994-12-17 08:37:22 +00:00
Jordan K. Hubbard
faa84d7f2c Fix a few nasties in the conversion. 1994-12-17 08:36:50 +00:00
Jordan K. Hubbard
cdf25f3740 Add Fred Cawthorne's GPIB driver.
Submitted by:	fcawth@delphi.umd.edu
1994-12-17 08:07:03 +00:00
David Greenman
763424fcf0 Changed splimp to splhigh to close a potential hole that could lead
to corrupted malloc data structures caused by frees occurring at other
than splimp.
1994-12-17 04:04:42 +00:00
Bruce Evans
8c664261f7 Uncomment DISKSLICE; it should work now (for drivers that support it). 1994-12-16 16:58:08 +00:00
Bruce Evans
9a0f1b5bd5 Continue implementing disk slices and labels for the vn driver. Everything
is supposed to work except "media removal" (shutting down the vn driver)
while some partitions are open.

Fix some errnos: return ENOTTY, not ENXIO for unknown ioctls; return
ENODEV, not ENXIO for the unsupported dump operation.
1994-12-16 16:50:15 +00:00
Bruce Evans
fb72042b5c Duplicate readdisklabel() and writedisklabel() and remove DOS stuff from
from the copies to create correct_readdisklabel() and
correct_writedisklabel().

Print the slice number in diskerr() if it is nonzero.
1994-12-16 16:31:23 +00:00
Bruce Evans
9af6068321 Separate go-away code from dsinit() to produce dsgone().
Call correct_writedisklabel() instead of writedisklabel() (temporary
compatibility hack).

Remove kludge for allowing a label on slice 0.
1994-12-16 16:14:39 +00:00
Bruce Evans
d92b67e7f0 Add prototype for dsgone. Remove prototype for nonexistent dswlabel. 1994-12-16 16:05:11 +00:00
Poul-Henning Kamp
d71494d323 Don't push/pop the return-val register. (DUH!) 1994-12-16 07:31:47 +00:00
Poul-Henning Kamp
d90b957315 Grumble, try to remember what assembler syntax is used :-/
Increase polling frequency a fraction to just above 1 Hz.
1994-12-16 07:09:22 +00:00
Poul-Henning Kamp
2decd76771 Be much more carefull about what we leave in unused registers when we call
the APM-bios.
This stabilizes a couple of APM bioses quite a bit.
They all make the mistake of going into 16-bit mode, without clearing the
top half of the 32bit registers.
Later they do a
|	movw %si,$0x7331
|	movw %ax,0x6(%si)
or something along those lines and crash and burn, because their segment
is already relocated, so adding 0xf0171ce9 to the base of it is bad news.

At least SystemSoft is guilty of this bummer.
1994-12-16 06:16:30 +00:00
Poul-Henning Kamp
784cf072d8 Remove sd1-sd3 & st1, now that we can autoallocate them.
fix the vn driver in LINT.  It autoallocates too.

Reviewed by:	phk
Submitted by:	rgrimes
1994-12-16 06:04:16 +00:00
Poul-Henning Kamp
a31f80dc67 Allocate all scsi-devices on the fly, not just CDs.
Reviewed by:	phk
Submitted by:	rgrimes
1994-12-16 06:03:28 +00:00
Paul Traina
75a128283a Rudimentry bsd-audio emulator for VAT support using FreeBSD's voxware package.
Voxware hackers should feel free to work on this some more,  it's by no means
a perfect product.

(I have patches for GUS users running 2.x to run their GUS with bidirectional
 DMA (talk while listening.  All other soundboards must use push-to-talk until
 people learn to build real hardware).

Submitted by:	amancio hasty & paul traina
1994-12-16 04:59:18 +00:00
Poul-Henning Kamp
22529dad0f An inconsequential #ifdef Bruce forgot. 1994-12-16 01:13:09 +00:00
David Greenman
8d6e8ede62 Protect kmem_map modifications with splhigh() to work around a problem with
the map being locked at interrupt time.
1994-12-15 22:47:11 +00:00
Garrett Wollman
9ee39fc64d Fix PR 59: don't allow TCP connections withmulticast addresses at either
end.
1994-12-15 20:39:34 +00:00
Søren Schmidt
45d04cf11f Fix bug around VOP_READDIR, now takes 6 parameters not 4.
The MAXBSIZE has changed, so use DEFAULT_PAGE_SIZE instead.
1994-12-14 22:03:48 +00:00
Garrett Wollman
5be2baf843 Make rtq_reallyold user-configurable via sysctl. 1994-12-14 19:06:37 +00:00
Garrett Wollman
23f6ed01aa Actually enable NTP kernel PLL. (Oops!)
Noticed by Pete Carah.
1994-12-14 17:57:47 +00:00
Garrett Wollman
2c17fe9339 Call rtalloc_ign() so that protocol cloning will not occur at the IP layer. 1994-12-13 23:08:12 +00:00
Garrett Wollman
652082e6ac Implemented rtalloc_ign(). 1994-12-13 23:07:03 +00:00
Garrett Wollman
93587737d7 Update calls to rtalloc1(). 1994-12-13 22:33:05 +00:00
Garrett Wollman
31246bc25f Update calls to rtalloc1(). Also merge rt_prflags with rt_flags. 1994-12-13 22:32:45 +00:00
Garrett Wollman
2c4615f0aa Update calls to rtalloc1() to match. 1994-12-13 22:32:17 +00:00