Commit Graph

14312 Commits

Author SHA1 Message Date
jkh
ef88bf5901 fix PR#599
Submitted-By: jdp
1996-06-03 04:40:43 +00:00
dyson
53d543bdd7 Fix an error when B_MALLOC buffers are returned from the cluster read
code without the B_READ flag being set.  This is a problem when the
data is not cached, and the result will be a bogus attempted write.
Submitted by:	Kato Takenori <kato@eclogite.eps.nagoya-u.ac.jp>
1996-06-03 04:40:35 +00:00
dg
dc263de995 Use kmem_alloc_wait/kmem_free_wakeup() to avoid allocation failures
from running out of string space in the exec_map.
1996-06-03 04:12:18 +00:00
dg
fc1107cd11 Fix declaration of ps_strings. 1996-06-03 04:09:36 +00:00
asami
d1ea4ae39d Add Andrew V. Stesin (stesin@elvisti.kiev.ua) and Peter Stubbs
(PETERS@staidan.qld.edu.au) for their wonderful port of squid.
1996-06-03 02:29:38 +00:00
bde
df8d0485a1 Backed out yacc changes. 1996-06-03 01:56:05 +00:00
jraynard
229375de35 Update reference to the 4th edition of this fine book. 1996-06-03 00:37:41 +00:00
alex
5c1e86ebb4 Code cleanup: remove unused variables, use correct *printf format
specifiers (some unsigned values were printed as signed, some longs
were printed as ints), and place parentheses around assignments in
if statements.
1996-06-02 23:19:12 +00:00
dyson
256d4f51af Don't carry the modified or referenced bits through to the child
process during pmap_copy.  This minimizes unnecessary swapping or creation of
swap space.  If there is a hold_count flaw for page-table
pages, clear the page before freeing it to lessen the chance of a system
crash -- this is a robustness thing only, NOT a fix.
1996-06-02 22:28:53 +00:00
gpalmer
7ff6b86884 Use setreuid instead of seteuid for permissions management 1996-06-02 19:59:26 +00:00
joerg
497410092f Be slightly more verbose during configure() in the bootverbose case.
This breaks the long silence after the ``npx0'' message and allows to
track some of the problems regarding the root f/s decisions.
1996-06-02 18:58:39 +00:00
joerg
919436ccb7 Hide the ``wrong signature'' message behind bootverbose. It's
annoying for people who don't have a bus mouse.
1996-06-02 18:57:17 +00:00
phk
b5bea7dc4e Backout yacc changes. 1996-06-02 17:22:01 +00:00
phk
3b816e03a0 backout yacc changes 1996-06-02 17:10:13 +00:00
phk
d95016fb8a backup yacc changes 1996-06-02 17:08:32 +00:00
phk
9b71c2f42f Backup yacc changes. 1996-06-02 17:06:40 +00:00
phk
cb0af0dbc3 Backout yacc changes 1996-06-02 17:05:48 +00:00
phk
79ea4b1fca Back out yacc change. 1996-06-02 17:04:08 +00:00
dyson
e519ba0e4e Remove the now-unnecessary and incorrect wiring of the "other" processes
page table pages.  The pmap layer now handles that fully.
1996-06-02 06:24:27 +00:00
gpalmer
9ef15286b9 Correct spelling error in comment 1996-06-02 00:15:19 +00:00
gpalmer
fa983af07a Set ifnet.baudrate for ethernet / FDDI interfaces too. Makes
SNMP slightly more informative

Reviewed by: Garrett Wollman
1996-06-01 23:25:10 +00:00
wosch
7957d43260 People ask in Usenet, how to configure remoteprinting successfully
having a hosts.lpd(5) manpage and some references to it from
within lpd(8) might help here. Close PR docs/1277

Submitted by: andreas@knobel.gun.de (Andreas Klemm)
1996-06-01 23:22:36 +00:00
jkh
06a8442ae0 Whups! I never meant for the laptop section to appear twice! :-) 1996-06-01 21:28:06 +00:00
jkh
8d22c5bdb9 Oh my, looks like I didn't understand .B as well as I thought I did! :-) 1996-06-01 20:51:47 +00:00
dyson
e3cb859c13 Disable madvise optimizations for device pager objects (some of the
operations don't work with FICTITIOUS pages.)  Also, close a window
between PG_MANAGED and pmap_enter that can mess up the accounting of
the managed flag.  This problem could likely cause a hold_count error
for page table pages.
1996-06-01 20:50:57 +00:00
dyson
b456bf3603 Fix the problem with pmap_copy that breaks X in small memory machines. Also
close some windows that are opened up by page table allocations.  The
prefaulting code no longer uses hold counts, but now uses the busy
flag for synchronization.
1996-06-01 19:19:21 +00:00
joerg
8f8386f61d Update my PGP key with a signed version. 1996-06-01 19:08:39 +00:00
bde
cbb7e33d7c Clean up the FP stack before returning. The i387 exp() leaked an FP
register on its first call.  Subsequent calls reused the register so
the leak didn't accumulate.  Fixes PR 1275.
1996-06-01 18:00:07 +00:00
bde
05a2937332 Finished yacc rules changes. 1996-06-01 13:39:23 +00:00
asami
4629e40071 Add some comments to sections to disable targets using NO_* variables.
Remove disabling of "repackage", that thing calls package anyway.

Submitted by:	(mostly) jkh
1996-06-01 05:47:42 +00:00
wpaul
469d167428 Make _yp_dobind() a litle smarter:
Now that we preserve RPC handles instead of rebuilding them each time
a ypcln function is called, we have to be careful about keeping our sockets
in a sane state. It's possible that the caller may call a ypclnt
function, and then decide to close all its file descriptors. This would
also close the socket descriptor held by the yplib code. Worse, it
could re-open the same descriptor number for its own use. If it then calls
another ypclnt function, the subsequent RPC will fail because the socket
will either be gone or replaced with Something Completely Different. The
yplib code will recover by rebinding, but it doing so it may wreck the
descriptor which now belongs to the caller.

To fix this, _yp_dobind() needs to label the descriptor somehow so
that it can test it later to make sure it hasn't been altered between
ypclnt calls. It does this by binding the socket, thus associating a port
number with it. It then saves this port number in the dom_local_port member
of the dom_binding structure for the given domain. When _yp_dobind() is
called again (which it is at the start of each ypclnt function), it checks
to see if the domain is already bound, and if it is, it does a getsockname()
on the socket and compares the port number to the one it saved. If the
getsockname() fails, or the port number doesn't match, it abandons the
socket and sets up a new client handle.

This still incurs some syscall overhead, which is what I was trying to
avoid, but it's still not as bad as before.
1996-06-01 05:08:31 +00:00
wpaul
f96a6bec7f Improve NIS performace of getservbyname() and getservbyport(). Both these
functions are implimented as wrappers around getservent(), which means it's
up to getservent() to do all the work. The NIS support in getservent()
only allows it to scan through the services.byname map one entry at a
time until it finds the requested service name/port. This can be painfully
slow due to the overhead involved (lots and lots of successive RPCs).

To fix this, we allow getservbyname() and getservbyport() to signal
getservent() that if NIS is turned on (there's a '+' in /etc/services),
the usual yp_first()/yp_next() linear search should be abandoned and
yp_match() used instead. This causes getservent() to immediately
locate the requested entry instead of wasting time groping through the
whole map.

The downside is that this trick is accomplished by exporting a couple of
pointers from getservent.c which getservbyname.c and getservbyport.c can
preset in order to tell getservent() what to do. If all three functions
were in the same source module, then the extra cruft could be delcared
static to avoid poluting the global symbol space. Maybe they should be
combined anyway. For now I've settled on prepending lots of underscores.
1996-06-01 04:40:42 +00:00
lars
a90d30f146 Reviewed by: joerg
Change man so that it will still display the man page even if it
cannot create a "cat" file.
1996-06-01 03:19:59 +00:00
mpp
afa38eb3c4 Mention that the default update time of 30 seconds may be
changed with sysctl(8) by changing the kern.update variable.
Also make a couple of minor cosmetic changes.
1996-05-31 21:02:16 +00:00
pst
9926d3d107 Fix ioctl() operations...nasty typo 1996-05-31 17:35:07 +00:00
wpaul
7db7b1cde1 Small touch-ups -- no functional changes.
Fix some comments to reflect reality (in some cases I made changes
to code but not to the comments).

Change some instances of 'inline' to '__inline' to pacify
gcc -ansi -pedantic.

Use rcsid strings more consistently.

Make 'oldaddr' static in yp_access().

Use strcpy()/strcat() in yp_open_db_cache() instead of snprintf().
(Seems to be a little faster this way.)
1996-05-31 16:01:51 +00:00
gibbs
d4c70b6e64 Fix a regression. Turn off the selection hardware during a selection timeout
before clearing the SELTO interrupt.  We used to do this in the past, but
this outb got lost.

Turn ATN on ourselves as appropriate during a parity error instead of relying
on ENAUTOATNP.

Don't use a loop in RESTART_SEQUENCER.  Its not necessary.
1996-05-31 06:32:09 +00:00
gibbs
5512054c8c Don't use the auto ATN on parity error feature. It may be the source
of our parity handling problems.
1996-05-31 06:30:15 +00:00
peter
47ebff663e More closely preserve the original operation of rresvport() when using
IP_PORTRANGE_LOW.
1996-05-31 05:11:22 +00:00
peter
3259f4bdca Use the setsockopt for IP_PORTRANGE to cause rresvport() to allocate a
privileged port within a single bind(), rather than looping through
attempts to bind over and over again over progressively lower ports.

This should speed up rlogin/rsh etc, and will probably cure some of the
strange rlogin hangs that have been reported in the past where rresvport()
managed to bind() to a port address that it shouldn't have.
1996-05-31 04:00:21 +00:00
peter
b4bca346b0 Use the sysctl settable data port ranges rather than the statically
compiled values.  see sysctl net.inet.ip.portrange.* and the IP_PORTRANGE
discussion in <netinet/in.h>
1996-05-31 03:10:25 +00:00
mpp
f9b8078a7a Add a link to the kernel configuration section of the handbook
to the "Building a ppp ready kernel" section.
1996-05-31 02:51:24 +00:00
mpp
180c1ad687 Fix the layout of one of the entries in the laptop section
so that it makes more sense.
1996-05-31 02:36:41 +00:00
peter
c183c8a9c0 Jump some hoops to have the *.s code being able to be run through both an
ansi and traditional cpp.

The nesting rules of macros are different, which required some changes.
Use __CONCAT(x,y) instead of /**/.
Redo some comments to use /* */ rather than "# comment" because the ansi
  cpp cares about those, and also cares about quote matching.
1996-05-31 01:08:08 +00:00
peter
dbd9016f48 Instead of: cpp blah file.s | as -o file.o, use instead:
cc -c -x assembler-with-cpp -o file.o file.s.

This means that any cpp fatal errors will now be detected, as well as
running *.s files through an ansi cpp instead of a traditional cpp.

(fixes to allow *.s to compile under both ansi and traditional to follow)
1996-05-31 01:01:24 +00:00
dyson
11d90f0f2a Keep brelse from freeing busy pages. 1996-05-31 00:41:37 +00:00
dyson
65214cd0c8 This commit is dual-purpose, to fix more of the pageout daemon
queue corruption problems, and to apply Gary Palmer's code cleanups.
David Greenman helped with these problems also.  There is still
a hang problem using X in small memory machines.
1996-05-31 00:38:04 +00:00
peter
a6023afadf Add an option "EXTRA_VNODES" to cause an extra number of vnode structures
to be allocated at boot time.  This is an expensive option, as they
consume physical ram and are not pageable etc.  In certain situations,
this kind of option is quite useful, especially for news servers that
access a large number of directories at random and torture the name cache.
Defining 5000 or 10000 extra vnodes should cut down the amount of vnode
recycling somewhat, which should allow better name and directory caching
etc.

This is a "your mileage may vary" option, with no real indication of
what works best for your machine except trial and error.  Too many will
cost you ram that you could otherwise use for disk buffers etc.

This is based on something John Dyson mentioned to me a while ago.
1996-05-31 00:20:34 +00:00
peter
b46e8cf885 When estimating the time (in ms) left to drain the output queue based
on the baud rate, dont get upset if it's been hung up by setting B0.
Instead, sleep for a short time, as the host controller takes a while
to go through the state changes.
1996-05-30 23:41:35 +00:00
phk
a550a3bde3 yacc rule changes. 1996-05-30 23:16:31 +00:00