Commit Graph

1301 Commits

Author SHA1 Message Date
mrg 8986bdf82d regenerate. 1997-06-12 14:49:11 +00:00
mrg c59ed4fd4d add sys_swapctl(), and deprecate, with COMPAT_12, sys_swapon 1997-06-12 14:23:46 +00:00
bouyer 276676cfbb Support ext2fs. 1997-06-11 10:40:16 +00:00
kleink 372bfc7c08 Calculate returned timeval correctly when using SO_SNDTIMEO/SO_RCVTIME;
from Koji Imada <koji@math.human.nagoya-u.ac.jp> in PR/3682.
1997-06-11 10:04:09 +00:00
cgd 21bbd49bf2 in vfs_shutdown(), print "syncing disks... " before dropping to spl0(),
so that if the drop to spl0() causes another panic (e.g. because there's
still some fatal hardware interrupt that's pending) we'll know that we
dropped IPL to sync the disks.
1997-06-07 17:27:57 +00:00
veego 118a503048 Add HW_MACHINE_ARCH for the new sysctl hw.machine_arch which contains the
cpu class of a machine.
1997-06-06 23:14:36 +00:00
pk f910dab2bd Get `canwait' argument to kmem_malloc() right. 1997-06-06 10:51:49 +00:00
thorpej f160cf5490 Prototype lkmdispatch() in <sys/lkm.h>; all LKMs use it. 1997-05-28 02:44:55 +00:00
thorpej cf30e3e3c9 Prototype lkmexists() in <sys/lkm.h> as some LKMs might need to use it. 1997-05-28 02:41:41 +00:00
thorpej 5b2dc97efd Move the test for "no rootspec and no bootdv" to after we've had a chance
to set rootspec in the case of "root on ? type nfs" and no bootdv was
found.  From maximum entropy <entropy@tanstaafl.bernstein.com>, PR #3669.
1997-05-25 19:20:30 +00:00
kleink b7ba6138b6 If the pgrp_id argument of TIOCSPGRP (a.k.a. tcsetpgrp()) does not specify
an existing process group, return EINVAL.
1997-05-22 17:35:42 +00:00
gwr 5e15995438 Moved db_kill_proc() and db_show_all_procs() to ddb/db_xxx.c 1997-05-21 19:56:50 +00:00
gwr 55f621803a Moved db_show_callout() to ddb/db_xxx.c 1997-05-21 19:55:45 +00:00
kleink 91830a9500 When a background process attempts to TIOCDRAIN (a.k.a. tcdrain()), send
its process group a SIGTTOU signal.
1997-05-20 13:11:33 +00:00
pk 153ccc307b Use PHOLD() and PRELE(), rather than manipulating p_holdcnt directly. 1997-05-19 10:43:28 +00:00
kleink 2509589972 Add posix_rename() syscall: regen. 1997-05-18 20:07:27 +00:00
kleink d3aadd8976 Add posix_rename() syscall. 1997-05-18 19:56:48 +00:00
thorpej 92c113aebb Fix printf format botch. 1997-05-17 00:19:02 +00:00
gwr 09da7e273e Eliminate vmspace.vm_pmap and all references to it unless
__VM_PMAP_HACK is defined (for temporary compatibility).
The __VM_PMAP_HACK code should be removed after all the
ports that define it have removed all vm_pmap references.
1997-05-16 21:39:50 +00:00
kleink 9827bd6dc6 When fstat(2)ing a file descriptor of a local communications domain socket,
fill the socket's creation time into the stat structure's st_[acm]time fields:
POSIX requires this behavior for pipe(2). N.B.: updating the st_[am]time fields
when reading/writing the pipe is neither required nor implemented, though.
1997-05-15 17:01:04 +00:00
thorpej e98c5a9b1c Fix two boundary/overflow errors in extent_alloc_subregion():
(1): "substart == ex->ex_end" and "subend == ex->ex_start"
     are completely legal parameters for extent_alloc_subregion()
(2): "(subend - substart) + 1" can cause an overflow if the whole
    numeric range is covered by the extent.
Submitted by Matthias Drochner <drochner@zelz26.zel.kfa-juelich.de>
in PR #3119.
1997-05-12 23:36:32 +00:00
kleink e7b98401d4 Pull in the declarations of db_expression() and db_error(), used by
db_kill_proc().
1997-05-08 17:22:05 +00:00
mycroft 8e39ee9dad Don't use vaccess() here. 1997-05-08 17:16:15 +00:00
mycroft ae5d73b594 Update for vaccess() change. 1997-05-08 17:08:31 +00:00
mycroft 06fb68217b Oops; fix reversed test for VDIR. 1997-05-08 16:34:54 +00:00
mycroft e3f99a9397 Pass the vnode type to vaccess(), and use it when checking VEXEC. Make sure
that the mode bits passed to vaccess() and returned by foo_getattr() contain
only permission bits.
1997-05-08 16:19:43 +00:00
mycroft 07ba5e5ac3 Snapshot of namei() cleanup:
1) Eliminate all of the null component name special cases; handle runs of
slashes and leading and trailing slashes completely differently.
2) Return ENOENT when doing a lookup through an empty symlink.
3) Enforce that we're doing a lookup through a directory in in chdir() and
lookup() rather than in foo_lookup().

Not yet finished.
1997-05-08 14:55:22 +00:00
mycroft 4d2eb6bb39 GC some code. 1997-05-08 12:17:47 +00:00
mycroft 837a72363d VEXEC -> VLOOKUP, as appropriate. 1997-05-08 10:57:17 +00:00
mycroft 8f5978a181 GC VS[UG]ID and VSVTX, and add a new VLOOKUP, since the semantics are now
different from VEXEC.
1997-05-08 10:21:35 +00:00
mycroft d7f33c5e60 va_mode contains stat bits. Use S_IS[UG]ID rather than VS[UG]ID. 1997-05-08 10:19:10 +00:00
gwr 9fa3dabef7 Moved db_show_all_procs() to kern_proc.c 1997-05-07 18:49:10 +00:00
gwr 48c524e63a Add db_kill_proc() for DDB (and move db_show_all_procs here so
all the "proc" debugging stuff is here in one place).
1997-05-07 18:48:15 +00:00
tls 02697a5d47 add case for 512Hz in NTP code 1997-05-05 19:25:26 +00:00
mjacob f67d760363 Ancient...needed a slight amount of fixing. 1997-05-04 01:54:24 +00:00
kleink 29c5707479 * Make chown()/fchown() use a piece of common code to set ownership.
* Setting the ownership of a file now implies clearing its set-{group,user}-id
  bits.
1997-04-30 19:29:43 +00:00
mycroft 103c7d360d Oops; forgot to GC the last mbuf allocated when out of clusters. 1997-04-28 17:03:58 +00:00
mycroft 2b65c6c346 Delay turning off P_TRACED until the process is actually waited on. It can't
have any signals delivered while exiting, so this should be okay.  Change the
test for a traced process in wait4() to exclude a process that was started by
the debugger; in this case, only one SIGCHLD should be delivered.
1997-04-28 13:17:05 +00:00
mycroft 701f15db33 Reinstate P_FSTRACE, with different semantics:
* Never send a SIGCHLD to the parent if P_FSTRACE is set.
* Do not permit mixing ptrace(2) and procfs; only permit using the one that
  was attached.
1997-04-28 04:49:27 +00:00
mycroft 43a0dc8b74 Remove remnants of P_FSTRACE, which is no longer used. 1997-04-28 02:51:41 +00:00
mycroft ead5e1a6f7 When stopping a process being traced through procfs, wake up the *parent* (in
case it happens to be doing a WAIT.
1997-04-28 02:36:05 +00:00
mycroft e725c03060 When checking for init, compare against initproc, rather than comparing the
PID.  No functional difference.
1997-04-28 02:29:52 +00:00
tls 3a98883bd3 Don't allow the time to be set backwards if in highly secure mode, since this would allow inode change times to be manipulated. 1997-04-26 21:22:57 +00:00
mycroft c32418bf82 Fix error in vfs_hang_addrlist() that caused file systems to be exported
to more subnets than expected when using netmasks.  From Mike Hibler.
1997-04-25 02:43:10 +00:00
mycroft 9da4efe896 If we fail to allocate a cluster to hold a large packet, simply
drop it rather than using a chain of tiny mbufs.
1997-04-24 08:14:04 +00:00
mycroft 5e62a0725b Change previous test slightly. 1997-04-23 20:19:45 +00:00
mycroft b34794e10f Do not return success when checking for execute permission by super-user and no
execute bits are set.  Also, this test is no longer needed in execve(2).
1997-04-23 20:18:16 +00:00
mycroft 1cf91041df Nuke the old COMPAT_09 truncation of UIDs, GIDs, process and process group IDs. 1997-04-23 18:59:53 +00:00
jtc 2114c082ae In nanosleep, use local error variable when storing rqtp in so that
an error from a failed tsleep will still be returned to the caller.
1997-04-21 16:56:54 +00:00
thorpej 5ca650f210 XXX Kludge for PowerPC; needs a kernel vfprintf(). 1997-04-17 00:06:28 +00:00
jtc c9b0c57620 Add POSIX.1b nanosleep(). 1997-04-16 14:41:28 +00:00
kleink e490ffb5cc Addendum to last commit: "simplify" usage of a vnode pointer. 1997-04-11 22:08:28 +00:00
kleink 589549e022 Use VOP_SEEK() in lseek(2). 1997-04-11 22:03:58 +00:00
jtk a817214f5f make it compile with -DLOCKF_DEBUG 1997-04-10 23:46:18 +00:00
kleink cb9c71d716 Back out last change: just return EACCESS for any non-VREG file.
Fixes PR/3472 from Matthias Pfaller.
1997-04-10 19:45:40 +00:00
cgd 319b64a8f7 Internalize and externalize file descriptors being passed via local domain
socket control messages correctly, without assuming that sizeof(int) ==
sizeof(pointer).  Fixes PR#3183.
1997-04-10 01:51:21 +00:00
kleink 116d655640 Back out POSIX.1 conformance change to lseek(2); this will be attended to
in a different way.
1997-04-09 23:26:06 +00:00
mycroft 6911ff7d13 Fix two performance issues:
* When a delayed write buffer falls off the LRU queue, arrange for it to go on
  the AGE queue after being flushed out to disk.
* When a delayed write buffer is synced, leave it in its relative position in
  the LRU queue.
1997-04-09 21:12:10 +00:00
kleink 513465cc2c Added a sanity check to the force-directory routine, as the CREATE and
RENAME namei() operations may succeed without returning a vnode.
1997-04-08 16:11:48 +00:00
kleink 43bd8d5456 POSIX.1 changes to namei():
(1) "" no longer refers to the current working directory;
	    looking this up will now result in ENOENT.

	(2) by stripping off trailing slashes and setting a `forcedir'
	    flag, make code such as {  mkdir("dir", m); rmdir("dir/"); }
	    actually work.
1997-04-08 10:11:55 +00:00
kleink a0dca5145e Fix a CRNL/NLCR botch I made after looking this up in the X/Open spec.
Fixes PR 3453; from John Kohl and Enami Tsugutomo.
1997-04-07 16:09:28 +00:00
kleink 9300dedf8e Back out last change to rename(2) until a sane solution for the coexistence
of both BSD and POSIX semantics is available.
1997-04-07 00:04:16 +00:00
kleink 4256cf1898 Add some clarification about the TTBREAKC macro's purpose; suggested by
Chris G. Demetriou.
1997-04-06 14:44:44 +00:00
cgd c65f7b2d9a fix missing parenthesis in TTBREAKC() 1997-04-06 08:15:17 +00:00
kleink dbf70fddf5 If TOSTOP is set, and the process group of the writing process is orphaned,
and the writing process is not ignoring or blocking SIGTTOU, do not signal
the process but return EIO.
1997-04-05 21:40:34 +00:00
kleink c028733220 Recognize EOL2 as a delimiter/"break" character only if IEXTEN is set. 1997-04-05 19:50:18 +00:00
mycroft c4cd861045 Remove unintended piece of last change. 1997-04-04 21:05:00 +00:00
mycroft 00f128b69f Fix several bugs related to MDMBUF. Also, remove the partial handling from
ttymodem(); it's not complete, it's better done in the driver, and only the
com driver ever supported it anyway.
1997-04-04 21:02:28 +00:00
kleink 4d65b07afa As specified in POSIX.1 (and termios(4)!), when cc[VMIN]==0 a read() shall
be satisfied by any amount of data actually read.
1997-04-04 15:10:34 +00:00
christos 8810289c14 Add netatalk domain. 1997-04-04 14:22:21 +00:00
kleink 9d8538dd8b Changed lseek(2): return EINVAL upon attempt to seek to negative offset. 1997-04-04 13:57:06 +00:00
kleink 50ccaeca39 Converted rename(2) to proper POSIX.1 behavior: if "from" and "to"
are links to the same file, do nothing. This also eliminates the
previous (and incorrect) check, which was far more complicated.
1997-04-04 13:32:48 +00:00
kleink 5ec0772a62 In checkalias(), initialize the speclockf structure member invented
with the specfs advisory locking support; this could cause a panic.
1997-04-03 23:15:52 +00:00
kleink c9c13ef470 Changed killpg1() to 'succeed' even if a process group consists of
SZOMB processes only; the POSIX.1 definition of a background process
group implies that kill(2)ing such a process group must succeed.
1997-04-03 21:08:27 +00:00
kleink 080aeda54f WERASE, REPRINT, STATUS and DSUSP are extensions to the POSIX.1 GTI
set of special characters: recognize them only if IEXTEN is set.
1997-04-03 14:24:45 +00:00
kleink b27b6da672 It's STRIPDISC, not STRIPIPDISC. 1997-04-03 00:54:19 +00:00
kleink 64f12ae12a Moved the `unlocking a lock-free inode' shortcut behind
the l_whence and starting offset sanity checks.
1997-04-02 18:42:46 +00:00
kleink 5610f6e774 Like in F_SETLK, check if F_GETLK is actually called with a
valid lock type.
1997-04-02 18:22:32 +00:00
kleink 2da2c50987 KNF glitch in last commit, pointed out by Chris G. Demetriou. 1997-04-02 03:23:01 +00:00
kleink 6b58679ffa Implement OCRNL "\r" -> "\n" tty output translation.
Fixes PR standards/3434.
1997-04-02 03:10:51 +00:00
christos ee29ff37a9 PR/3396: Klaus Klein: If CREAD is not set drop incoming data. 1997-03-29 23:26:27 +00:00
thorpej 2a4b742e6a Update and enhancement to the mbuf code, to support use of non-cluster
external storage.  Highlights:

	- additional "void *" argument to (*ext_free)(), an opaque
	  cookie for use by the free function.
	- MCLALLOC() and MCLFREE() calls are gone.  They are replaced
	  by MEXTADD() (add external storage to mbuf), MEXTMALLOC()
	  (malloc() external storage and attach to mbuf), and
	  MEXTREMOVE() (remove external storage from mbuf).
	- completely new external storage reference counting
	  mechanism; mclrefcnt[] is gone.

These changes will eventually be used to pass driver DMA buffers up
the network stack, and reduce/eliminate copies in certain code paths
(e.g. NFS writes).

From Matt Thomas <matt@3am-software.com> and myself <thorpej@nas.nasa.gov>,
with some input from Chris Demetriou <cgd@cs.cmu.edu> and review by
Charles Hannum <mycroft@mit.edu>.
1997-03-27 20:33:07 +00:00
mikel 4ab6dc7d2e allow examination of SIGKILL and SIGSTOP signal handlers (but still
disallow changes); from Klaus Klein in PR standards/3398.
1997-03-27 07:52:25 +00:00
mikel 19fd4b60de make setpgid(pid, pgrp) return EINVAL if pgrp < 0 as required by POSIX.1;
from Klaus Klein in PR standards/3395.
1997-03-27 06:14:03 +00:00
gwr 37b247edde Renames: /dumpconf/cpu_dumpconf/, /boot/cpu_reboot/ 1997-03-26 22:42:13 +00:00
gwr 71e43d14ab Move findroot/setroot stuff from configure() to cpu_rootconf(). 1997-03-26 22:38:40 +00:00
mycroft 13ca4f0381 Do not return generation counts to the user. 1997-03-24 21:44:53 +00:00
mikel e19a744a21 kern.osrevision now returns value of NetBSD symbol (from <sys/param.h>),
not BSD symbol.  fixes PR kern/2016.
1997-03-21 06:50:48 +00:00
mycroft ef083dd857 fill_eproc(): Fill in e_login. From PR 3351, by Geoff Wing. 1997-03-19 04:55:07 +00:00
is 07b064e02e New ARP system, supports IPv4 over any hardware link.
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.

For the detailed change history, look at the commit log entries for
the is-newarp branch.
1997-03-15 18:09:08 +00:00
mycroft e01c3bbe05 Return EISDIR for directories, not EACCES. 1997-03-14 06:12:11 +00:00
gwr 84e2004691 Look for $AWK in environment 1997-03-13 22:47:20 +00:00
fvdl 9599f78147 Add missing part of MNT_NOATIME commit: add it to the flags that can
be set by the mount system call.
1997-03-13 20:20:39 +00:00
hpeyerl f385ef3e0f Probe linux emul before svr4 emul. From Christos. 1997-03-13 02:55:25 +00:00
mycroft 85b2440284 Use splclock() to block time updates, not splhigh(). 1997-02-28 04:45:35 +00:00
thorpej 61deb88642 Remove prepending "#" and "$" characters from constants so this can
be used for m68k and i386 targets.
1997-02-26 23:44:24 +00:00
leo 3052dff85d Only make the memory-disk device the default root device when
MEMORY_DISK_IS_ROOT is defined.
1997-02-24 12:20:47 +00:00
mrg 3a0a1d42da in pollscan, cast incoming fd to unsigned int. from mycroft. 1997-02-23 02:23:07 +00:00
fvdl 501f1a3eb9 Do previous change properly (pasto; should have been inside the loop). 1997-02-23 00:07:18 +00:00
fvdl 0538233e2c Implement changes to make fix for NQNFS and MFS unmounting (race conditions)
work. Not quite as good as with the Lite2 merges, but it'll do until then.

* dounmount() expects to be called with the mountpoint marked busy
* all callers of dounmount() thus make the call themselves
* if a filesystem was being unmounted, and we're woken up in vfs_busy(),
  don't reference the mountpoint struct pointer, as it has very probably
  been freed.
1997-02-22 03:22:32 +00:00