Commit Graph

9560 Commits

Author SHA1 Message Date
phk
c1be3d2c9c Fix a include gottcha in the SMP case.
Submitted by: Simon Shapiro <Shimon@Simon-Shapiro.ORG>
1997-12-29 23:36:56 +00:00
dyson
7bf56bd14a Add the vnode interlock back around vref. 1997-12-29 16:54:03 +00:00
dyson
988b240fc6 Add the vnode interlock back around vget. 1997-12-29 16:53:53 +00:00
kato
24650f8d03 Sync with sys/i386/conf/options.i386 revision 1.66. 1997-12-29 16:17:59 +00:00
kato
d3c0f0fbd0 Sync with sys/i386/i386/microtime.s revision up to 1.39. 1997-12-29 16:17:09 +00:00
kato
5ee02566eb Sync with sys/i386/isa/clock.c revision up to 1.107. 1997-12-29 16:15:57 +00:00
kato
94ab377b71 Sync with sys/i386/isa/sio.c revision up to 1.193. 1997-12-29 16:08:48 +00:00
kato
29b2fd54bd Sync with sys/i386/i386/userconfig.c revision 1.99. 1997-12-29 16:06:20 +00:00
bde
85fbb446a9 Fixed style bugs in previous commit. 1997-12-29 08:54:52 +00:00
julian
a13419db88 If available, use the device's LOGICAL blocksize as reported by
the "READ_CAPACITY" command, rather than the physical blocksize
reported in the physical geometry code-page.

Also don't print out worrying bogus messages when probing a
device that has no media. There's no point in printing out
something that is unknowable. It just confuses things.

Move the check for valid blocksize out of 'open()' to the subroutine
that actually finds this out, thus probe/attach can also report and
act on the problem.
1997-12-29 07:49:31 +00:00
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