thorpej
12347b2657
Make uvm_vslock() return the error code from uvm_fault_wire(). All places
...
which use uvm_vslock() should now test the return value. If it's not
KERN_SUCCESS, wiring the pages failed, so the operation which is using
uvm_vslock() should error out.
XXX We currently just EFAULT a failed uvm_vslock(). We may want to do
more about translating error codes in the future.
1999-06-17 15:47:22 +00:00
oster
f4628e2fda
FILE_UNUSE needs two args, not one.
1999-06-13 21:34:32 +00:00
drochner
6e2b65ec1d
regen
1999-06-09 12:38:50 +00:00
drochner
b4e4c530db
add "sys_" prefix to LFS syscalls
1999-06-09 12:33:18 +00:00
christos
354ba222e6
Regen
1999-06-09 04:50:32 +00:00
christos
b7a0cd53a2
Propagate kern changes
1999-06-09 04:50:10 +00:00
christos
4ebea99d8e
Regen
1999-06-09 04:28:24 +00:00
christos
1e6c35821b
propagate changes from kern
1999-06-09 04:27:44 +00:00
cgd
3da80f5ebd
don't vrele a bogus pointer if the namei() of the loader fails
1999-05-28 04:39:14 +00:00
pk
bd84136493
copyinst() takes a `size_t *'.
1999-05-27 14:03:05 +00:00
tron
c0567a6bc7
Add support for SETALL and GETALL to the Linux emulation of semctl()
...
and improve handling of SETVAL. Patches supplied by YAMAMOTO Jiro in
PR kern/7621.
1999-05-27 13:30:40 +00:00
thorpej
497248ca55
XXX Pass VM_PROT_NONE to uvm_vslock() as access_type. Why are we even
...
vslocking here?! copyout() on its own seems to suffice just about everwhere
else, and it's not like the process is going to exit; it's in a system
call!
1999-05-26 01:07:06 +00:00
thorpej
a2dc12021c
Oops, completely forgot to translate the exit signal in clone(2).
1999-05-17 19:26:33 +00:00
thorpej
0f74e48ca5
Emulate the Linux {get,set}resgid(2) system calls.
1999-05-14 18:45:31 +00:00
thorpej
8a61761cc5
Emulate the Linux {get,set}resuid(2) system calls.
1999-05-14 18:44:50 +00:00
thorpej
dd623ce325
Regen.
1999-05-14 18:44:15 +00:00
thorpej
a03622b33f
Emulate the Linux vfork(2) (which is like NetBSD's __vfork14(2)),
...
{get,set}resuid(2), and {get,set}resgid(2). Note a few more system
calls that we don't yet emulate.
1999-05-14 18:43:58 +00:00
thorpej
5f1b28961e
Regen.
1999-05-14 18:43:20 +00:00
thorpej
e0a6808cef
Emulate the Linux vfork(2) (which is like NetBSD's __vfork14(2)),
...
{get,set}resuid(2), and {get,set}resgid(2). Note a few more system
calls that we don't yet emulate.
1999-05-14 18:43:01 +00:00
thorpej
64d90992b4
Regen.
1999-05-14 18:41:20 +00:00
thorpej
ba8fcafa16
Emulate the Linux vfork(2) (which is like OSF/1 vfork(2) and NetBSD's
...
__vfork14(2)) and {get,set}resuid(2). Linux does not have {get,set}resgid(2)
on their Alpha port!
1999-05-14 18:39:38 +00:00
thorpej
087adcea52
Regen.
1999-05-13 23:43:15 +00:00
thorpej
fa1c5fed1a
Emulate the Linux clone(2) system call.
1999-05-13 23:42:34 +00:00
thorpej
053ec76d86
Fully emulate the Linux wait4(2) system call, including the __WCLONE
...
flag (which is equivalent to our new WALTSIG).
1999-05-13 01:00:50 +00:00
thorpej
5512f35a12
Define the flags used by the Linux wait4() system call.
1999-05-13 00:31:57 +00:00
thorpej
e2c674e2c6
Add scheduling-related definitions. Currently we have the flags passed
...
to the __clone(2) system call.
1999-05-12 19:49:09 +00:00
cgd
c283289b46
For lack of a bit, the letter was lost. For lack of the letter, the
...
macro was lost. For lack of the macro, the function was lost. For lack
of the function, the syscall was lost. For lack of the syscall, the
application was lost. For lack of the application, my time was lost.
1999-05-10 21:41:07 +00:00
cgd
9ee892559b
regen
1999-05-10 06:00:10 +00:00
cgd
798cd0a332
start at (new) sendmsg and recvmsg. right now, the former doesn't
...
handle control messages and the latter is just a stub.
1999-05-10 05:58:44 +00:00
cgd
55c7aec3cc
rename xopen-ish iovec and msghdr structs
1999-05-10 04:18:22 +00:00
cgd
21c7b563a8
msghdr and x/open iovec structs
1999-05-10 03:58:50 +00:00
cgd
99cc65e9ba
regen
1999-05-10 03:34:20 +00:00
cgd
4bf16b94f4
old accept -> compat_43_sys_accept
1999-05-10 03:33:04 +00:00
cgd
bf29d6c987
regen
1999-05-10 03:00:27 +00:00
cgd
1c05179cd4
usleep_thread: round ticks up, don't sleep forever, use better wchan
1999-05-10 02:55:57 +00:00
cgd
1e2f18cb6a
listen is the same as native
1999-05-10 02:54:57 +00:00
cgd
f7c70eaf0e
regen
1999-05-10 01:59:41 +00:00
cgd
726fed408a
plink, plink.... socketpair!
1999-05-10 01:58:37 +00:00
kleink
fe0ce0cd42
Need to explicitly include <machine/cpu.h> for a cpu_wait() macro definition.
1999-05-08 01:23:01 +00:00
drochner
192b3c733c
Build libraries for kernel/standalone code from within their compilation
...
directories and use .PATH to lookup the source files.
(Formerly, the libs were built from the source dirs, with MAKEOBJDIR
set to the compilation directory.)
This solves 2 problems:
-"mkdep" and "make" are now consistent about the file lookup, this fixes
bad interactions with amd reported in PR bin/7374 (Arne Juul) and
lossage reported by Andrew Gillham ("obj" dirs and relative paths still
don't work well together)
-kernel compile trees can be moved around without forcing a new
"make depend" - fixing PR kern/4021 by Martin Husemann
1999-05-07 14:28:50 +00:00
thorpej
e3669c3393
Add "use counting" to file entries. When closing a file, and it's reference
...
count is 0, wait for use count to drain before finishing the close.
This is necessary in order for multiple processes to safely share file
descriptor tables.
1999-05-05 20:01:01 +00:00
cgd
3b5a8a7db7
shuffle (sort)
1999-05-05 01:51:31 +00:00
cgd
5e1a5ebf21
clean up sigset_t manipulation macros
1999-05-05 00:57:43 +00:00
cgd
ceff265279
shuffle (alphabetize)
1999-05-05 00:48:30 +00:00
cgd
ff38fb6396
regen
1999-05-04 05:23:05 +00:00
cgd
e7f2a6f938
stub classcntl(). for now, it returns ENOSYS. (a stub for classcntl()
...
was suggested by Anders Magnusson <ragge@ludd.luth.se>.)
1999-05-04 05:17:22 +00:00
cgd
e24a4116bc
add a few XXXs
1999-05-04 05:11:03 +00:00
cgd
debeb21304
regen
1999-05-04 05:00:21 +00:00
cgd
ab7cdebda6
emulate shm*(), but only so far as to return ENOSYS for now (until
...
they're really needed). put them in their own file because when we
need to emulate them, they'll need a bunch of code.
1999-05-04 04:59:21 +00:00
cgd
2165378111
add a 'clean' target to nuke files built from syscalls.master, so that
...
it's easier to commit non-generated files all at once.
1999-05-04 04:56:44 +00:00
cgd
d0937ee8b6
don't pull in osf1_syscall.h
1999-05-04 02:45:35 +00:00
cgd
15e8e0d207
IPC key_t
1999-05-04 02:44:43 +00:00
cgd
759a1e3cd7
regen
1999-05-04 02:12:33 +00:00
cgd
bd7a54454d
pathconf/fpathconf
1999-05-04 02:12:15 +00:00
cgd
a0a7b0de30
protection-related bits -> osf1_prot.c
1999-05-01 05:49:01 +00:00
cgd
ca7738a519
clean up ordering, add a comment or two
1999-05-01 05:43:52 +00:00
cgd
12df8bf0da
{get,set}rlimit, getrusage -> osf1_resource.c
1999-05-01 05:41:56 +00:00
cgd
8d9e0684d2
descriptor-frobbing syscalls (fstat, fcntl(), lseek(), etc.) ->
...
osf1_descrip.c.
1999-05-01 05:34:59 +00:00
cgd
39ba96ee96
utimes() belongs here
1999-05-01 05:33:36 +00:00
cgd
789e810c20
get/settimeofday, interval timers -> osf1_time.c
1999-05-01 05:25:37 +00:00
cgd
bf9d06e035
typical filename using syscalls (open(), access(), execve(), etc.) -> osf1_file.c
1999-05-01 05:18:01 +00:00
cgd
deeb289def
sys_generic-ish bits move to osf1_generic.c
1999-05-01 05:06:46 +00:00
cgd
f493e92106
clean up vm-related headers
1999-05-01 04:59:42 +00:00
cgd
d3b6da7da3
and the socket calls move
1999-05-01 04:57:15 +00:00
cgd
ffc61cf092
shuffle some conversion bits around that were missed earlier
1999-05-01 04:47:00 +00:00
cgd
9cc30ed036
needs mount.h
1999-05-01 04:38:39 +00:00
cgd
2d25ceb2d2
pull in compat_util.h
1999-05-01 04:38:20 +00:00
cgd
e42f7d331f
move mmap() and related functions into their own file
1999-05-01 04:34:20 +00:00
cgd
170b003d0b
shuffle bits around. separate conversion conversion functions and tables
...
from the code that uses them, just as I previously separated out the
OSF/1 definitions and structures from the code that translates to and
from them.
1999-05-01 02:57:08 +00:00
cgd
38da682259
Moved to osf1_cvt_errno.c,v
1999-05-01 02:16:01 +00:00
cgd
333154d794
Moved from osf1_errno.c,v
1999-05-01 02:16:00 +00:00
cgd
af8a9059d3
compute the value to be used for e_arglen via howmany(value, sizeof (char *)),
...
rather than just "value / sizeof (char *)". While in these cases the latter
works as well, the former's a better example for other uses to copy (since
it handles the non-integral multiple case correctly).
1999-04-30 23:07:01 +00:00
cgd
1bce8c40fc
ep_arglen is in units of 'sizeof (char *)', not in units of bytes. use
...
howmany(value, sizeof (char *)) to get the right value.
1999-04-30 23:02:06 +00:00
cgd
5a93f3c9b1
emulate wait4(), put some guts into sysinfo(), and redo fcntl()
...
F_{GET,SET}FL emulation.
1999-04-30 05:25:34 +00:00
cgd
28410181b2
return error if unsupported sigaltstack flags used
1999-04-30 05:24:04 +00:00
cgd
a928d381b2
regen
1999-04-30 04:36:04 +00:00
cgd
d2d8e961fe
emulate wait4, clean up sigreturn args, emulate {get,set}domainname
1999-04-30 04:33:51 +00:00
cgd
e836b093b4
nuke most fcntl() F* flags, and note that O_* should be used instead.
1999-04-30 04:31:45 +00:00
cgd
c21c5d0c2d
systeminfo.h SI_* constants, wait.h W{NOHANG,UNTRACED}, plus spacing cleanup
1999-04-30 02:12:03 +00:00
cgd
afe914207b
we can actually setitimer() now
1999-04-30 01:57:27 +00:00
cgd
94a4e36ed2
use osf1-specific sigcode
1999-04-30 01:46:09 +00:00
cgd
6abb3f7b37
regen
1999-04-29 23:39:55 +00:00
cgd
59c243a0b7
emulate setitimer(), but for now just return EINVAL. stub sysinfo() (XXX).
1999-04-29 23:37:23 +00:00
cgd
e9bc2c7ae3
need to emulate setitimer and sysinfo
1999-04-29 22:08:49 +00:00
cgd
2b9f4ca12d
in NetBSD, top 32 bits of ioctl com are always 0
1999-04-29 17:34:49 +00:00
thorpej
0792acce0d
Regen.
1999-04-29 17:20:37 +00:00
thorpej
fb1f070eba
Add entry for set_program_attributes().
1999-04-29 17:19:47 +00:00
thorpej
8ef6e2a635
Implement set_program_attributes().
1999-04-29 17:18:59 +00:00
christos
4c1bb7794a
Need sunos_sigcode and sunos_esigcode now that our sigreturn is
...
different.
1999-04-29 16:14:04 +00:00
christos
a38ee86714
Make ss_size something reasonable (not 0) so sigaltstack does not fail.
...
Pull me up plz!
1999-04-29 16:09:12 +00:00
cgd
a509481404
itimerval and related constants
1999-04-29 05:54:13 +00:00
cgd
ee325de1bb
regen for syscalls.master
1999-04-29 02:11:51 +00:00
cgd
1041a1c770
emulate access() and mprotect(), hook into COMPAT_43 get{peer,sock}name
1999-04-29 02:10:07 +00:00
cgd
f4507cddca
mprotect() and access()
1999-04-29 02:08:58 +00:00
cgd
cc4f9f6afb
access() flags
1999-04-29 02:06:50 +00:00
cgd
52b80ff167
fix some bugs (good to get to the point where bug-fixing is an issue!):
...
* when copying out the timezone in gettimeofday, don't accidentally copy
out the timeval again (into the timezone buffer).
* mmap() PROT_WRITE and PROT_EXECUTE imply PROT_READ.
1999-04-28 06:01:51 +00:00
cgd
278f92716f
regen for updated syscalls.master
1999-04-28 05:10:38 +00:00
cgd
d3708a1699
more timeval-related lossage. fixed some fns, added settimeofday & utimes
1999-04-28 05:09:47 +00:00
cgd
fc1142ac44
be more careful about getting the exec_name emul arg field
1999-04-28 02:49:38 +00:00
cgd
a61beae31e
regen for changed syscalls.master
1999-04-28 02:34:47 +00:00
cgd
a9deaa593a
emulate select(), to get the timeval right.
...
And CGD said, "Let there be eyes!" And there were eyes, and it was good.
1999-04-28 02:34:25 +00:00
cgd
4c9a03c3b3
do easy 'f'-class ioctls
1999-04-28 02:16:07 +00:00
cgd
3cca776d42
regen for changed syscalls.master
1999-04-28 02:03:45 +00:00
cgd
28561f9679
can't use system gettimeofday, and need to implement uname
1999-04-28 02:03:13 +00:00
cgd
93e2cb1a1e
uname, gettimeofday
1999-04-28 02:02:50 +00:00
cgd
ccd0018aca
uname and timezone structures, and some minor cleanup
1999-04-28 02:00:36 +00:00
cgd
6e5469dc42
implement osf1_sys_madvise()
1999-04-27 18:45:22 +00:00
cgd
3cb15b5b9b
regen for changed syscalls.master
1999-04-27 18:41:37 +00:00
cgd
df6ae494ef
fix madvise args
1999-04-27 18:40:53 +00:00
cgd
99df19a561
madvise operation definitions
1999-04-27 18:38:07 +00:00
cgd
3d0c9ec2a8
kill a couple of debugging printfs i accidentally left in
1999-04-27 17:56:52 +00:00
cgd
8f40430549
regen for changed syscalls.master
1999-04-27 17:53:11 +00:00
cgd
6b9bb2a3cb
fix getrusage args
1999-04-27 17:52:44 +00:00
cgd
009c460d25
emulate getrusage, add some XXXs
1999-04-27 17:50:59 +00:00
cgd
9a71b695bd
osf1_timeval and osf1_rusage and related constants
1999-04-27 17:50:23 +00:00
cgd
44cbebec30
note that his should be shot from a cannon
1999-04-27 16:09:28 +00:00
cgd
1f9cfb5d53
update for current reality
1999-04-27 16:08:40 +00:00
christos
b69c7692af
From cgd again: pbuf == path on failure.
1999-04-27 15:42:37 +00:00
christos
c4f1bab08e
Make the usage consistant and document it:
...
if the path was given in a user buffer, return the new path in
a user buffer.
if the path was given in a kernel buffer, allocate a new kernel buffer
to return the new path; the caller is responsible for freeing the buffer
if we fail always set the new path to NULL.
This usage broke when I adde the /../ shortcut. Noted by cgd.
1999-04-27 11:36:47 +00:00
cgd
f355b96b7a
note that this document is now out of date
1999-04-27 06:39:49 +00:00
cgd
7e3ad9e963
evil hack to work around non-fixed mmap requests
1999-04-27 06:37:12 +00:00
cgd
6ef8f59ae6
dynamic executable/loader handling, done right
1999-04-27 05:38:08 +00:00
cgd
743038a6cb
clean up for ecoff_machdep.h changes, look for the loader
1999-04-27 03:19:44 +00:00
cgd
fe6198f6e2
do special OSF/1-specific ECOFF recognition (not yet complete), and
...
implement a copyargs function to do special argument copying for
emulated processes.
1999-04-27 01:45:03 +00:00
cgd
bd33916784
exec internals have been moved (and improved) to osf1_exec.c. Not much
...
there yet, but more to come.
1999-04-26 18:34:05 +00:00
cgd
bd947212ac
major(), minor(), and makedev()
1999-04-26 06:10:36 +00:00
cgd
9524149336
use fcntl() flags from osf1.h, map all of them
1999-04-26 05:57:53 +00:00
cgd
1904f78fb5
fcntl() flags
1999-04-26 05:56:34 +00:00
cgd
6d24aedc2c
table-based translation of sigaction and sigaltstack flags
1999-04-26 05:35:08 +00:00
cgd
635a7843a1
copyright notice
1999-04-26 05:32:18 +00:00
cgd
6dbaac99f9
slight cleanup of spacing
1999-04-26 04:29:43 +00:00
cgd
35a22b65fc
rlimit stuff
1999-04-26 03:30:48 +00:00
cgd
646c8f519a
resource limit definitions
1999-04-26 03:29:05 +00:00
cgd
5d3c1d0c49
use osf1.h definitions and some table-based flag translation
1999-04-26 03:10:58 +00:00
cgd
32c9cd9866
exec and mount structs/defns, and some cleanup
1999-04-26 03:07:40 +00:00
cgd
445556f304
add a section of OSF/1 types, and add many more OSF/1 structures and
...
definitions.
1999-04-26 01:24:26 +00:00
cgd
1d0207c926
const-ify flags translation tables.
...
kill some cruft, and move various flags and structure definitions into
osf1.h (not done yet).
Do a better job of translating fcntl(), and translate flags in sento()
emulation.
1999-04-26 01:23:01 +00:00
cgd
196564f8e3
remove some structs and def'ns; they're moving to osf1.h
1999-04-26 01:22:18 +00:00
cgd
637226f0ad
pull in osf1.h
1999-04-26 01:21:43 +00:00
cgd
ad10b95967
translate EAGAIN/EWOULDBLOCK properly
1999-04-26 01:16:04 +00:00
simonb
8a8e8d144f
Shut 'gcc -Wuninitialized' up.
1999-04-25 02:42:01 +00:00
eeh
96b63fc788
Don't defopt COMPAT_NETBSD32 here; it's done in sys/conf/files.
1999-04-24 19:17:33 +00:00
cgd
45a020863e
substantial cleanup, including:
...
* do more flags conversions, using the table driven converter.
* check for alternate (emulation) path in lots more places.
1999-04-24 07:23:54 +00:00
cgd
ed106195ea
cleanup: kill syscall args comments
1999-04-24 07:13:23 +00:00
cgd
d081124ca2
cleanup: nuke register
1999-04-24 07:09:49 +00:00
cgd
d7c211e583
cleanup: kill syscall args comments
1999-04-24 07:06:35 +00:00
cgd
dd4d52e331
slight hdr inclusion cleanup, get ioctl-related def'ns from osf1.h
1999-04-24 06:59:11 +00:00
cgd
8b1bcd5e9c
pull in osf1.h, not osf1_errno.h
1999-04-24 06:58:26 +00:00
cgd
2fc0019c7a
Collected OSF/1 definitions and structures, sorted by OSF/1 header.
...
Error numbers (errno.h) aren't here, since they're likely to change
(additions) more often.
1999-04-24 06:56:25 +00:00
cgd
5b217baeb1
implement a simple function, emul_flags_translate() to do table-based
...
flags translation.
1999-04-24 02:56:06 +00:00