christos
36140f8037
fix olseek botch
1999-09-16 18:18:28 +00:00
chs
f3a668ed84
eliminate the PMAP_NEW option by making it required for all ports.
...
ports which previously had no support for PMAP_NEW now implement
the pmap_k* interfaces as wrappers around the non-k versions.
1999-09-12 01:16:55 +00:00
jdolecek
cfa9258f85
Use DEBUG_LINUX exclusively. Fixes PR#7684.
1999-09-08 16:52:08 +00:00
christos
d205cc9cd4
oops, forgot to include new files.
1999-09-07 18:20:18 +00:00
christos
ffdf7a5fe8
regen
1999-09-07 06:25:14 +00:00
christos
c7897366b5
preliminary lwp support; currently staroffice breaks because set_ldt emulation
...
is borken, not because of threads problems.
1999-09-07 06:24:56 +00:00
thorpej
2c358fca82
Update for new msgctl()/semctl()/shmctl() calls.
1999-08-25 04:52:06 +00:00
thorpej
03a42efc4b
Regen.
1999-08-25 04:51:06 +00:00
thorpej
0dc5bd44d5
Update for new SVID IPC calls, and also update the list of syscalls
...
to include the complete set as of 9.x.
1999-08-25 04:50:53 +00:00
thorpej
0d32655143
Completely rewrite the HP-UX SVID IPC compat calls.
1999-08-25 04:50:08 +00:00
thorpej
c1f3fb3299
Regen.
1999-08-25 04:48:48 +00:00
thorpej
710fa26673
Update for new msgctl()/semctl()/shmctl().
1999-08-25 04:48:21 +00:00
thorpej
9244fc5b3e
Add compatibility calls for the 1.4 System V IPC *ctl() calls, and
...
update the 1.0 compat calls.
1999-08-25 04:47:12 +00:00
thorpej
ed1f903927
Regen.
1999-08-25 04:45:43 +00:00
thorpej
943b6fe91f
Update for new msgctl()/semctl()/shmctl(), and add fhopen(), fhstat(),
...
and fhstatfs().
1999-08-25 04:45:24 +00:00
thorpej
d30f8c710b
Erg, fix a typo that snuck in there.
1999-08-23 20:59:33 +00:00
thorpej
0693721b59
A more-or-less complete list of the types used in HP-UX 9.x hp9000s300.
1999-08-23 18:40:43 +00:00
kleink
79ce98b212
Per discussion with Lennart Augustsson, change the behaviour to report emulated
...
encodings, too. (This is currently an issue with the eso(4) driver, which,
due to different byte orders in playing and recording directions, sets the
emulated flag for all 16-bit encodings, although it could be argued that this
is an unfortunate weakness of the query_encoding() interface.)
1999-08-22 13:43:09 +00:00
kleink
a6a1795f0e
Nuke a comment of mine (obsoleted by previous revision).
1999-08-22 13:11:38 +00:00
tron
14cc7c79c1
Regen.
1999-08-16 19:13:29 +00:00
tron
327a8cdf75
Add stime() to syscalls table.
1999-08-16 19:13:01 +00:00
tron
c3ea560498
Add emulation for Linux stime(2) required for MuPAD's X11 interface.
1999-08-16 19:06:29 +00:00
simonb
299578ebd5
Spell "privilege" correctly (correct spelling from Jonathan Stone).
1999-08-16 02:59:22 +00:00
thorpej
eb20bbc780
Change the semantics of splsoftclock() to be like other spl*() functions,
...
that is priority is rasied. Add a new spllowersoftclock() to provide the
atomic drop-to-softclock semantics that the old splsoftclock() provided,
and update calls accordingly.
This fixes a problem with using the "rnd" pseudo-device from within
interrupt context to extract random data (e.g. from within the softnet
interrupt) where doing so would incorrectly unblock interrupts (causing
all sorts of lossage).
XXX 4 platforms do not have priority-raising capability: newsmips, sparc,
XXX sparc64, and VAX. This platforms still have this bug until their
XXX spl*() functions are fixed.
1999-08-05 18:08:08 +00:00
wrstuden
3bf14d81e9
Add support for fcntl(2) to generate VOP_FCNTL calls. Any fcntl
...
call with F_FSCTL set and F_SETFL calls generate calls to a new
fileop fo_fcntl. Add genfs_fcntl() and soo_fcntl() which return 0
for F_SETFL and EOPNOTSUPP otherwise. Have all leaf filesystems
use genfs_fcntl().
Reviewed by: thorpej
Tested by: wrstuden
1999-08-03 20:19:16 +00:00
christos
2f73c9bc1d
sparc is not defined anymore... Use __sparc__ and __i386__. Also default
...
to the standard elf NOADDR...
1999-08-01 23:55:40 +00:00
drochner
44b56d917e
regen
1999-07-30 16:04:41 +00:00
drochner
287f2ffe69
emulate fcntl(F_SETLK) & Co.
...
(seti@home works now:-)
1999-07-30 16:03:49 +00:00
rh
cfa2c0bd79
Remove superfluous NULL argument from proclist_lock_read() call.
1999-07-25 08:55:46 +00:00
thorpej
01a8cffe77
Add a read/write lock to the proclists and PID hash table. Use the
...
write lock when doing PID allocation, and during the process exit path.
Use a read lock every where else, including within schedcpu() (interrupt
context). Note that holding the write lock implies blocking schedcpu()
from running (blocks softclock).
PID allocation is now MP-safe.
Note this actually fixes a bug on single processor systems that was probably
extremely difficult to tickle; it was possible that schedcpu() would run
off a bad pointer if the right clock interrupt happened to come in the
middle of a LIST_INSERT_HEAD() or LIST_REMOVE() to/from allproc.
1999-07-22 21:08:30 +00:00
thorpej
32e1fd0d03
Move the call of cpu_wait() out of the wait4() functions, and into the
...
body of reaper(), right before the call to uvm_exit(). cpu_wait() must
be done before uvm_exit() because the resources it frees might be located
in the PCB.
1999-07-20 21:54:05 +00:00
jtk
92bf84ec68
implement emulation of SIOCGIFHWADDR, PR 7997
1999-07-17 22:03:55 +00:00
jtk
c13299119a
add LINUX_SIOCGIFHWADDR
1999-07-17 21:46:28 +00:00
thorpej
c581bf97c5
A few things to make the Linux clone(2) emulation work a bit better:
...
- When the exit signal is specified to be 0, don't just assume they
meant SIGCHLD. In the Linux world, this appears to mean "don't deliver
an exit signal at all".
- Simplify P_EXITSIG(); don't check against initproc here, just change
the exit signal to SIGCHLD if reparenting to initproc.
A very simple clone(2) test program now works, and the MpegTV package
starts, but doesn't run properly yet (I believe there is a separate
bug which keeps it from working properly).
1999-07-15 23:18:41 +00:00
kleink
dfa5aad003
Regen.
1999-07-12 22:04:00 +00:00
kleink
e79a283e47
XSH5: change function signature to `void *sbrk(intptr_t)'.
1999-07-12 21:55:19 +00:00
cgd
2055d9d08d
emulate (parts of) flock
1999-06-26 01:24:41 +00:00
cgd
1e29f2fb1f
convert flock struct
1999-06-26 01:23:23 +00:00
cgd
b9c997eba9
flock struct and related constants and types
1999-06-26 01:21:30 +00:00
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