Peter Wemm [Thu, 1 Jul 1999 18:33:22 +0000 (18:33 +0000)]
Look up the kernel environment for MAXMEM as a final override for the
memory size. If somebody wants to change the name, fine - I used this
since it's consistant with the config variable it replaces.
This is intended to replace the npx0 msize hack (which no longer works).
Peter Wemm [Thu, 1 Jul 1999 18:27:15 +0000 (18:27 +0000)]
Move kern_envp and preload initialization a little earlier so that we
can do a getenv_int() inside the memory sizing routines to override the
memory limit.
Peter Wemm [Thu, 1 Jul 1999 16:20:16 +0000 (16:20 +0000)]
Don't include trailing whitespace in ID tokens before comments. ie:
options FOO=10 # comment
would give FOO the value of "10 " and that caused unwanted
touches on the opt_*.h files.
Ruslan Ermilov [Thu, 1 Jul 1999 14:32:07 +0000 (14:32 +0000)]
Document that FTP_PASSIVE_MODE should be explicitly
set to `YES' for passive mode to be used by default.
Just setting FTP_PASSIVE_MODE is not sufficient, as
it was before.
Peter Wemm [Thu, 1 Jul 1999 13:21:46 +0000 (13:21 +0000)]
Slight reorganization of kernel thread/process creation. Instead of using
SYSINIT_KT() etc (which is a static, compile-time procedure), use a
NetBSD-style kthread_create() interface. kproc_start is still available
as a SYSINIT() hook. This allowed simplification of chunks of the
sysinit code in the process. This kthread_create() is our old kproc_start
internals, with the SYSINIT_KT fork hooks grafted in and tweaked to work
the same as the NetBSD one.
One thing I'd like to do shortly is get rid of nfsiod as a user initiated
process. It makes sense for the nfs client code to create them on the
fly as needed up to a user settable limit. This means that nfsiod
doesn't need to be in /sbin and is always "available". This is a fair bit
easier to do outside of the SYSINIT_KT() framework.
Sigh. It's always the smallest changes that generate the largest public
commentary. :) 3rd and final frob of this. Leave enough comments
behind that anyone running into trouble at least has some cited clues
on dealing with it and jump into the brave new world with uncommented
IANA port assignments.
Bill Fumerola [Thu, 1 Jul 1999 01:07:30 +0000 (01:07 +0000)]
(1) Don't perror() when at.deny doesn't exist, that's an accepted behavior.
(2) Die when there is a problem opening at.allow other then it not existing.
An error other then it not existing might be a trick to somehow
circumvent system security.
Compromise proposal: Comment out both old and new radius ports, explain
the differences in the comments, let the USER select which assignment to
use now.
Mike Smith [Wed, 30 Jun 1999 23:11:15 +0000 (23:11 +0000)]
Increase the size of the route reference count from 15 bits to 31 bits.
This doesn't change the size or alignment of the structure on either i386
or Alpha, and thus should be binary-compatible (modulo problems with old
applications and routes with more than 2^15 references).
Peter Wemm [Wed, 30 Jun 1999 15:33:41 +0000 (15:33 +0000)]
Slight tweak to fork1() calling conventions. Add a third argument so
the caller can easily find the child proc struct. fork(), rfork() etc
syscalls set p->p_retval[] themselves. Simplify the SYSINIT_KT() code
and other kernel thread creators to not need to use pfind() to find the
child based on the pid. While here, partly tidy up some of the fork1()
code for RF_SIGSHARE etc.
Alan Cox [Wed, 30 Jun 1999 03:39:29 +0000 (03:39 +0000)]
An SMP-specific change: Remove unnecessary lock acquires and releases
surrounding critical sections that consist of (1) a single read or
(2) a single locked RMW operation.
(Thanks to thomma@slip.net (Tamiji Homma) for helping to test
these changes.)
Julian Elischer [Wed, 30 Jun 1999 02:53:51 +0000 (02:53 +0000)]
Submitted by: Conrad Minshall <conrad@apple.com>
Reviewed by: Matthew Dillon <dillon@apollo.backplane.com>
The following ugly hack to the exit path of nfs_readlinkrpc() circumvents
an Auspex bug: for symlinks longer than 112 (0x70) they return a 1024 byte
xdr string - the correct data with many nulls appended. Without this fix
namei returns ENAMETOOLONG, at least it does on our source base and on
FreeBSD 3.0. Note we do not (and should not) rely upon their null padding.
Peter Wemm [Tue, 29 Jun 1999 18:58:27 +0000 (18:58 +0000)]
With asbestos suit on, make the options indenting a little more consistant
so that it doesn't screw up the alignment when commenting out an entry.
Also dequote two entries that do not need it.
Peter Wemm [Tue, 29 Jun 1999 18:55:53 +0000 (18:55 +0000)]
Put on my asbestos suit and attempt to tidy up and add some simple docs
or notes to make it much more obvious what things are for people who
have not committed LINT to memory yet.
Peter Wemm [Tue, 29 Jun 1999 18:24:09 +0000 (18:24 +0000)]
Dequote like on the i386 configs. Also remove some references to old
i386 isa drivers that used to be order sensitive. The probe order of
those drivers is now determined by a list in isa_compat.c and config
file order is totally irrelevant.
Kazutaka YOKOTA [Tue, 29 Jun 1999 17:37:44 +0000 (17:37 +0000)]
idev->id_irq is an interrupt MASK, not an interrupt number.
Thus, we need to convert the mask to the number (by ffs()) when
writing back this value to the resource in save_resource().
Kazutaka YOKOTA [Tue, 29 Jun 1999 17:36:20 +0000 (17:36 +0000)]
Keyboard allocation/deallocation fix.
- Do not try to allocate a keyboard in pccnprobe() when probing the vt
driver for the kernel console. Rather, allocate a keyboard when
initializing the vt driver in pccninit().
- Release the keyboard in pccnterm().
- Don't try to read from the keyboard, if it is not present.
Kazutaka YOKOTA [Tue, 29 Jun 1999 17:30:33 +0000 (17:30 +0000)]
Fill in tp->t_windowsize AFTER the call to (*linesw[tp->t_line].l_open)(),
rather than BEFORE the call. Otherwise the structure will be `zero'ed out
by l_open, which actually is ttyopen(), if !TS_OPEN.
Peter Wemm [Tue, 29 Jun 1999 05:59:47 +0000 (05:59 +0000)]
Hopefully fix the remaining glitches with the BUF_*() changes. This should
(really this time) fix pageout to swap and a couple of clustering cases.
This simplifies BUF_KERNPROC() so that it unconditionally reassigns the
lock owner rather than testing B_ASYNC and having the caller decide when
to do the reassign. At present this is required because some places use
B_CALL/b_iodone to free the buffers without B_ASYNC being set. Also,
vfs_cluster.c explicitly calls BUF_KERNPROC() when attaching the buffers
rather than the parent walking the cluster_head tailq.
Peter Wemm [Mon, 28 Jun 1999 15:32:10 +0000 (15:32 +0000)]
Fix a bug that was almost certainly making breadn() fail. BUF_KERNPROC()
was being called on the wrong bp - it should be called on the one that's
just about to be fed to VOP_STRATEGY().
Peter Wemm [Mon, 28 Jun 1999 09:38:09 +0000 (09:38 +0000)]
Add some extra alpha_pal_imb()'s in overkill mode. This makes this PC164SX
run quite reliably now. I've explicitly tagged them as /* XXX overkill? */
although one does actually check for VM_PROT_EXECUTE.
Based on a suggestion by: Dmitrij Tejblum <tejblum@arc.hq.cti.ru>
Peter Wemm [Mon, 28 Jun 1999 09:18:44 +0000 (09:18 +0000)]
Revert back to not using -DKERNEL - it exposes inlines etc.
Zap symbols.raw and glue to make symbols.* - it's not used on the ELF-only
alpha kernel. Symbol sorting is dead-end anyway once libkvm uses the
in-kernel linker symbol lookup.
David E. O'Brien [Mon, 28 Jun 1999 09:05:56 +0000 (09:05 +0000)]
Define "OBSTACK_CHUNK_SIZE" as getpagesize().
Our malloc can allocte pagesized blocks efficiently and the EGCS default size
of 4072 bytes is not optimal.