9550 Commits

Author SHA1 Message Date
dyson
8ab3ac77d2 Fix the decl of vfs_ioopt, allow LFS to compile again, fix a minor problem
with the object cache removal.
1997-12-29 01:03:55 +00:00
dyson
cd67bb82fe Lots of improvements, including restructring the caching and management
of vnodes and objects.  There are some metadata performance improvements
that come along with this.  There are also a few prototypes added when
the need is noticed.  Changes include:

1) Cleaning up vref, vget.
2) Removal of the object cache.
3) Nuke vnode_pager_uncache and friends, because they aren't needed anymore.
4) Correct some missing LK_RETRY's in vn_lock.
5) Correct the page range in the code for msync.

Be gentle, and please give me feedback asap.
1997-12-29 00:25:11 +00:00
steve
c1884e4eb8 Add back a #include <sys/types.h> so that this header is
self-sufficient again.  This is a quick fix that should
really be remedied by removing all of the gratuitous changes
made in revision 1.20.

PR:		5351
1997-12-28 22:31:59 +00:00
phk
87f11cf193 More cleanup relating to our use of the TSC.
Look in the cpu_feature (CPUID output) to see if we have it.
1997-12-28 17:33:10 +00:00
phk
ca105236ff wash, sort and put in order various nits from the i586_ctr -> tsc
commit.

Pointed out by: bde
1997-12-28 13:36:09 +00:00
julian
2519865571 back out previous commit
got a better version.
1997-12-28 09:10:37 +00:00
kato
e50e705007 Merge from sys/i386/i386/microtime.s revision 1.36. 1997-12-28 08:16:28 +00:00
julian
e8593c05aa Move the sector size check to the right place,
also cope with some drives that return funny values.
The correct fix will come in a few days.
1997-12-28 07:10:54 +00:00
bde
c4f9529d8c Fixed initialization of the divisor latch. We depended on siocnopen()
initializing it for the (usual) (siocniobase != 0) case, but
siocnopen() doesn't initialize it if the latch registers already
have the correct values.
1997-12-28 06:36:35 +00:00
bde
233f527965 YAMFsio.c (always call ttwwakeup() before returning from comstart()). 1997-12-28 06:23:03 +00:00
bde
6923614d1d Always call ttwwakeup() before returning from comstart(). It isn't
necessary to call it when the tty layer's output state has not been
changed, but siostop() sometimes changes the TS_BUSY state and then
calls comstart() mainly for its side effect of calling ttwwakeup().
1997-12-28 06:20:47 +00:00
bde
aee0b8bb68 Removed unnecessary (and broken) wakeup code in rpstart(). There is no
need to do it directly, since ttwwakeup() is always called just before
returning from rpstart().  The brokenness was waking up the wrong address
after clearing TS_SO_OLOWAT.  It's not clear how processes waiting for
output to drain below low water ever got woken up.

Found by:	when I fixed longstanding warts in output watermark
		handling, this was the only driver that knew too much
		(anything) about the watermarks
1997-12-28 05:45:07 +00:00
bde
07b5eb4e92 Removed stale comment about printf's deficiencies and rewrote the code
that worked around them for the CLI devtab listing.

Print the `conflicts' flag in the CLI devtab listing.
1997-12-28 05:20:59 +00:00
bde
e24f5de85f Handle "%...p" as "%#...x" instead of "0x%...x". This is a quick fix
for field widths being 2 larger than specified for "%<number>p".  Only
printing of null pointers is "wrong" now (it is actually "right", but
inconsistent with printf(3)).
1997-12-28 05:03:33 +00:00
bde
79c9bcac97 Unspammed nested include of <sys/malloc.h>. <sys/mbuf.h> hasn't
really used any features from <sys/malloc.h> since it was "blasted
from the past" in rev.1.15, and most .c files did not depend on
the namespace pollution (others have been fixed).  The mbuf allocation
control values M_DONTWAIT and M_WAIT were just defined in terms of
the malloc control values M_NOWAIT and M_WAITOK.  The mbuf values
are now defined directly.
1997-12-28 01:04:47 +00:00
bde
485d4efb1c Restored used include of <sys/malloc.h>. malloc() is not used
here, but kmem_malloc() is used and it takes the same "flags" as
malloc().

Use the mbuf allocation "flags" M_WAIT and M_DONTWAIT consistently.
There is really only one boolean flag, M_DONTWAIT, but the "flags"
were always treated as enum-like values, except in some places here
where the values are tacitly converted to boolean flags.  Treat
them as enum-like values everywhere, except where we tacitly assume
that there are only two values in order to convert them to the
corresponding two kmem_malloc() "flags".
1997-12-28 01:01:13 +00:00
jkh
e92c01b5e0 Update comment to match updated sb0 line (conflicts keyword no longer needed
at IRQ 5).
1997-12-28 00:28:46 +00:00
alex
7352708c98 Bring back part of rev 1.44 which was commented out by rev 1.58.
Reviewed by:	nate
1997-12-27 18:44:56 +00:00
bde
7629c0321e Unspammed nested include of <vm/vm_zone.h>. 1997-12-27 09:42:03 +00:00
peter
c97344001f Back out previous commit, the so-called "unused code" was most definately
used, and caused a reference to an uninitialised variable (state).
I think I've fixed it now, but since nothing in the tree seems to use it,
I'm not sure.
1997-12-27 03:00:59 +00:00
bde
3c1b6940fc Unspammed nested include of <vm/vm_zone.h>. 1997-12-27 02:56:39 +00:00
peter
603f05b160 #include "opt_user_ldt.h" so that the #ifdef USER_LDT checks can work, as
commented about at length in the PR audit trail.

PR: 2412
1997-12-27 02:28:28 +00:00
jkh
eff1842268 Change major number to match the one actually used (whoops!).
Submitted by:	Steve Gericke <steveg@comtrol.com>
1997-12-26 23:11:13 +00:00
phk
cadc59e511 Rename "i586_ctr" to "tsc" (both upper and lower case instances).
Fix a couple of printfs too.

Warning: This changes the names of a couple of kernel options!
1997-12-26 20:42:37 +00:00
phk
7682f91921 ename "i586_ctr" to "tsc" (both upper and lower case instances).
Fix a couple of printfs too.

Warning: This changes the names of a couple of kernel options!
1997-12-26 20:41:08 +00:00
phk
6d1e02dc52 Reorder to a more conventional if/then/else/endif structure. 1997-12-26 20:15:03 +00:00
joerg
57a71c2f00 Fix some breakage that prevented the Plasmon burners from being used
under -current.  The actual preparation of the next track will now be
deferred until just before the first write operation.  Otherwise,
opening the device with write intent will cause the execution of
commands that are illegal in `limited command set mode' (i.e., after
the write channel has been opened).

While i was at it, cleaned up the worm_open() function a bit.

Removed the volume overflow pre-check in worm_strategy().  It was
time-consuming, and rather useless in many cases anyway (with the size
being reported for just the entire volume only), so we can as well let
the actual SCSI command fail instead, where it'll properly be reported
as EIO.

Partially submitted by & discussed with: jmz
1997-12-26 14:52:29 +00:00
dyson
74cfdda9c1 The ioopt code is still buggy, but wasn't fully disabled. 1997-12-25 20:55:15 +00:00
gpalmer
bb1c31c96d Make kern.ncpu reports the number of detected processors when running
with a SMP kernel.
1997-12-25 13:14:21 +00:00
dg
2a494c06e2 The spl fixes in in_setsockaddr and in_setpeeraddr that were meant to
fix PR#3618 weren't sufficient since malloc() can block - allowing the
net interrupts in and leading to the same problem mentioned in the
PR (a panic). The order of operations has been changed so that this
is no longer a problem.
Needs to be brought into the 2.2.x branch.
PR:		3618
1997-12-25 06:57:36 +00:00
dyson
d97fabbb53 Support running with inadequate swap space. Additionally, the code
will complain with a suggestion of increasing it.
1997-12-24 15:05:25 +00:00
nate
f886ffb27e - Add prototype for adjust_timeout_calltodo().
Submitted/forgotten by:	Ken Key <key@cs.utk.edu>
1997-12-24 01:33:45 +00:00
brian
9672a80ab3 Add a PARITITON arg to SCSI_MKFIXED, and use it to
specify RAW_PART for the suopen() in sscioctl().

Now you can `scsi -f /dev/ssc -p'.
1997-12-23 19:44:45 +00:00
nate
b24853a710 This patch causes the "calltodo" timer list to be decremented by the amount
of time that the laptop was suspending.  Thus, select() calls that might have
suspended rather than firing  at 1hr + "time suspended" since the timer was
posted.

Adding:

    options  APM_FIXUP_CALLTODO

to the kernel config enables the patch.

[
This patch was slightly modified to use a consistant indent style and
I removed some unused local variables.  After this has been tested a
few weeks we'll make the options the default, so for now I'm now
documenting it in LINT.  Mike can later if he wants.
]

Reviewed by:	Mike Smith <msmith@freebsd.org>
Submitted by:	Ken Key  <key@cs.utk.edu>
1997-12-23 16:32:35 +00:00
yokota
59aba0db01 Document `flags' for the psm driver. 1997-12-23 08:01:16 +00:00
alex
064cf03a22 Removed unnecessary setting of 'error' -- binding to a privileged port
by a non-root user always returns EACCES.
1997-12-23 01:40:40 +00:00
dyson
b6fbb09bc1 Improve my copyright. 1997-12-22 11:54:00 +00:00
dyson
2a4aef5cd4 Improve my copyright. 1997-12-22 11:48:13 +00:00
dyson
edbb7fba33 Correct my previous fix for the UPAGES problem. 1997-12-22 10:06:09 +00:00
dyson
2c2d68bf78 Hopefully fix the problem with the TLB not being updated correctly.
Problem tracked down by bde@freebsd.org, but this is an attempted
efficient fix.
1997-12-22 00:36:48 +00:00
joerg
548dd1da87 Properly clean out the SI_MOUNTEDON flag iff the mount attempt fails
half the way down.  Otherwise, further attempts to mount the device
will be rejected with BUSY.

IMHO, this flag can completely go away for cd9660.  There's no reason
you need to prevent CDs from being mounted multiple times, and in case
of multisession CDs it can even make sense to mount two different
sessions by the same time (to different mount points, otherwise it
would be pointless ;).
1997-12-21 21:40:02 +00:00
bde
7fb46d4921 Moved some declarations from <sys/socket.h> to the correct places, and
fixed everything that depended on them being misplaced.
1997-12-21 16:35:12 +00:00
dyson
5640baa7c8 I added vfs_ioopt prematurely, disabled. 1997-12-21 10:41:19 +00:00
joerg
efc02439ae Duplicate the entry for the Plasmon CD-R device, so both possibilities
(read/only and write/once) will be covered.  This is necessary in order
to fill in the proper device information record.
1997-12-20 23:05:14 +00:00
joerg
3de8948e8c Protect against a null pointer dereferencation in the case of an
unknown drive.  Such a drive will be configured by worm(4)
nevertheless (albeit with a warning), but cannot be opened except of
the SCSI control device (so scsi(8) or cdrecord will continue to
work).
1997-12-20 23:03:49 +00:00
sef
7ed4538110 Add a copyright and license notice, on Jordan's request. 1997-12-20 18:36:02 +00:00
eivind
2f4a80f2e8 Remove bogus #ifdef INET - SLIP doesn't compile without INET. 1997-12-20 16:44:51 +00:00
se
f73c0ca9c8 Make the class code checks in function pci_cfgcheck less strict.
It failed to recognize the PCI bus in a system that had only an
old chip-set (class code 000000) and a Cyclom multiport serial
card on PCI bus 0, but no VGA card or disk or network controller.

PR:		i386/5300
Submitted by:	Nickolay N. Dudorov <nnd@itfs.nsk.su>
1997-12-20 09:04:25 +00:00
sef
f4669f67bc Clear the p_stops field on change of user/group id, unless the correct
flag is set in the p_pfsflags field.  This, essentially, prevents an SUID
proram from hanging after being traced.  (E.g., "truss /usr/bin/rlogin" would
fail, but leave rlogin in a stopevent state.)  Yet another case where procctl
is (hopefully ;)) no longer needed in the general case.

Reviewed by:	bde (thanks bruce :))
1997-12-20 03:05:47 +00:00
kato
6a523666f7 Sync with sys/i386/conf/Makefile.i386 revision 1.106. 1997-12-20 02:37:55 +00:00