Commit Graph

1816 Commits

Author SHA1 Message Date
jkh
8514c97735 >Originator: Gene Stark
>Description:

       If a process attempts to open a floppy tape device when the
device has been configured in the kernel, but did not probe and attach
on bootup, then a panic will occur.

[Review:  The current ft situation is a crock, and this only bandaids
 an earlier wound inflicted by making the attach conditional.  This urgently
 requires a review]
Submitted by:	gene
1994-12-04 03:10:09 +00:00
ache
117476758a don't allow ctty to be set to ctty - infinite kernel recursion
Obtained from: 1.1.5.1
1994-12-04 01:46:13 +00:00
ache
653660fd3e Call d_stop in ttyflush not only for WRITE but for READ too
Obtained from: 1.1.5.1
1994-12-04 01:01:45 +00:00
phk
981f60f527 added a missing '\n' in both files. 1994-12-03 22:52:57 +00:00
smace
e0d9f53e10 Make CHILD_MAX and OPEN_MAX a tunable parameter. 1994-12-03 17:36:37 +00:00
bde
4047e040e2 Disable CLKF_BASEPRI() again. I forgot to edit an unwanted change out of
the diffs for the previous commit.
1994-12-03 10:18:24 +00:00
bde
40161a97d9 i386/exception.s,
Keep track of interrupt nesting level.  It is normally 0
	for syscalls and traps, but is fudged to 1 for their exit
	processing in case they metamorphose into an interrupt
	handler.

i386/genassym.c;
	Remove support for the obsolete pcb_iml and pcb_cmap2.

	Add support for pcb_inl.

i386/swtch.s:
	Fudge the interrupt nesting level across context switches and in
	the idle loop so that the work for preemptive context switches
	gets counted as interrupt time, the work for voluntary context
	switches gets counted mostly as system time (the part when
	curproc == 0 gets counted as interrupt time), and only truly idle
	time gets counted as idle time.

	Remove obsolete support (commented out and otherwise) for pcb_iml.

	Load curpcb just before curproc instead of just after so that
	curpcb is always valid if curproc is.  A few more changes like
	this may fix tracing through context switches.

	Remove obsolete function swtch_to_inactive().

include/cpu.h:
	Use the new interrupt nesting level variable to implement a
	non-fake CLF_INTR() so that accounting for the interrupt state
	works.

	You can use top, iostat or (best) an up to date systat to see
	interrupt overheads.  I see the expected huge interrupt overheads
	for ISA devices (on a 486DX/33, about 55% for an IDE drive
	transferring 1250K/sec and the same for a WD8013EBT network card
	transferring 1100K/sec).  The huge interrupt overheads for serial
	devices are unfortunately normally invisible.

include/pcb.h:
	Remove the obsolete pcb_iml and pcb_cmap2.  Replace them by
	padding to preserve binary compatibility.

	Use part of the new padding for pcb_inl.

isa/icu.s:
isa/vector.s:
	Keep track of interrupt nesting level.
1994-12-03 10:03:19 +00:00
wollman
124986ecac Add Cronyx/Sigma cdevsw[] entry. 1994-12-03 00:18:15 +00:00
wollman
8be5d8932d Add Cronyx/Sigma files and config information; delete outdated config files. 1994-12-03 00:17:55 +00:00
wollman
88e86eff7e Add generic sync PPP file. 1994-12-03 00:17:19 +00:00
wollman
fa9f248392 This commit was generated by cvs2svn to compensate for changes in r4910,
which included commits to RCS files with non-trunk default branches.
1994-12-02 23:23:01 +00:00
wollman
1e6f21ed41 Cronyx/Sigma sync/async serial driver with PPP support
from Serge Vakulenko
1994-12-02 23:23:01 +00:00
wollman
7677602dc2 Delete old, confusing comment. 1994-12-02 23:10:32 +00:00
ats
845a3c7267 Add one forgotten u_quad_t typecast in dosetrlimit. 1994-12-02 23:00:40 +00:00
wollman
f41e70adc3 Add a check to make sure that we don't fiddle with the NFS routing tables
as well (bleah!).  Also, increase the interval to the real-life value and
eliminate debugging printfs.  This will be standard once tested by others.
1994-12-02 03:32:24 +00:00
ache
04188ac3ca Change wakeup to endtsleep, because wakeup don't produce timeout
state, cause infinite wakeups loop in ttywait
1994-12-01 23:48:09 +00:00
wollman
098465c845 Add latest version of ``advanced route metric management'' :-)
As before, this is currently conditionalized on options IN_RMX until
I'm sure it's working.
1994-12-01 23:19:48 +00:00
ats
7a0fcd058d The values for setrlimit in the data size and stack size case are
used as an address value. Then all comparisons should be done unsigned
and not signed. Fix it with a typecast of u_quad_t.
Error can be demonstrated with the current bash in port, do a
ulimit -s unlimited and the machine hangs. bash delivers through
an internal error a large negative value for the stacksize, the
comparison saw this smaller than MAXSSIZ and then tried to expand
the stack to this size.
1994-12-01 20:20:21 +00:00
dg
14e675c028 Changed the TIOCSTAT ioctl to a no argument type so that tcsh and friends
don't have to pass in the address of a bogus variable just to make ioctl
happy.
1994-11-30 15:02:43 +00:00
dg
74d1e69716 Fix bug I introduced that broke BPF support. Caused by a byte order problem
in an if () expression. Problem fixed by removing the test for ETHERTYPE_*
before passing packet to higher layers.
1994-11-30 12:08:23 +00:00
jkh
be31fe948f Reverse the meaning of previous change.
Now floppy tape support is *disabled* unless you specifically
request otherwise.  Poul wanted it this way, and I guess I'm not going to argue
though it may seem counter-intuitive.  We can always change it back, later.
1994-11-30 12:04:28 +00:00
ache
ccc6ee52e9 Restore mv check, cause panic without it
Submitted by: Ade Barkah
1994-11-29 23:39:15 +00:00
gibbs
b6942ab081 Put the sequencer into FASTMODE during initialization. I can now
get up to 8m/sec write performance out of a pd2100 with this driver.
1994-11-29 23:06:54 +00:00
gibbs
9f58d54fdf Merge in latest Linux sequencer code release with my changes. This should
make the sequencer code fully compatible with the aic7870 (ie 294x adaptors).
I've also added to my local mods putting the sequencer into "FASTMODE" clock.
This gives upwards of 2M/sec write preformance improvement in some scenarios.
There haven't been any reports of this causing problems, and I have been
reaping the benifits of it for more than a week now.

This also includes a new version of the pre-generated file <ugh>

Obtained from: John Aycock (aycock@cpsc.ucalgary.ca) and myself
1994-11-29 23:04:23 +00:00
jkh
b360c63549 Experimental change to floppy driver to NOT probe the floppy tape if
flags & 0x1.  Somebody should build a kernel with this and see if
the floppy-tape damaged people can turn it off properly with userconfig.
I can't reproduce the original problem here.
1994-11-29 15:46:20 +00:00
se
83418166e2 Really deactivated the code that puts scsi stats into dk0.
This should have been disabled for some time, but I had screwed up ...
This made spurious values appear for fd0 in systat, when there was
NCR SCSI activity.
1994-11-28 23:18:46 +00:00
ugen
f625842f61 Added: ICMP reply,TCP SYN check,logging.. 1994-11-28 12:35:14 +00:00
ats
9beb2cb7db Include "scbus.h" in scsiconfig.c to get the number NSCBUS from the
config file.
1994-11-27 23:30:48 +00:00
ats
455c397412 Comment out an illegal define (E_CLNL_???). 1994-11-27 20:58:30 +00:00
bde
ec4e74f243 Fix previous change: don't attempt to reserve cblocks if the tty is null. 1994-11-27 15:29:57 +00:00
ats
3618ae5282 Expand again the SYMTAB_SPACE for LINT. 1994-11-27 14:59:54 +00:00
dg
cf8ec251cc Go back to -O optimization...Bruce's arguments against -O2 are convincing
enough for me.
1994-11-27 14:26:16 +00:00
joerg
fa9f596770 Temporary kludge: treat \r same as \n in input, so working on a
comconsole will behave as expected.  The true problem should be fixed
instead, Bruce' comment for this:

>Anyway, i found the reason for my problems: somehow, ICRNL isn't in
>effect at `userconfig' time (but only for comconsole?), hence only

ICRNL doesn't apply to cngetc().  cnputc() unconditionally does the
equivalent of ONLCR; perhaps cngetc() should unconditionally do the
equivalent of ICRNL.  Ddb must be checking for CR.  Userconfig only
checks for NL.  Userconfig works with syscons because pccngetc()
does the conversion.  This is probably the wrong place to do it.
1994-11-27 13:43:37 +00:00
phk
8fc5c343ea I made a syntax error yesterday.
Submitted by:	John Capo
1994-11-27 01:49:39 +00:00
ats
f41c120b7e Expand the EISA MAX_SLOTS from 8 to 16. 1994-11-26 23:10:03 +00:00
bde
b4ceae7bef Submitted by: Kirk McKusick
Allow chown() to return success if the gid isn't changed even if
the gid is not the caller's.  Such gids are normal for files created
in world-writable directories sucj as /tmp.  This "fixes" annoying
error messages for mv'ing files created in /tmp to another file
system.  mv still preserves the foreign gid of /tmp, but now does
it silently.
1994-11-26 19:38:30 +00:00
bde
33d82aa474 Fix cblock starvation bugs by reserving enough cblocks for minimal
operation of each clist.  Limit the growth of each clist.  Clists
can only grow larger than the reserved minimum if there are free
cblocks in a shared pool.  The size of this pool is now fixed
(this could be improved).  The reserved and maximum sizes are more
carefully allocated for slip and ppp, depending on the mtu.  A maximum
MTU of 16384 is now enforced for ppp.
1994-11-26 19:24:13 +00:00
bde
c879ab57fd Don't block for output in non-blocking mode if clists run out.
Remove an unnecessary test (if the output queue is above high water
then it is nonempty).
1994-11-26 18:54:25 +00:00
dg
1d038bead8 Always put received packets in an mbuf cluster. This simplifies the code
considerably and is measurably faster. Various comment fixes.
1994-11-26 10:51:49 +00:00
phk
64c7beace9 Set the bootverbose if so desired.
if (bootverbose)
    Print the geometries the bios passes to us (through the bootblocks).
1994-11-26 09:37:57 +00:00
phk
7459447c2e Declare "extern int bootverbose", so that device-drivers and others
easily can find it.
1994-11-26 09:27:58 +00:00
phk
7bd901cd23 Implement RB_VERBOSE. This is intended to mean: Print all information which
could be of any use for trouble-shooting problems with boot/devices/drivers.
1994-11-26 09:08:48 +00:00
ats
d33db1bec6 Changed the MAX_SLOTS constant from 8 to 16. The EISA bus can have up
to 16 slots.
1994-11-25 22:25:15 +00:00
dg
b995c28ccc These changes fix a couple of lingering VM problems:
1.	The pageout daemon used to block under certain
	circumstances, and we needed to add new functionality
	that would cause the pageout daemon to block more often.
	Now, the pageout daemon mostly just gets rid of pages
	and kills processes when the system is out of swap.
	The swapping, rss limiting and object cache trimming
	have been folded into a new daemon called "vmdaemon".
	This new daemon does things that need to be done for
	the VM system, but can block.  For example, if the
	vmdaemon blocks for memory, the pageout daemon
	can take care of it.  If the pageout daemon had
	blocked for memory, it was difficult to handle
	the situation correctly (and in some cases, was
	impossible).

2.	The collapse problem has now been entirely fixed.
	It now appears to be impossible to accumulate unnecessary
	vm objects.  The object collapsing now occurs when ref counts
	drop to one (where it is more likely to be more simple anyway
	because less pages would be out on disk.)  The original
	fixes were incomplete in that pathological circumstances
	could still be contrived to cause uncontrolled growth
	of swap.  Also, the old code still, under steady state
	conditions, used more swap space than necessary.  When
	using the new code, users will generally notice a
	significant decrease in swap space usage, and theoretically,
	the system should be leaving fewer unused pages around
	competing for memory.

Submitted by:	John Dyson
1994-11-25 07:58:29 +00:00
se
e55fbafa80 Added #define PROBE_VERBOSE and description (PCI chip set boot messages)
Reviewed by:
Submitted by:
Obtained from:
1994-11-24 20:35:21 +00:00
dg
bbd60ec5ee Don't try to page to a vnode that had it's filesystem unmounted. 1994-11-24 14:43:22 +00:00
dg
68acac5e76 Moved conversion of ether_type to host byte order out of ethernet drivers
and into ether_input(). It was silly to have bpf want this one way and
ether_input want it another way. Ripped out trailer support from the few
remaining drivers that still had it.
1994-11-24 14:29:38 +00:00
dg
72223a20db Changed optimization level to -O2. 1994-11-24 14:26:11 +00:00
ugen
7995f38bb9 The long-time-waited-for patch for PPP.
See Gene's mail for explanation..
Submitted by: Gene Stark
1994-11-23 08:29:44 +00:00
dg
98cbcd3a01 Bunch of fixes from Matt Thomas:
1) make #includes correct
2) fix bugs in address check macros
3) fixed bugs in, and enabled, recopy if heavily fragmented code
4) moved call to bpf tap to be before enqueing packet (probably gratuitous)
5) fixed bug that caused "abnormal interrupt" at boot time/first use
6) added support for reading Zynx address ROM
7) fixed bug that caused broadcasts to not work shortly after booting (only
	manifested if not using multicast - e.g. not in FreeBSD 2.0)
8) fixed spelling errors in comments

Submitted by:	Matt Thomas
1994-11-22 09:47:31 +00:00