Commit Graph

2265 Commits

Author SHA1 Message Date
amurai
f3484727e8 This commit was generated by cvs2svn to compensate for changes in r6053,
which included commits to RCS files with non-trunk default branches.
1995-01-31 06:15:49 +00:00
amurai
74b5a342fd 1995-01-31 06:15:49 +00:00
phk
bb768f1b38 $Id: -> $Id$ 1995-01-31 04:33:41 +00:00
sos
005d97125e Reviewed by:
Submitted by:
Obtained from:
1995-01-30 21:36:32 +00:00
ache
e4eb694f82 Describe default MAXCONS value: 12 1995-01-30 14:40:06 +00:00
ugen
bc961f8cc6 Add ipfw to /lkm Makefile..uups.. 1995-01-30 14:21:46 +00:00
jkh
c4cad71414 Add LN_FLAGS to all the places it makes sense. 1995-01-30 07:22:02 +00:00
ache
a552f67c14 Use double speed read for FX001D, now this drive
becomes two times faster than in old variant.
Get rid of false "media changed" errors during large disk transfers
1995-01-30 06:44:40 +00:00
bde
6d392fd2e2 Increase the reserved clist space for the raw queue from 512 to TTYHOG.
This might help avoid tty buffer overflows on loaded systems.
1995-01-30 06:16:59 +00:00
phk
a9cb5cddf7 Warning: vn doesn't work just now. I havn't found out why. This commit
just removes a couple of unused functions.
1995-01-30 05:31:04 +00:00
phk
b3ad30810f Fix the include path to scdreg.h. 1995-01-30 05:29:03 +00:00
phk
096bb8f57d The new kernel for boot.flp. In general:
BOOTFLP = GENERIC - networking
1995-01-30 03:23:57 +00:00
phk
e98885ccd1 Pass '-m' to symorder. Kernels without INET will fail otherwise. 1995-01-29 23:42:11 +00:00
jkh
42dba533c0 Second version of this driver.
Submitted by:	Mikael Hybsch <micke@dynas.se>
1995-01-29 22:51:41 +00:00
bde
055f7c204d Fix longstanding benign type mismatch. 1995-01-29 06:37:13 +00:00
bde
b461ea0173 Define MAXARCS correctly. It has nothing to do with HISTCOUNTER, and
overflowed when I enlarged HISTCOUNTER to u_int.
1995-01-29 06:23:34 +00:00
bde
63b01ede83 Don't waste 1264K for each MB of unused text.
Remove misplaced comment.
1995-01-29 03:03:23 +00:00
bde
be086a9068 Fix disassembly of `bt[crs] $Ib,E'. 1995-01-29 02:38:15 +00:00
ats
dc666a09a5 Kill the comment in a comment to shut up the compiler. 1995-01-29 01:27:58 +00:00
ats
98786bc351 Correct a name of one structure member in the sigaltstack structure.
Now it matches the man page and also the only other commercial implementation
i have found so far ( Solaris 2.x).
Changed the name from ss_base to ss_sp.
1995-01-29 01:19:25 +00:00
jmz
27434d033f Add parentheses around macros! 1995-01-29 01:00:14 +00:00
sos
46c57c8d60 Third round in syscons update.
Display update method changed, now allways write in memory buffer,
  then periodically update physical display.
Speed improvements (now > 5 times faster than the old syscons).
History now circular buffer, with changeable size.
History scroll by up/down line, up/down page, home and end.
Backtab proberly implemented.
Now space for 96 function keys, 63 allocated standard, default now
  SCO/SYSV compat again as in the old days.
New keyboard definition files ~share/syscons/keymaps/*
Misc fixes for old "hacks" that broke SCO/SYSV compat.
More that I forgot before writing this...
1995-01-28 22:18:05 +00:00
jmz
e3426906a3 Do not recompute TIMER0's maximum count, since it is in timer0_max_count.
Use a simpler formula to convert usecs to ticks.
Output is in microseconds instead of ticks, so that values do not depend
on the timer frequency.
1995-01-28 21:54:37 +00:00
jkh
6131b9dcd0 Nuke out a printf that otherwise spews crap at probe() time. A no-no. 1995-01-28 06:40:23 +00:00
jkh
2265e6720f Look for scdreg.h in the right place. Whoops. 1995-01-28 05:32:53 +00:00
jkh
13346a6269 Add soundblaster CD to generic kernel. Hope this doesn't run us out
of space!
1995-01-28 05:01:43 +00:00
jkh
76f0435d24 Tweak the location of the scd driver. 1995-01-28 04:20:55 +00:00
jkh
ab3ce1e2ac Add the soundblaster CDROM driver back in, but this time under the GPL
since the Linux driver was used as the principle reference.
Submitted by:	Mikael Hybsch <micke@dynas.se>
1995-01-28 04:18:42 +00:00
dg
745d0dc6a0 Get rid of extra []'s and otherwise fix-up boot prompt. Reordered
boot flags processing to be alpha-beta.
1995-01-28 03:51:39 +00:00
dg
fc5dd24ded Completed the fix for attempting to page out pages via the device_pager.
Submitted by:	John Dyson
1995-01-28 02:02:25 +00:00
jkh
35d5f9af69 Back out my previous change and disable the floppy tape controller again
by default.  It's hosing up my test machine's floppy pretty good.
1995-01-27 20:03:07 +00:00
gibbs
630d398130 Set the current transfer parameters directly after a mesg reject for either
Wide or Sync negotiation attempts as we do in all other phases of negotiation.
1995-01-27 17:37:05 +00:00
phk
35898da3bf New and far better NCR5380/NCR53400 scsi-driver.
Handles at least Trantor T130 and ProAudioSpectrum adapters.
The pas driver has consequently been removed.
This driver can be configured without without interrupts.

Manpage to follow when PAS16 has been edited in.

Reviewed by:	phk
Submitted by:	Serge Vakulenko, <vak@cronyx.ru>
1995-01-27 07:49:19 +00:00
dg
dd5cf89ec4 Fix from Doug Rabson for a panic related to not initializing the kernel's
PTD.

Submitted by:	 John Dyson
1995-01-26 21:06:40 +00:00
wollman
043393d8b8 Correct long-standing error in the RSVP hooks (would initialize but never
return success).
1995-01-26 18:59:02 +00:00
ache
ced54f5094 MAXCONS option described 1995-01-26 11:00:12 +00:00
ache
c2854d4bef DOn't use hardcode values for L_FN & L_SCR 1995-01-26 10:32:55 +00:00
ugen
ba39702411 ip_fwdef.c was missing some assignments , and this
caused that bug by which firewall code was not working
if configured into kernel and worked only as lkm.
Now this must be fixed...Sorry guys..
1995-01-26 10:26:15 +00:00
ache
0470b1fa93 Use NUM_FKEYS instead of hardcoded 65 for fkey_tab size 1995-01-26 10:16:51 +00:00
ache
77c2643674 Increase NUM_FKEYS to 65 1995-01-26 10:13:38 +00:00
ache
f86c41a2b3 Get rid of overloaded Keypad 5, now F(65) 1995-01-26 10:08:39 +00:00
ache
48e21ad3b4 Get rid of overloaded Back tab, now F(64) 1995-01-26 10:02:21 +00:00
ache
359e584fe4 Rewrite fkey_tab to produce unique sequences for all fkeys
Get rid of overloaded fkeys
1995-01-26 09:58:37 +00:00
ache
2367fb125c Implement Delete key properly, needed by ncurses 1995-01-26 08:43:24 +00:00
ache
30c878fd5e Remove FAT_CURSOR, it is already non-existent during several
last syscons versions
1995-01-26 05:04:37 +00:00
ache
09aff05f41 o Restore removed hardware cursor support and make it _default_
case, software cursor now optional case. Driver must provide
  raw things (what hardware do for us, exactly) as default case,
  all driver features must be _optional_. Modern VGAs have internal
  configuration utilities to set cursor shape/blinking which stored
  into cards ROM, and syscons nuke out such features completely
  by forcing software cursor. Moreover, software cursor is hard
  to distinguish on standouted (or near standouted) fields and
  tends to disappearse from the screen.
  Set "flags 0x4" to enable software cursor now.

o Cleanup screen savers.

o Don't draw cursor if saver or blinker is active.

o Duplicated code moved to functons.

o Add more checks for blinker in progress, character lost otherwise
  when blinker restore old contents.

o Reduce blinking counter to 3, too slow in old variant.

o Fix timeout code in scrn_timer(), old variant can reenter iself,
  if action takes too long time.

o Disable visual bell for scroll lock mode, saved screen
  becomes overwritted otherwise.
1995-01-26 04:56:25 +00:00
dg
66f518c22e Kill previous commit as it isn't necessary. 1995-01-26 03:56:20 +00:00
dg
fb718a94a7 Fix problem with freeing busy pages reported by Nick Sayer.
Submitted by:	 John Dyson
1995-01-26 03:34:31 +00:00
dg
396b2fd60b Comment out pmap_prefault for the time being (perhaps until after 2.1).
The object_init_pt routine is still enabled and used, however, and this
is where most of the 'pre-faulting' performance improvement comes from.
1995-01-26 01:45:02 +00:00
dg
9d436795b6 Use the VM_PAGE_BITS_ALL in a place it can be used.
Comment out call to pmap_prefault() until stability problems can be
thoroghly analyzed.
1995-01-26 01:40:04 +00:00
dg
1e642dc8a4 Make sure that the pages being 'pre-faulted' are currently on a queue. 1995-01-26 00:55:03 +00:00
dg
3b410c524f Be a bit less fast and loose about setting non-cacheablity of pages. 1995-01-25 22:06:23 +00:00
bde
802677cea8 Load the kernel symbol table in the boot loader and not at compile time.
(Boot with the -D flag if you want symbols.)

Make it easier to extend `struct bootinfo' without losing either forwards
or backwards compatibility.

ddb_aout.c:
Get the symbol table from wherever the loader put it.
Nuke db_symtab[SYMTAB_SPACE].

boot.c:
Enable loading of symbols.  Align them on a page boundary.  Add printfs
about the symbol table sizes.
Pass the memory sizes to the kernel.
Fix initialization of `unit' (it got moved out of the loop).
Fix adding the bss size (it got moved inside an ifdef).
Initialize serial port when RB_SERIAL is toggled on.
Fix comments.
Clean up formatting of recently added code.

io.c:
Clean up formatting of recently added code.

netboot/main.c, machdep.c, wd.c:
Change names of bootinfo fields.

LINT:
Nuke SYMTAB_SPACE.
Fix comment about DODUMP.

Makefile.i386:
Nuke use of dbsym.
Exclude gcc symbols from kernel unless compiling with -g.
Remove unused macro.
Fix comments and formatting.

genassym.c:
Generate defines for some new bootinfo fields.  Change names of old ones.

locore.s:
Copy only the valid part of the `struct bootinfo' passed by the loader.
Reserve space for symbol table, if any.

machdep.c:
Check the memory sizes passed by the loader, if any.  Don't use them yet.

bootinfo.h:
Add a size field so that we can resolve some mismatches between the loader
bootinfo and the kernel boot info.  The version number is not so good for
this because of historical botches and because it's harder to maintain.
Add memory size and symbol table fields.  Change the names of everything.

Hacks to save a few bytes:

asm.S, boot.c, boot2.S:
Replace `ouraddr' by `(BOOTSEG << 4)'.

boot.c:
Don't statically initialize `loadflags' to 0.  Disable the "REDUNDANT"
code that skips the BIOS variables.  Eliminate `total'.  Combine some
more printfs.

boot.h, disk.c, io.c, table.c:
Move all statically initialzed data to table.c.

io.c:
Don't put the A20 gate bits in a variable.
1995-01-25 21:40:47 +00:00
jmz
babb177fec Add entry for the joystick driver 1995-01-25 21:04:15 +00:00
jmz
44cc799e54 Add entry for joystick 1995-01-25 20:57:32 +00:00
jmz
c931c201ef ioctls for the joystick driver 1995-01-25 20:41:06 +00:00
dg
c00595ba56 Don't attempt to clean device_pager backed objects at terminate time.
There is similar bogusness in the pageout daemon that will be fixed soon.
This fixes a panic pointed out to me by Bruce Evans that occurs when
/dev/mem is used to map managed memory.
1995-01-25 20:36:29 +00:00
jmz
cfe92acba3 Add: device joy0 at isa? port "IO_GAME" (joystick) 1995-01-25 20:35:14 +00:00
jmz
84f1d5b409 Changed address of the game controller to 0x201 (was 0x200)
joy.c: joystick driver
1995-01-25 20:11:51 +00:00
bde
72785518eb Add flag RB_BOOTINFO' that tells if the struct bootinfo' passed by the
boot has a size field.
1995-01-25 20:05:03 +00:00
paul
d9f2fb9522 Fix probe so it now correctly identifies all the different chips
in the PCnet/Lance family.

Fix attach so 32 bit cards don't call isa_dmacascade.

Add a workaround for 32 bit chips which incorrectly truncate the
ring buffer size.

Fix a bug where CRC errors were reported as framming errors.

Change copyright to a BSD style one.
1995-01-25 03:50:33 +00:00
dg
7f1b929f72 Added Andres Vega Garcia's email address.
Submitted by:	Andres Vega Garcia
1995-01-24 20:53:45 +00:00
paul
ffce7eccf3 is to lnc changes 1995-01-24 20:38:39 +00:00
ache
5c963d4a7f Fix stdarg.h for GNU C using builtin_next_arg 1995-01-24 16:22:52 +00:00
dufault
fd80285ef9 1. Reject obviously broken CDB command lengths
2. Use "uprintf" (instead of printf) to log the "tape not ready" message
1995-01-24 12:04:56 +00:00
dg
a9e08ab1e3 Added ability to detect sequential faults and DTRT. (swap_pager.c)
Added hook for pmap_prefault() and use symbolic constant for new third
argument to vm_page_alloc() (vm_fault.c, various)
Changed the way that upages and page tables are held. (vm_glue.c)
Fixed architectural flaw in allocating pages at interrupt time that was
introduced with the merged cache changes. (vm_page.c, various)
Adjusted some algorithms to acheive better paging performance and to
accomodate the fix for the architectural flaw mentioned above. (vm_pageout.c)
Fixed pbuf handling problem, changed policy on handling read-behind page.
(vnode_pager.c)

Submitted by:	John Dyson
1995-01-24 10:14:09 +00:00
dg
cba22c2c7d Removed some unused/obsolete code.
Submitted by:	John Dyson
1995-01-24 10:02:00 +00:00
dg
0eec224596 Fixed a variety of deadlock and panic bugs, removed the bypass code, and
implemented the ability to limit bufferspace by memory consumed. (vfs_bio.c)
Fixed recently introduced bugs that caused extra I/O to happen in some
cases. (vfs_cluster.c)

Submitted by:	John Dyson
1995-01-24 10:00:46 +00:00
dg
b45fe32f10 Moved various pmap 'bit' test/set functions back into real functions; gcc
generates better code at the expense of more of it.

Submitted by:	John Dyson
1995-01-24 09:57:39 +00:00
dg
daf280a076 Changed buffer allocation policy (machdep.c)
Moved various pmap 'bit' test/set functions back into real functions; gcc
generates better code at the expense of more of it. (pmap.c)
Fixed a deadlock problem with pv entry allocations (pmap.c)
Added a new, optional function 'pmap_prefault' that does clustered page
table preloading (pmap.c)
Changed the way that page tables are held onto (trap.c).

Submitted by:	John Dyson
1995-01-24 09:56:33 +00:00
dg
14991e48cf Extended the previous change to cover the non-options case, too. 1995-01-24 08:03:22 +00:00
bde
2ad610963e Declare `struct mbuf' with the correct scope to avoid lots of warnings
for compiling routed...  Previously a kernel function pointer that is
bogusly visible to applications was incompletely declared to hide the
problem.
1995-01-24 04:47:33 +00:00
jkh
375b4a802c Y.A.B.M (Yet Another Bogus Makefile) 1995-01-24 00:41:50 +00:00
dg
4923029fb7 Decrease MCLBYTES from 4k back to 2k. It isn't likely that we'll be doing
page flipping anytime soon and 4k just wastes memory. Performance via the
looback interface will decrease slightly by this change. Idealy, we need
buffers that can have variable sizes, but this requires a rewrite of far
too much code at the moment.
1995-01-23 19:21:49 +00:00
dg
e870016a53 Much better fix/support for the 83c795 based cards (the new SMC EtherEZ)
by steve@simon.chi.il.us (Steven E. Piette). Minor changes by me.
1995-01-23 19:06:08 +00:00
dg
dfe0c08e86 Kill redundant declarations of d_open_t and d_close_t. 1995-01-23 18:46:13 +00:00
phk
8fdfed6a17 if_ze was not updated when the arp_ifinit stuff was done. now it is. 1995-01-23 18:02:32 +00:00
dg
b9115b6cb8 Applied fix from Andreas Schulz with a different comment by me. Fixes a
bug where TCP connections are closed prematurely.

Submitted by:	Andreas Schulz
1995-01-23 17:58:27 +00:00
dg
dab339cb4e Added back the missing last few bytes of the file. 1995-01-23 17:53:21 +00:00
phk
daed5e7c4d Moved the typedefs of d_<foo>_t into sys/sys/conf.h and used them in
the definition of struct [cb]devsw.  Guess Bruce never got around to
complete this (?)

Poul-Henning
1995-01-23 02:52:28 +00:00
phk
a7a3a2fb54 Nobody seems to need "mem_no" anymore, so I zapped it. 1995-01-23 02:36:22 +00:00
phk
b884f0d791 Fixed $Id$ 1995-01-23 02:31:53 +00:00
wollman
07d192a9fb Change caching strategy somewhat:
1) Don't clone routes to multicast destinations; there is nothing useful
   to be gained in this case.
2) Reduce default expiration timer to one hour.  Busy sites will still
   likely want to reduce this, but for ordinary users this is a reasonable
   value to use.
1995-01-23 02:02:50 +00:00
wollman
8420966a4f route.c: keep track of where cloned routes come from, and make sure to
delete them when the ``parent'' goes away

route.h: add glue to track this to rtentry structure.  WARNING WILL ROBINSON!
This will be yet another incompatible change in your route-using binaries.
I apologize, but this was the only way to do it.  I took this opportunity
to increase the size of the metrics to what I believe will be the final
length for 2.1, so that when the T/TCP stuff is done, this won't happen
again.
1995-01-23 02:00:35 +00:00
jkh
ec2e8d597c Add support for Olof Johansson's WD7000 driver.
Submitted by:   Olof Johansson <offe@ludd.luth.se>
1995-01-23 00:25:44 +00:00
jkh
a504b09724 Add support for Olof Johansson's WD7000 driver.
Submitted by:	Olof Johansson <offe@ludd.luth.se>
Obtained from:
1995-01-23 00:25:03 +00:00
gibbs
8e92a2f20c Initialize SIMODE1, SCSIID, and SXFRCTL1 in ahc_init instead of at each
reconnection/selection with a target.
1995-01-22 00:48:39 +00:00
gibbs
144f061bf6 Change the string returned in the aic7870 motherboard probe case. Change
#define to a more appropriate name.
1995-01-22 00:47:50 +00:00
gibbs
d8e71b2594 aic7xxx.c:
Print out the length of the compiled sequencer program.

aic7xxx.seq:
	More optimizations.  Replace generic bcopy routine with bcopy_3
and bcopy_4 (ie unroll the loops) since these are the only two cases used.
Initialize SIMODE1 and SXFRCTL1 from the kernel in ahc_init instead of
at each selection/reselection since this is expensive and only needs to
be done once.  Condense function returns into previous instruction if possible.
Reorder some sections to kill superflous jumps.  These optimizations kill
the ~150k/s penalty adding support for Twin/Wide cards was costing since
the last place in the commaon path of execution where we had to do ugly,
convoluted testing for the type of card in the sequencer has gone away.
Next stop tagged queuing and target mode.
1995-01-22 00:46:53 +00:00
bde
717b884d1e Don't use mi_switch() to terminate cpu_exit(). Calling it just happened to
work (mi_switch() counted the last timeslice again but this didn't affect
the exiting process' rusage because the rusage has already been finalized).

Remove stale comment.
1995-01-21 15:34:03 +00:00
bde
fefb40a4f2 Remove unused definitions of vm statistics counters. Most of the
counting is now done in C.  There are still about 100 unused
definitions for other things.
1995-01-21 15:22:28 +00:00
bde
c00ebedb70 Don't count context switches here, they are already counted in mi_switch(). 1995-01-21 15:20:23 +00:00
bde
04e6e915b1 Don't count the parent's previous timeslice in the child's resource usage
(it was counted twice).

Set the start time more accurately.
1995-01-21 15:08:57 +00:00
bde
a3fa4eb69e #Include <sys/types.h> so that <sys/resource.h> can be #included without
explicitly #including <sys/types.h>.  Some gnu software (?gdb) depends on
this and broke when I fixed <stdio.h> to not include <sys/types.h>.

Bruce
1995-01-21 14:58:25 +00:00
bde
bd41d459e4 Keep track of open devices better to avoid closing the console device when
the physical device is closed.  Previously only the reverse case was handled.
Abuse the cdevsw interface instead of the vfs interface to do this.

Remove unnecessary #includes.
1995-01-21 14:12:15 +00:00
ache
3da24c0fb2 Restore original fix from ohki, not check m for NULL it is already done
in the code above.
Submitted by: ohki@gssm.otsuka.tsukuba.ac.jp
1995-01-21 06:32:26 +00:00
ache
0edc03212c Change if (m->valid == 0) to if (m && m->valid == 0) 1995-01-20 23:30:42 +00:00
wpaul
85ccf361d4 Submitted by: ohki@gssm.otsuka.tsukuba.ac.jp
When using cp to copy a file under the following circumstanes:

- original file in on an NFS filesystem
- destination file is on the same NFS filesystem
- the file is less than 8Mbytes in size
- the file is larger than 65536 bytes in size

the cp process can get frozen in device-wait and never wake up (cp uses
mmap() in this case).
A small change to allocbuf() fixes this.
1995-01-20 20:11:31 +00:00
sos
20ccaa1777 Second round in syscons update:
Support for pseudo graphic mouse cursor (not complete yet)
Some cheap speed fixes.
More cleanups.
Call ourselves scxxxx finally.
1995-01-20 08:35:32 +00:00
wpaul
fe760b5318 Removed hardcoded definition for RB_SERIAL that I left in my accident
(had it there for testing purposes). RB_SERIAL should be found in
<sys/reboot.h>.
1995-01-20 07:52:42 +00:00
wpaul
1875d75ad1 Submitted by: Bill Paul (wpaul@ctr.columbia.edu)
Obtained from:
bios boot block changed to allow booting from both the attached graphics
display and from a serial port. (A specially compiled serial boot block
is no longer necessary.) The boot block should detect the presence or
absence of a keyboard: if there is no keyboard, COM1 is turned into the
console. This simulates the behavior of the Sun boot PROMs. Unplug your
keyboard, attach a terminal to COM1 and you should be ready to go. :)
1995-01-20 07:48:27 +00:00
wpaul
7a6a5253ca Submitted by: Bill Paul (wpaul@ctr.columbia.edu)
Obtained from:
sio.c and sioreg.c changed to allow autodetecting the RB_SERIAL flag
passed by the boot blocks so that the kernel can switch to 'serial
console' mode automagically. 'options COMCONSOLE' can still be specified
to force the kernel to always use the serial port as a console.
CONUNIT and CONADDR can also be specified in the kernel config file
if the user wants to shift the console to a different port.
1995-01-20 07:34:18 +00:00
wpaul
2f878e8fcd Submitted by: Bill Paul (wpaul@ctr.columbia.edu)
Obtained from:
Added a new flag (RB_SERIAL) which is passed by the boot block to tell
the kernel that it should use a serial port as a console. (The kernel
can still be forced to boot in serial console mode if 'options COMCONSOLE'
is used.)
1995-01-20 07:28:47 +00:00
ats
8f8e6b75d8 Submitted by: Bruce Evans
Put in the much shorter and cleaner version for the calibrate_cycle_counter
for the Pentium that Bruce suggested. Tested here on my Pentium  and
it works okay.
1995-01-19 22:05:27 +00:00
ats
9366080bf5 Add the missing forward declaration of chopen. Reported in the
mailinglists some time ago.
1995-01-19 21:02:54 +00:00
dufault
05d6c07611 Remove dup biodone and no more SCSIUSER option. 1995-01-19 12:41:36 +00:00
dufault
1918e6dc4c Print out exactly what we think the board is, and for the latest
rev Adaptec boards enable data transfer length detection instead
of assuming requested amount of data is transferred.
1995-01-19 12:33:10 +00:00
jkh
3cce6d4ff2 Enable floppy-tape controller by default again. Flags no longer has any
special meaning.
1995-01-17 17:32:33 +00:00
bde
6b90797270 The %eflags checking introduced in the previous commit was too zealous.
sigreturn() sometimes failed for ordinary returns from signal handlers.
Failures of ordinary returns "can't happen" and are badly handled.
"Temporary" fix: allow users to corrupt PSL_RF.  This is fairly
harmless.  A correct fix would involve saving the old %eflags (and
perhaps the old segment registers) where the user can't get at them.
1995-01-17 01:15:12 +00:00
joerg
21c4534499 Roll in my changes to make the cd9660 code understand the older
(original "High Sierra") CD format.  I've already implemented this for
1.1.5.1 (and posted to -hackers), but didn't get any response to it.
Perhaps i'm the only one who has such an old CD lying around...

Everything is done empirically, but i had three of them around (from
different vendors), so there's a high probability that i've got it
right. :)
1995-01-16 17:03:29 +00:00
gibbs
cd232c506d Add $Ids. Use DMA for downloading SCBs to the sequencer. Implement SDTR,
WDTR, and message reject handlers so they don't need to exist in the
sequencer.  All three of these cases are not on the critical path, so it
makes little sense to use up precious sequencer ram for them.
1995-01-16 16:33:47 +00:00
gibbs
6617f0bfe4 Add $Id. Recognize motherboard aic7870 based controllers. 1995-01-16 16:31:57 +00:00
gibbs
d55c379829 Add $Id 1995-01-16 16:31:34 +00:00
gibbs
1ce8bad19c At $Ids to all files. Have the sequencer use DMA to tranfer its SCB
(SCSI control block) instead of having the host PIO it down.  Also
reimplement WDTR and SDTR optimization to remove code in the sequencer
and place the responsibility of knowing when to initiate SDTR or WDTR
on the kernel driver.  This vastly shortens the sequencer program yet
yeilds the same performance.
1995-01-16 16:31:21 +00:00
dg
5a3650b978 Attempt to close a hole using splhigh/splx. There still appears to be a
serious one in the same area that I don't have time to fix.
1995-01-15 09:35:58 +00:00
dg
3a5df73fbd Fixed some page table reference count problems; these changes may not be
complete, but should be closer to correct than before.
1995-01-15 09:06:23 +00:00
dg
d2294d38b1 Moved some splx's down a few lines in vm_page_insert and vm_page_remove
to make the locking a bit more clear - this change is currently a NOP
as the calls to those routines are already at splhigh().
1995-01-15 07:31:34 +00:00
wollman
9fe40fb5dd Some fixes to device configuration, now that I've had a chance to do it
properly from the beginning:

	1) The `kern_devconf' struct should be a part of the driver's
	   `softc' structure (now it is).
	2) The `description' should say what the device actually is,
	   rather than just giving a model number (now it does).
	3) The device should be registered even if the probe fails, so
	   that it can be reconfigured later.
	4) For netifs, the device state should follow the IFF_UP flag.

Other network interfaces should follow this example.  (Please?)  Eventually
there should be a rundown routine doing the equivalent of setting IFF_UP
off, and perhaps more if warranted.
1995-01-15 00:18:17 +00:00
bde
f864467045 Fix security holes in sigreturn(), ptrace() and procfs. sigreturn()
attempted to check for insecure and fatal eflags and segment
selectors, but missed many cases and got the IOPL check back to
front.  The other syscalls didn't check at all.

sys_process.c, machdep.c:
Only allow PT_WRITE_U to write to the registers (ordinary and FP).

psl.h, locore.s, machdep.c:
Eliminate PSL_MBZ, PSL_MBO and PSL_USERCLR.  We are not supposed
to assume anything about the reserved bits.  Use PSL_USERCHANGE
and PSL_KERNEL instead.  Rename PSL_USERSET to PSL_USER.

exception.s:
Define a private label for use by doreti when returning to user
mode fails.

machdep.c:
In syscalls, allow changing only the eflags that can be changed on
486's in user mode (no longer attempt to allow benign IOPL changes;
allow changing the nasty PSL_NT; don't allow changing the i586
bits).

Don't attempt to check all the cases involving invalid selectors
and %eip's.  Just check for privilege violations and let the invalid
things cause a trap.

procfs_machdep.c:
Call the ptrace register functions to do all the work for reading
and writing ordinary registers and for single stepping.

trap.c:
Ignore traps caused by PSL_NT being set.  Previously, users could
cause a fatal trap in user mode by setting PSL_NT and executing an
iret, and a fatal trap in kernel mode by setting PSL_NT and making
a syscall.  PSL_NT was cleared too late and not in enough modes to
fix the problem.

Make all traps in user mode (except T_NMI) nonfatal.

Recover from traps caused by attempting to load invalid user
registers in doreti by restarting the traps so that they appear to
occur in user mode.
---

Fix bogons that I noticed while fixing the above:

psl.h:
Fix some comments.

Uniformize idempotency ifdef.

exception.s, machdep.c:
Remove rsvd[0-14].  rsvd0 hasn't been reserved since the 486 came
out.  Replace rsvd0 by `align'.  rsvd[0-11] used wrong (magic
non-unique) trap numbers.  Replace rsvd[1-14] by rsvd.

locore.s:
Enable alignment check flag on 486's and 586's.

machdep.c:
Use a better type for kstack[].

Use TFREGP() to find the registers.

Reformat ptrace functions from SEF to something closer to KNF.

procfs_machdep.c:
The wrong pointer to the registers got fixed as a side effect.

Implement reading and writing of FP registers.

/proc/*/*regs now work (only) for processes that are in memory.

Clean up comments.

trap.c, trap.h:
Remove unused trap types.
1995-01-14 13:20:26 +00:00
bde
ddcce018ef Define some public labels for use by trap(). 1995-01-14 11:00:27 +00:00
jkh
f8ac3c83a6 Remove bogus scd0 driver - I should have looked at LINT first, anyway. 1995-01-14 10:48:56 +00:00
bde
56e94090e5 Enable define of CR0_AM to prepare for implementing alignment checking.
Uniformize idempotency ifdef.
1995-01-14 10:44:55 +00:00
bde
4296366254 Declare a real `struct fpreg' to prepare for implementing reading and
writing of FP regs for procfs.

Uniformize idempotency ifdef.
1995-01-14 10:41:41 +00:00
bde
352cf37066 Remove reference to impossible trap type T_KDBTRAP. We don't support
watchpoints.

Uniformize idempotency ifdef.
1995-01-14 10:34:52 +00:00
bde
615fc1e0d9 Eliminate T_KDBTRAP, which will soon go away. It was only used for an
unreachable case label in kdb_trap().

Use the correct case labels in kdb_trap() so that normal ddb entry doesn't
print a message.

Change all printf's to db_printf's.  Now you can put a breakpoint at printf,
and ddb entry messages don't spam the syslog output.

Cosmetic:

Use ISPL() instead of magic numbers.

Don't compile the unused function kdb_kbd_trap().

Improve some asms.

Print the arg to Debugger().
1995-01-14 10:24:48 +00:00
jkh
f89d36730c Change DISTRIBUTION names. Also make bsd.doc.mk go to doc distribution,
not bin.  Hmmm.
1995-01-14 07:51:10 +00:00
dg
218afd7a8e Add missing object_lock/unlock. 1995-01-14 04:58:53 +00:00
jkh
4d936778eb Put UCONSOLE back - I was wrong, it's still used in one last place.
Submitted by:	ollivier
1995-01-14 02:39:22 +00:00
sos
1b1bc5cd66 Oops, forgot one change when DDB is defined. 1995-01-13 17:13:13 +00:00
dg
ada267ff5f Protect a qcollapse call with an object lock before calling. The locks
need to be moved into the qcollapse and rcollapse routines, but I don't
have time at the moment to make all the required changes...this will do
for now.
1995-01-13 13:30:24 +00:00
ache
a7dfaa4e8e Use (n - 1) in ESC [ xxx d and ESC [ xxx ` 1995-01-13 03:19:22 +00:00
gibbs
5baa9edf60 Point dependancy to i386/scsi 1995-01-13 02:29:14 +00:00
gibbs
7f7c56c327 Point include to i386/scsi 1995-01-13 02:27:08 +00:00
gibbs
7052076816 Generic support for the entire aic7x70 line of adaptors. No one else
came up with a directory place ment more me, so now we have i386/scsi.
1995-01-13 02:24:31 +00:00
gibbs
00d4d48c05 Add in aic7770.c (EISA/VL Adaptors) and aic7870.c (PCI adaptor) dependancies
for the ahc driver.
1995-01-13 02:23:27 +00:00
gibbs
d2a4cce552 Full support for 294x and Wide devices. Fixed month old bug in the SCSI
sense retrieval code that messed up CDROM devices.  This code will also
responde correctly to SDTR and WDTR messages from devices that start a
negotiation sequence.
1995-01-13 02:22:11 +00:00
ache
ce3a630a34 Back out cursor wrap (restore original thing)
Submitted by: Bill Paul
1995-01-12 20:14:28 +00:00
joerg
5302315b17 Argl!, finally found this bummer. The code testing for a write-
protected drive at open() time has been *totally bogus*!  The guy who
submitted it didn't understand all the implications of calling
set_motor(), and the `who' who included the patch into the tree did it
blindly...  Pleeeeze, don't commit code to this driver unless you are
really going to understand what it does!  This one caused me to pull
out even more hears, and those who know me do know that i ain't got
too many o'them. :-)
1995-01-12 19:20:28 +00:00
jkh
5f3297e594 1. Remove UCONSOLE. This appears to be well and truly dead (unless it's
hiding someplace in /sys I can't find).
2. Remove NCONS.  Soren's latest changes make it a no-op.
1995-01-12 15:37:16 +00:00
se
da85675e3f Submitted by: Mikael Hybsch <micke@dynas.se>
Add support for NCR 53c815 PCI SCSI chip.
1995-01-12 14:01:13 +00:00
ugen
1ec2adab6f Checking new lkm structure.. 1995-01-12 13:57:51 +00:00
ugen
dd3cca2bda Actual firewall change.
1) Firewall is not subdivided on forwarding / blocking chains
   anymore.Actually only one chain left-it was the blocking one.
2) LKM support.ip_fwdef.c is function pointers definition and
goes into kernel along with all INET stuff.
1995-01-12 13:06:32 +00:00
ugen
fb7c07cbe7 here ip_fw.c lived once..correct me if i am wrong but
i think it shopuld be in conf/files
1995-01-12 13:05:00 +00:00
ugen
ebe613d13f Firewall files & accounting added here.
ip_fwdef.c is support for ipfw lkm module
and should be compoiled always with 'options inet'.
1995-01-12 13:04:23 +00:00
ugen
5f4f867140 Firewall can be used as lkm module.To use it
firewall should *NOT* be compiled into kernel.
Then it can  be loaded.This is misc module but i'v
got no problemms with it,so shouldn't you i suppose..
BTW this is very stupid to have one module in CVS
for ALL lkm's...
1995-01-12 13:03:02 +00:00
sos
44bbcce705 First round in syscons update. Several new features has been added:
No kernel config options anymore besides keyboard language layout.
Virtual consoles are now dynamically allocated, no NCONS anymore.
Software cursor blinking/nonblinking.
Visual bell for laptops (don't beep at meetings :-).
Cursor/bell default type setable via config "flags" instead of as defines.
Cursor/bell type setable via ioctl's.
New video modes 80x30 80x60 for some laptops, and those with multisync monitors.
Scroll-lock history (length currently fixed at 100 lines).
Lots of cleanups, some only commented out for now (will goaway soon).
Support for new features in vidcontrol/kbdcontrol.
Updated manpages.
1995-01-12 11:47:05 +00:00
dg
596e11c208 Fixed mbuf lossage when level != IPPROTO_IP. Problem reported by Robert
Dobbs, hint from Charles Hannum, fix by me.
1995-01-12 10:53:25 +00:00
dg
3043f5e140 Increase maxfiles to NPROC*2. This makes the per-process open file limit
highly bogus, however, and this needs to be fixed.
1995-01-12 03:38:12 +00:00
dg
e307946179 Improve my previous change to use the same tests as are used in qcollapse. 1995-01-11 20:19:20 +00:00
dg
dd94bc5ce1 Fixed a panic that Garrett reported to me...the OBJ_INTERNAL flag wasn't
being cleared in some cases for vnode backed objects; we now do this in
vnode_pager_alloc proper to guarantee it. Also be more careful in the
rcollapse code about messing with busy/bmapped pages.
1995-01-11 20:00:10 +00:00