Commit Graph

334 Commits

Author SHA1 Message Date
cgd 146889c8fd add portal and lofs entries 1993-12-22 13:43:18 +00:00
cgd c3ee44a1b9 various bug fixes from BSDI, via jsp. Kill some iffy fixes
by wfj (and replace them with better ones from BSDI).  add support
for p_vnode, and add proc_reparent() function, from jsp.
1993-12-22 13:42:27 +00:00
cgd a67d24d94b add support for p_vnode, from jsp 1993-12-22 13:39:27 +00:00
cgd afce447ada p_spare is in the 'zero range' now 1993-12-21 10:39:17 +00:00
cgd adbe4b0962 kill two wrong 'case's 1993-12-21 07:19:14 +00:00
cgd 621f7b658f more of the same; gah! 1993-12-21 06:39:12 +00:00
cgd d797e926cf kill a billism 1993-12-21 06:30:28 +00:00
cgd a6eecc8e2a load average changes from magnum 1993-12-20 12:42:34 +00:00
cgd bdabe240d0 replace VREF as appropriate to avoid logical recusion 1993-12-20 10:42:39 +00:00
cgd 842286f9c4 make searching a bit easier 1993-12-20 05:42:37 +00:00
mycroft 7f50bd1829 Canonicalize all #includes. 1993-12-18 04:21:37 +00:00
mycroft 21edb9924e Canonicalize all #includes. 1993-12-18 03:59:02 +00:00
mycroft b4d3382694 Canonicalize all #includes. 1993-12-17 07:56:32 +00:00
deraadt 493603cecd fix from Daniel Harris <daniel@werple.apana.org.au>
VTIME code must untimeout
1993-12-16 18:09:08 +00:00
pk e7356e6993 Use proc pointer passed in uio rather then curproc for credentials (should
perhaps be done for b_proc also).
1993-12-16 16:28:43 +00:00
deraadt 252dd4bb0e VMIN/VTIME support from Marc Teitelbaum <marc@vangogh.cs.berkeley.edu> 1993-12-13 14:40:31 +00:00
deraadt e5fc8b4460 update to new syscalls.master 1993-12-12 19:42:13 +00:00
deraadt c38503af4d sparc must flush register windows before vm_deallocate or else fireworks
must deallocate shm's
set/reset emulation environment at the right times
keep arg buffer around for later use
canonicalize all #includes.
support STACKGAP for COMPAT_SUNOS code
support OMAGIC/NMAGIC-style memory loading
don't assume VM_MIN_ADDRESS is 0.
(changes come from magnum branch)
1993-12-12 19:38:37 +00:00
deraadt 9dd14b7930 make syscall#0 "syscall", like in 4.4 (causes SYS_syscall to be defined) 1993-12-12 19:28:21 +00:00
deraadt 9e62501f7b support OMAGIC/NMAGIC a.out's
cannonicalize #includes
change VTEXT check
(this stuff comes from the magnum branch)
1993-12-12 19:26:18 +00:00
cgd 94dd8a0dfb dtrt with 'error' in setpriority() 1993-12-10 07:19:16 +00:00
deraadt 3cf1d8505e echo ^V^? correctly as ^?. From Edward Wang <edward@homer.CS.Berkeley.EDU> 1993-12-09 22:58:17 +00:00
pk 9610135cb8 Do the right thing when arguments are NULL.
Don't leave filesystems marked busy after copyout() errors.
1993-12-09 18:00:18 +00:00
pk 644f409712 Properly initialize the credentials fields in the buffer used in physio().
Actually use the credentials of `curproc' when doing IO (among other things,
this allows us to read /dev/drum when swapping on an NFS mounted file).
1993-12-07 23:46:13 +00:00
mycroft 620a222f9f If EXEC_DEBUG, display name of file we're trying to exec. 1993-12-06 14:18:58 +00:00
cgd 86b5a367cf use progname.core for core dump names 1993-12-04 07:11:11 +00:00
cgd 5419d0bd49 initialize uninitialized variable, from Andy Heffernan <ahh@netcom.com>. 1993-12-01 22:05:04 +00:00
pk 392cf19708 return from rmfree() if we loose space with no options left. 1993-11-29 13:21:00 +00:00
deraadt 2a9aacbf1c don't permit TIOCSCTTY on /dev/tty, or kernel recursion happens
from Lars Fredriksen <ludvig!lars@wixer.bga.com>
1993-11-24 03:40:10 +00:00
deraadt bd783b4d80 initialize pseudo devices with pdevinit[], not with a bunch of
#include/#ifdef pairs..
1993-11-23 07:49:04 +00:00
cgd facd69a0ee do something better with lookup return values; suggested by BSDI's msdosfs mod 1993-11-20 09:40:32 +00:00
cgd 5838270f1e patch from Ukai Fumitoshi <ukai@kmc.kyoto-u.ac.jp>
to do the right thing with NFS fsid's and getnewfsid()
1993-11-19 02:31:23 +00:00
cgd dde22728d4 drag changes down from magnum 1993-11-15 10:21:08 +00:00
deraadt 33d816fdbc add a ptyattach() function, as in magnum. 1993-11-15 09:17:05 +00:00
cgd 1259031077 kill bogus test 1993-11-15 07:54:45 +00:00
cgd 4878a43c3d Add the System V message queue and semaphore facilities. Implemented
by Daniel Boulet <danny@BouletFermat.ab.ca>
1993-11-14 13:21:59 +00:00
cgd 02d6aea5bf Add the System V message queue and semaphore facilities. Implemented
by Daniel Boulet <danny@BouletFermat.ab.ca>
1993-11-14 13:08:09 +00:00
cgd a7c7f39bad fix to keep acctwatch() from being called before the vnode is unlocked.
from Mark Tinguely <tinguely@plains.nodak.edu>.
1993-11-14 06:55:24 +00:00
cgd c6ff42e027 from Mike Karels, via bsdi-users: nuking session pointer prevents cleanup. 1993-11-12 15:15:57 +00:00
cgd 76dbc1192b new specfs.h and fifo.h locations 1993-11-12 05:54:12 +00:00
mycroft f86975f0f0 Clean up deleted files. 1993-11-12 03:44:43 +00:00
glass af72539915 T_LINEP member of struct tty becomes t_sc. This replaces the
#define t_sc T_LINEP
that appear in tty_tb.c, if_sl.c, and if_ppp.h
1993-11-09 06:22:08 +00:00
cgd 8068dd9add fix from david greenman, davidg@freefall.cdrom.com:
sosend was attempting to reserve space in an mbuf cluster for a datagram
header and because of bugs in the sosend's mbuf allocation algorithm,
sosend was calling uiomove twice as many times as was necessary. It turns
out that PREPEND does the right thing when a cluster is associated with
an mbuf header, so the datagram header allocation can be defered. This
also ends up additionally consuming one less mbuf for the TCP protocol
because TCP always allocates another header mbuf regardless if space is
available to prepend the protocol header. The net result of this fix is
that unix domain and pipe throughput is increased by a measured 10%.
1993-11-05 23:00:27 +00:00
cgd 8900ab37e3 clean up, move some XXX's around, and note that one or two things should be
replaced with timeval{add,sub}, and generally be made more sane.
1993-11-03 09:08:42 +00:00
glass 3e21ea2e33 tablet line discipline compiles and probably works now. 1993-11-02 06:19:24 +00:00
glass bee2279a89 removed unnecessary #ifdef. config does the right thing. 1993-10-31 19:36:33 +00:00
glass 7a7e6dbd95 removed slip and ppp specific prototypes from tty.h where they didn't belong.
moved them to tty_conf.c within #if Nwhatever > 0 where they do belong.
made sure that if_sl.c, and if_ppp.c still compile quietly.
1993-10-31 19:27:45 +00:00
glass 5e6a2e33c0 fix chris typo. 1993-10-30 16:11:07 +00:00
cgd b73e5e6647 kill the process 'space' accounting collection for the following reasons:
(1) text calculation incorrect (would 'overbill')
	(2) data calculation incorrect (would 'overbill')
	(3) the maxrss calculation uses stuff which isn't present
		on the sparc.
if 3/4 tests are questionable and/or broken, well...
1993-10-29 19:49:25 +00:00
cgd 06c4106aec limit block sizes requested 1993-10-29 19:25:18 +00:00
cgd 436e431478 BSDI official patch #15:
SUMMARY:
    "panic: vrele: null vp", the problem seems to be that two renames are
    moving the same source, and the second one can't do it.
ALSO:
    in sync, check that rootfs is non-null before using it.
1993-10-27 02:33:40 +00:00
cgd 299ff91b14 BSDI official patch #14:
SUMMARY:
    Here is a patch for a kernel hang that can be provoked with a write
    or send of a negative amount.  The talk program is capable of exercising
    this bug.  This patch also includes a fix for a bug that caused data
    to be delivered to TCP in smaller chunks than desired, and which caused
    TCP to send a short packet when starting up.  Finally, there is a bug
    fix for MSG_PEEK with an oobmark pending.
1993-10-26 22:36:25 +00:00
cgd 889b512ea4 if you try to allocate a buffer larger than MAXBSIZE, panic. 1993-10-26 19:38:55 +00:00
mycroft 118cdf4851 Clean up deleted files. 1993-10-26 13:15:17 +00:00
cgd 13ca4d98c7 it's correct to return EACCES if FS is mounted MNT_NOEXEC. 1993-10-26 01:42:56 +00:00
cgd c7582cbd4f use copyinstr rather than strcpy to copy in the saved shell-script
name from userland.  From Markus Wild, mw@lamp
1993-10-26 00:32:29 +00:00
cgd ce7108c729 slightly clean up ws's original patch to this file for the sense
of wait vs. nowait.  this patch from torek.
1993-10-22 02:48:35 +00:00
cgd f784b878c2 ACCOUNTING define doesn't exist any more... 1993-10-20 23:04:33 +00:00
cgd 9ceb615f82 add some timeout_t typedefs 1993-10-20 00:53:34 +00:00
cgd fc8ee7437c knf'ify, clean up some, move sysacct() args out of function declaration. 1993-10-20 00:45:34 +00:00
cgd 287eb9a50e delete my '/dev/acct'-style accounting in favor of the version written by
Mark Tinguely (tinguely@plains.NoDak.edu).  It's the 'standard' way
of doing accounting, rather than a wacky one.
1993-10-20 00:16:40 +00:00
cgd 2ff9ed5060 fix my last change; for some reason i thought that 'p' was defined
in these functions.  use curproc instead.
1993-10-19 23:41:44 +00:00
cgd ddd610e422 from Mark Tinguely, with mods by davidg and then fially fixed by cgd.
do the space-used integration, over time, for processes.
1993-10-19 23:37:50 +00:00
cgd dfaa02a09b pay for block i/o. slightly different than how done by Mark Tinguely. 1993-10-19 02:47:56 +00:00
cgd dd818c7cd0 get rid of __main() -- it's going into libkern 1993-10-15 06:16:22 +00:00
deraadt c52686ddb3 from magnum branch: nbqd() was broken 1993-10-13 03:15:57 +00:00
cgd a84055b552 use the ALIGN macro to align the stack, rather than rounding up
by a (char *).  the former is safe, even on strange machines
(read: sparc).
1993-10-06 07:27:58 +00:00
cgd 714fa4716b changed the Debugger() call, which not all kernels have, to panic(),
but only when DIAGNOSTIC is defined.
1993-10-06 07:24:21 +00:00
cgd 772436479d new, improved, and rationally-implemented vfs_bio. no more serious
structural changes should happen, as it now does the right thing
w.r.t. buffer resizing and having lots of buffers vs. relatively
little buffer space.  Ports can now "do the standard thing", re:
nbuf and bufpages, which is make nbuf = bufpages by default.
1993-10-04 04:56:28 +00:00
mycroft 9a1fcf008b Update after fixing syscalls.master. 1993-10-02 09:55:09 +00:00
mycroft c05111e593 Put back the $'s in the RCS id that the last commit removed. 1993-10-02 09:51:40 +00:00
cgd e27f6e3ea0 patch from Christoph Badura <bad@flatlin.ka.sub.org> to fix credential
use by read-ahead blocks.  This fixes those weak NFS authentication
messages, and allows us to use BSDI NFS servers again...
1993-10-01 21:47:11 +00:00
cgd 1d0f22a29a convert to use the buffers which are (now) statically allocated at
startup in machdep.c...  buffers are now *never* allocated after boot.
currently, the limitation that says bufpages must cover nbuf*MAXBSIZE
still exists, but this is one step closer to removing that limitation.
1993-09-29 04:49:15 +00:00
cgd 4a21fe3648 ifdef out the ttyfree()'s, so that fill_eproc doesn't panic when
a process's session still holds a ref to a tty which has been deallocated
and reused.
1993-09-29 02:36:21 +00:00
cgd 94ac210002 rewrite biodone to the spec in the daemon book, and to account for
the fact that buffers with B_CALL set shouldn't be brelse()'d.
1993-09-21 00:40:02 +00:00
brezak 1905040ad2 Add sysarch() syscall. 1993-09-19 18:55:38 +00:00
cgd 9c32bc786a make allproc be volatile, and cast things accordingly.
suggested by torek, because CSRG had problems with reordering
of assignments to allproc leading to strange panics from kernels
compiled with gcc2...
1993-09-15 22:30:32 +00:00
mycroft 40222e846f Fix from Noriyuki Soda <soda@sra.co.jp>:
recvmsg(2) always returns -1 with errno==EMSGSIZE, when trying
        to pass file descriptors through UNIX domain socket.
1993-09-14 03:35:08 +00:00
glass 0c9ec05f20 check return codes on copyout()s, panic if they fail. 1993-09-12 07:56:22 +00:00
jtc 070f4a7f50 Removed functions moved to libkern: strcpy, strcmp, strlen, ffs, etc. 1993-09-11 00:08:03 +00:00
phil de69711383 These changes are due to a mismatch with user functions prototyped as
func(short) and the fact the the kernel uses full ints.  This caused
problems on the pc532 port.  These fixes take the good 16 bits passed
by the user program and converts them into the correct form for the
kernel.
1993-09-09 22:03:59 +00:00
mycroft 64540d3533 Patch from David Greenman to reduce CPU usage during network transmit. 1993-09-08 21:12:49 +00:00
ws 053f138dae Changes to VFS readdir semantics
NFS changes for better cookie support
ISOFS changes for better Rockridge support and support for generation numbers
1993-09-07 15:40:14 +00:00
mycroft 526dbecdb2 A little more cleanup; 0 --> FALSE and 1 --> TRUE. 1993-09-06 02:06:34 +00:00
mycroft cc054a83e7 De-ANSIfy and re-KNFify. 1993-09-06 02:03:03 +00:00
mycroft 29aea147e8 Add \n to end of error message. 1993-09-05 22:07:31 +00:00
sef b477be52eb Yet more of the ptrace() reorg; now ptrace_setregs() and ptrace_getregs()
are present, along with PT_GETREGS and PT_SETREGS ptrace commands.
1993-09-05 03:53:52 +00:00
cgd 15359c9f59 enable loadable execution handlers. need to do something better re:
how much of the file to pass in the exec package, but i think the
solution to that will be to pass e.g. a disk block's worth, or whatever;
if exec handlers really need more, they've got the damned vnode.
1993-09-05 01:36:28 +00:00
cgd 83aeee1bc0 there now exists an "exec switch". break the a.out code into another
module, and tidy up the interface so that other object formats are
more easily supportable.
1993-09-05 01:33:35 +00:00
cgd a05bd46763 patch from Szabolcs Sziget <pink@bagira.fsz.bme.hu> to load lkm device
drivers properly.
1993-09-05 00:55:57 +00:00
sef fddf2c7605 ptrace_single_step() and ptrace_set_pc() should return errors if
necessary.  (Mainly because the SPARC can't easily single step, so
it should return EINVAL, and then ptrace() should return that to the
user.)
1993-09-04 08:46:36 +00:00
cgd 3aa99f85dc better ptrace() support from Sean Eric Fagan <sef@kithrup.com> 1993-09-04 05:32:18 +00:00
cgd 6a474f29e2 get rid of maxdmap, and seperate MAXDSIZ and MAXSSIZ in rlimit checking. 1993-09-04 00:37:54 +00:00
jtc 9c00bc072d Include systm.h to get prototypes (and possibly inlines) of *max functions.
Change mbinit() to match prototype.
1993-09-04 00:01:43 +00:00
cgd 491d6b4b9d fix problem where exec would lose on shell scripts with symlinks in
their names.  fix from "James W. Dolter" <jdolter@sawtooth.eecs.umich.edu>.
test script:

#!/bin/csh
mkdir /tmp/foodir
cat > /tmp/foodir/testscript <<EOF
#!/bin/sh
echo "Executing script \$1"
EOF
chmod 755 /tmp/foodir/testscript
(cd /tmp ; ln -s foodir foosym)
echo "Trying full path (w/o symlink) to /tmp/foodir/testscript"
/tmp/foodir/testscript "with out symlink"
echo "Trying full path (w/ symlink) to /tmp/foosym/testscript"
/tmp/foosym/testscript "with symlink"
echo "End of Test"
1993-09-01 21:43:50 +00:00
deraadt 28c37a0949 fixed a little /lib/cpp boo-boo 1993-08-31 13:46:31 +00:00
cgd d365662684 ok, initialize that errno, to make theo and gcc2 happy... 1993-08-31 01:52:34 +00:00
cgd 518f7c78d6 a program being exec'd *must* cause *some* exec commands to be invoked;
if it doesn't there's a problem in the kernel, because a program
with no exec commands run will have no address space except the stack,
and i don't think it's valid to have a "run from stack only" exec type,
so panic.  if need for that case comes up later, it can be changed...
1993-08-31 01:46:36 +00:00
deraadt 6fce70ed63 blast it, i forgot two ('s 1993-08-30 06:25:10 +00:00
deraadt 9aed375ba3 tty XXstart() routines return void 1993-08-29 13:46:31 +00:00