kleink
636443752e
Nuke a couple of non-local prototypes which are already declared in either
...
<sys/buf.h>, <sys/mount.h> or <sys/vnode.h>.
1998-06-08 15:52:07 +00:00
thorpej
618c279d16
Add fine-grained locking. Still one refinement to make, which will be
...
done in a separate commit.
1998-06-06 02:25:46 +00:00
kleink
4648a78bba
Regen: addition of fdatasync().
1998-06-05 20:36:53 +00:00
kleink
e9d6f5e996
Per IEEE Std 1003.1b-1993, implement the fdatasync() system call which is
...
identical to fsync() with the expecption of not being required to synchronize
file status information.
1998-06-05 20:31:36 +00:00
kleink
382743ada3
Convert fsync vnode operator implementations and usage from the old `waitfor'
...
argument and MNT_WAIT/MNT_NOWAIT to `flags' and FSYNC_WAIT.
1998-06-05 19:53:00 +00:00
kleink
b5a587ab63
Regen: fsync argument change.
1998-06-05 19:41:21 +00:00
kleink
c77a008cc2
Replace the `waitfor' argument to the fsync vnode operator with a `flags'
...
argument.
1998-06-05 19:38:56 +00:00
kleink
4c3bf73d01
Regen: mlock() and munlock() prototype changes.
1998-05-30 22:23:30 +00:00
kleink
bb7e6a0bdd
Per XSH98, const'ify the `addr' arguments to mlock() and munlock().
1998-05-30 22:21:03 +00:00
kleink
2a4b2482f5
Permit checking the availability of the POSIX File Synchronization Option
...
(a/k/a fsync(2)), System V style message queues, semaphores and shared memory
at runtime by adding a sysctl variable for each.
1998-05-24 19:52:01 +00:00
matt
b2c24dbcbe
Add an if_drain to the ifnet structure (call when the system is low
...
on mbufs). Add code to m_reclaim to call if_drain in each ifnet
that has one set. Remove register from declarations.
1998-05-22 17:47:21 +00:00
thorpej
ad7a87400a
defopt LOCKDEBUG
1998-05-20 01:32:29 +00:00
pk
d0e85dde99
Inline vref/vrele in vclean() because:
...
* we already have the vnode interlock, so vref() should not ask for it again.
* we call VOP_RECLAIM/VOP_INACTIVE(), which shouldn't be duplicated in vrele().
1998-05-18 14:59:49 +00:00
pk
addb5d9572
VOP_CLOSE() takes F* flags, not IO_* flags.
1998-05-08 21:02:35 +00:00
kleink
fe2d01988e
Fix some arithmetics lossage on typeless pointers.
1998-05-08 18:18:55 +00:00
kleink
bd6d376a49
Various SysV IPC prototype changes.
1998-05-07 18:00:49 +00:00
kleink
fb27bb18d3
Regen: various SysV IPC prototype changes.
1998-05-07 17:24:30 +00:00
kleink
e3611654cd
Several SYSV IPC prototype changes.
1998-05-07 17:08:42 +00:00
enami
9ad895e33c
Backout previous issignal() change so that gdb can trace a process
...
which has subprocess again; the lite2 change conflicts our local change.
1998-05-07 00:45:16 +00:00
thorpej
7f21dfafc1
Add monotonically increasing "current time" stamps for pfslowtimo() and
...
pffasttimo().
1998-05-06 01:11:46 +00:00
christos
1efd649b47
Regen
1998-05-02 18:34:13 +00:00
christos
02cecf686a
New fktrace syscall from Darren Reed [with fixes from me]
1998-05-02 18:33:19 +00:00
thorpej
73863dd3c9
Pass vslock() and vsunlock() a proc *, rather than implicitly operating
...
on curproc.
1998-04-30 06:28:57 +00:00
mycroft
f327fee4ca
Fix KTROP_CLEARFILE so it does the same thing as KTROP_CLEAR (i.e. vrele()
...
rather than vn_close()). Fixes PR 5357.
1998-04-28 22:27:22 +00:00
kleink
82eb51ee05
In soshutdown(), decouple the evaluation of the `how' argument from FREAD
...
and FWRITE; use SHUT_{RD,WR,RDWR} instead.
Also, return EINVAL if `how' is invalid.
1998-04-27 13:31:45 +00:00
thorpej
7a239c12c6
In vfs_unmountall(), if curproc is NULL, abort, because unmounting
...
puts the requesting process to sleep until the file systems buffers
have flushed, and sleeping with a NULL curproc will cause a fault.
1998-04-26 19:10:33 +00:00
thorpej
cbc64bb02d
Make vfs_shutdown() look a little nicer.
1998-04-26 18:58:54 +00:00
mycroft
359fa37f9a
Fix a condition where we might erroneously write out a buffer with garbage
...
left in it.
Fixes PR 5354.
1998-04-26 14:45:23 +00:00
matthias
818f5df269
new command "config" to set type (for c), constraint and printmodifier.
1998-04-25 19:48:27 +00:00
matt
754c43dcfc
Hook for 0-copy (or other optimized) sends and receives
1998-04-25 17:35:18 +00:00
jonathan
6c0abe64fc
defopt NTP and PPS_SYNC, in preparation for adding PPS support.
1998-04-22 07:08:11 +00:00
thorpej
2018d40811
Allocate kernel virtual address space for the U-area before allocating
...
the new proc structure when performing a fork. This makes it much
easier to abort a fork operation and return an error if we run out
of KVA space.
The U-area pages are still wired down in {,u}vm_fork(), as before.
1998-04-09 00:23:38 +00:00
mycroft
ca63148e3d
Oops; forgot to update prototype.
1998-03-30 06:18:05 +00:00
mycroft
f1ed6cae04
Argument to main() is no longer used.
1998-03-30 06:15:44 +00:00
mrg
af54a244f4
add missing int to typedef
1998-03-30 02:32:38 +00:00
mrg
f0fc5e8ca7
remove register from decl.
1998-03-29 05:19:43 +00:00
kleink
5d9a1f3207
Regen: syscalls.master changed.
1998-03-27 13:09:52 +00:00
kleink
3a1500efe9
Per X/Open CAE Spec Issue 5 Version 2, change the buffer size argument of
...
readlink() from type `int' to type `size_t'. This isn't an ABI change, since
the calling convention of our only LP64 platform (the Alpha) already promotes
this argument to a `long'.
This may not be the final action on this matter; readlink() still returns
an `int', which may change in a future revision of the standard.
1998-03-27 13:02:20 +00:00
thorpej
b436157e65
Make proc0 use the statically-allocate vmspace0 again, and make it use
...
the kernel's pmap, since proc0 (and other that share its address space)
are kernel-only processes, and should never contain userspace mappings.
This makes it easier to detect errors, like entering user mappings
for kernel processes, in pmap modules, and makes some sense, considering
that kernel processes are really just "thread contexts" for the kernel.
1998-03-27 01:52:01 +00:00
thorpej
272d8a4a38
Process 2 (the pagedaemon) always runs in kernel space, so share VM
...
space with proc0.
1998-03-22 18:22:07 +00:00
mycroft
2bb5067e13
Move the code to wait for carrier on a tty into a common function, since it
...
depends only on device-independent state bits.
Implement SunOS-style `dialout' devices.
1998-03-22 00:55:37 +00:00
mycroft
2ada4b4af1
Replace TS_WOPEN with t_wopen, per mail on tech-kern.
1998-03-21 04:02:47 +00:00
kleink
071ab13ebb
Move the permission check in change_owner() back to ufs_vnops::ufs_chown()
...
again - the facility required in this context would be a filesystem-specific
super-user determination, which is not available yet. Also, add some
clarification to a comment.
1998-03-10 11:49:33 +00:00
fvdl
1d02bb10d8
Clarify vget() comment a bit.
1998-03-04 09:13:48 +00:00
thorpej
9ebbb62608
Export spechash_slock; it's used outside of vfs_subr.c
1998-03-03 02:22:00 +00:00
thorpej
0080eaa0f5
Don't panic if DIAGNOSTIC in cluster_rbuild() if we aren't able to shed
...
memory in a buffer returned by geteblk(). Instrument the number of
occurrences.
1998-03-02 19:28:07 +00:00
ross
94ae870894
Compile post-lite2 with #ifndef DIAGNOSTIC
1998-03-01 09:51:29 +00:00
fvdl
78447a3cfd
Regen.
1998-03-01 02:29:59 +00:00
fvdl
e5bc90f40c
Merge with Lite2 + local changes
1998-03-01 02:20:01 +00:00
perry
a5385186b1
regen
1998-02-25 21:30:36 +00:00
perry
56c01cbd82
change second parm of sysarch() from char * to void *
1998-02-25 21:24:56 +00:00
chuck
5ad9218203
fix uvm-related protection error: we can't write protect the
...
vmcmd_map_readvn() area until after we do vn_rdwr(). should fix
problem reported by sean doran.
1998-02-23 18:53:22 +00:00
hannken
1bb761e96f
Didn't compile with option MEMORY_DISK_HOOKS.
1998-02-22 12:53:53 +00:00
mycroft
28e8037334
Fix missing newline in time zone warning.
1998-02-20 07:22:14 +00:00
pk
201f7cf6b4
Add option to use "static" storage provided by the caller.
...
From Matthias Drochner.
1998-02-19 23:51:48 +00:00
thorpej
95cd40bf13
Regen; makesyscalls.sh changed
1998-02-19 03:31:11 +00:00
thorpej
78a9bfbb1c
Argh, protect userland from includes in the syscall names file.
1998-02-19 03:30:24 +00:00
thorpej
2fc4c3415a
Include the UNION option header.
1998-02-19 00:53:46 +00:00
thorpej
990ca1baa0
Regen; syscalls.master and makesyscalls.sh changed.
1998-02-19 00:53:17 +00:00
thorpej
58fff16650
Include the NFS and LFS option headers.
1998-02-19 00:52:14 +00:00
thorpej
b0b3787d14
Include the NFS option header.
1998-02-19 00:47:02 +00:00
thorpej
0640c5a64f
Put #include directives in the system call names file, too, so we can
...
generate dependencies on optional system calls.
1998-02-18 23:14:55 +00:00
thorpej
9a3b52d482
Yay! This file is finally DEAD DEAD DEAD!
1998-02-18 07:17:13 +00:00
thorpej
d1f0dbf1b1
Don't use vfssw[], it's gone; use vfs_list instead.
...
Implement vfs_attach() and vfs_detach(), which add and remove file systems
from the kernel.
1998-02-18 07:16:41 +00:00
thorpej
6c57a3c322
Change vfs_opv_init_explicit() to not allocate the vnode operations
...
vectors; defer that to vfs_opv_init().
Change the interface to vfs_opv_init() and export it; it now takes a
pointer to an array of vnodeopv_desc *'s to initialize. Allocate
the vnode operations vectors here. Called by vfs_attach().
Implement vfs_opv_free(), which deallocates the vnode operations
vectors. Called by vfs_detach().
Change vfsinit() to build the initial vfs_list by traversing the
vfs_list_inital[] table, and vfs_attach()'ing those file systems.
Also, initialize special vnodeopv_descs (dead, fifo, spec) which
are not associated with any particular file system.
1998-02-18 07:15:30 +00:00
thorpej
c7a0984b02
vfssw[] is gone; use vfs_list instead.
1998-02-18 07:11:46 +00:00
thorpej
da61b242a0
Use vfs_attach()/vfs_detach().
1998-02-18 07:11:21 +00:00
kleink
f339e80ad6
Regen: syscalls.master change (addition of __posix_chown(), __posix_fchown(),
...
__posix_lchown(); posix_rename() -> __posix_rename()).
1998-02-14 20:05:53 +00:00
kleink
3404e6deb3
Implement __posix_chown(), __posix_fchown() and __posix_lchown(). Also,
...
rename posix_rename() to __posix_rename() to follow this convention.
1998-02-14 20:01:05 +00:00
kleink
3ef309317a
* Factor out some permission-checking code from ufs_setattr() into
...
change_owner().
* Change the semantics of chown(), fchown() and lchown(): when requesting a
change of the owner of a file, clear the set-user-id bit; analogous behaviour
for group changes.
* Since the above is a violation of the semantics specified by POSIX and
X/Open, add corresponding compatibility syscalls: __posix_chown(),
__posix_fchown(), __posix_lchown(). (Neither fchown() nor lchown() is
specified by POSIX; the prefix is intended to reflect the semantics.)
* Rename posix_rename() to __posix_rename() to follow the above convention.
1998-02-14 19:49:43 +00:00
kleink
59fe905973
Fix variable declarations: register -> register int.
1998-02-14 19:34:12 +00:00
thorpej
c1538fb038
Implement TIOCGSID.
1998-02-14 01:26:50 +00:00
thorpej
50c9f48319
Implement getsid(2), as defined by XPG4.2: returns the process group ID
...
of the session leader of the specified process's session.
1998-02-14 01:17:51 +00:00
thorpej
6da644fd03
Regen: syscalls.master changes (getsid(2))
1998-02-14 00:40:45 +00:00
thorpej
da187f7f6d
Reserve syscalls 283, 284, and 285 for 3 up-coming POSIX systems calls,
...
per kleink. Add XPG4.2's getsid(2) at #286 .
1998-02-14 00:39:33 +00:00
thorpej
d2924ae854
Prevent the session ID from disappearing if the session leader exits
...
(thus causing s_leader to become NULL) by storing the session ID separately
in the session structure. Export the session ID to userspace in the
eproc structure.
Submitted by Tom Proett <proett@nas.nasa.gov>.
1998-02-14 00:37:26 +00:00
kleink
af9cc34b3c
Add ONOCR and ONLRET output modes, from XPG4.2.
1998-02-13 21:53:44 +00:00
tls
561bc2f4ad
Remove rounding-down of hash size in hashinit(); support non &hashmask hash functions such as % [prime number] without bletcherous hacks.
1998-02-13 17:36:41 +00:00
kleink
0dc9b5452d
Fix variable declarations: register -> register int.
1998-02-12 20:39:41 +00:00
mrg
d90485202c
- add defopt's for UVM, UVMHIST and PMAP_NEW.
...
- remove unnecessary UVMHIST_DECL's.
1998-02-10 14:08:44 +00:00
scottb
876dc027a1
added support for SCO UNIX (derived from iBCS2)
1998-02-09 01:29:10 +00:00
thorpej
1305ecbe62
Allow callers of uvm_km_suballoc() to specify where the base of the
...
submap _must_ begin, by adding a "fixed" boolean argument.
1998-02-08 06:15:53 +00:00
chs
ea8413cff7
whoops! undo GC, these are still used by OLDVM.
...
not paying attention...
1998-02-07 16:23:35 +00:00
chs
f64abc7b4c
add flags arg to hashinit(), to pass to malloc().
1998-02-07 02:44:44 +00:00
chs
0711fdaf0b
fix a locking problem by replacing the call to uvm_kernacc()
...
with an inlined version that uses kmem_map instead of kernel_map.
1998-02-07 02:40:36 +00:00
chs
d7d62b7ad3
snazzier LOCKDEBUG code.
1998-02-07 02:14:04 +00:00
chs
a4a3a88958
GC unused stuff.
1998-02-07 02:13:00 +00:00
thorpej
6b1ff3c892
When copying out multiple control messages, ensure that the next control
...
message is aligned. From David Borman <dab@bsdi.com>.
1998-02-06 23:19:26 +00:00
mrg
5ef401eaaf
oops, forgot to add this file earlier.
1998-02-05 14:58:45 +00:00
mrg
1a8c7604f4
initial import of the new virtual memory system, UVM, into -current.
...
UVM was written by chuck cranor <chuck@maria.wustl.edu>, with some
minor portions derived from the old Mach code. i provided some help
getting swap and paging working, and other bug fixes/ideas. chuck
silvers <chuq@chuq.com> also provided some other fixes.
this is the rest of the MI portion changes.
this will be KNF'd shortly. :-)
1998-02-05 07:59:28 +00:00
thorpej
96f3f45d08
When loading a VFS LKM, use vfs_getopsbyname() to check if the file system
...
already exists.
1998-02-03 09:18:03 +00:00
thorpej
ec98cfce8a
sys_mount(): Use vfs_getopsbyname() rather than groveling the vfssw[]
...
manualls.
1998-02-03 09:11:55 +00:00
ross
7516424fe6
Teach the NTP PLL how to lock when hz == 1000.
1998-01-31 10:42:11 +00:00
thorpej
4c54445530
Use offsetof() from libkern.h
1998-01-28 02:35:10 +00:00
thorpej
2ee3e0153d
Generate dependencies on the exec format options EXEC_AOUT, EXEC_ECOFF,
...
EXEC_ELF32, EXEC_ELF64, and EXEC_SCRIPT.
1998-01-22 01:32:14 +00:00
thorpej
ea9ade0496
Generate dependencies on the INSECURE option.
1998-01-22 01:18:30 +00:00
thorpej
6428828e64
Const'ify the extent name.
1998-01-21 22:33:49 +00:00
thorpej
66abe4217c
Implement an activity log for malloc() and free(), useful for tracking
...
down "Data modified on freelist" and "muliple free" problems.
The log is activated by the MALLOCLOG option, and the size of the
event ring buffer is controlable via the MALLOGLOGSIZE option (default
is 100000 entries).
From Chris Demetriou, cleaned up a little by me per suggestions in the
e-mail from Chris that contained the code.
1998-01-21 22:24:32 +00:00
thorpej
561056f2e2
Grab a fix from 4.4BSD-Lite2: open(2) with O_FSYNC and MNT_SYNCHRONOUS
...
had not effect. Fix: check for either of these flags in vn_write(),
and pass IO_SYNC down if they're set.
1998-01-14 22:08:44 +00:00
perry
3fe138c146
RCS Id Police.
1998-01-09 08:03:16 +00:00