eeh
9bd29db83b
Use #if defined(_LP64) to determine if we're generating 64-bit binaries,
...
not #if defined(alpha).
2002-05-03 00:20:56 +00:00
manu
494d226a5d
Added GETSHMASK command to prctl(). This is incomplete, we do not really
...
keep track of the shmask yet. (It could go in p->p_emuldata)
2002-05-02 17:17:29 +00:00
manu
27cb16e028
sproc: Correctly interpret NULL stack and stacklen when shared vm space is not
...
requested
2002-04-29 16:01:12 +00:00
manu
36b681f651
Added a void framework for usync_cntl(), which is another undocumented IRIX
...
system call.
2002-04-29 14:40:23 +00:00
mrg
86477819ce
regenerate.
2002-04-29 09:55:11 +00:00
mrg
0ce90a9fef
build the netbsd32_compat* objects into libcompat.a, so they are available
...
to emulations not just netbsd itself. rename the compat_10 functions to
match everything else. fixes a problem reported by julian coleman.
2002-04-29 09:53:39 +00:00
manu
adc1ff6c40
Added pread() and pwrite()
2002-04-28 20:23:21 +00:00
manu
fc1efb9ee8
Use stack rlimit for the stack size, and not the current stack size. This
...
avoids requestion 2*rlimit on second sproc call.
2002-04-28 19:42:13 +00:00
manu
c2f72d8d1c
Updated PR_GETNSHARE and added PR_TERMCHILD
2002-04-28 17:56:53 +00:00
manu
3568060679
Implements IRIX sproc(2) and friends.
...
There may be a problem with stack size overflow in this implementation
2002-04-28 17:21:58 +00:00
manu
ee5b3b3977
Added a void IRIX /dev/usema and /dev/usemaclone pseudodevice driver.
...
IRIX uses this for implementing atomics operation on semaphores
This will be filled later.
2002-04-23 05:51:14 +00:00
manu
f599dce291
Added fchdir, fchown and fchmod system calls
2002-04-23 05:47:38 +00:00
manu
0e9a3e0d43
- We now use irix_sys_mmap instead of svr4_sys_mmap
...
- initial support for MAP_AUTOGROW flag. When mapping beyond the end of file is
requested with MAP_AUTOGROW, if pages beyond the end of file are touched, the
file should be resized. We are not able to emulate this yet, so we immediatly
resize the file to fit the whole mapping.
- implements mmap64
2002-04-22 05:58:46 +00:00
manu
4678e0b326
Fixed functions to get the number of CPU in sysmp() and systeminfo(). The
...
problam was that when hw_sysctl() is used, the result is supposed to be
in userland
2002-04-20 21:25:01 +00:00
manu
ded3c31a9c
On IRIX, fcntl F_FREESP, F_ALLOCSP, F_FREESP64 and F_ALLOCSP64 commands
...
ignore the len argument. We now correctly emulate the behavior of these
commands.
2002-04-20 20:38:21 +00:00
manu
e67d46d7af
Added one more system call: msync
2002-04-20 16:56:28 +00:00
manu
21d2265eea
Fixed mistakes in irix_sys_fcntl() (missing breaks in case statement)
2002-04-20 16:20:12 +00:00
manu
d5ed80d9c6
The IRIX usinit(3) function expects a page of memory to be available at
...
address 0x200000 (disasembling usinit shows that this address is hardcoded in
libc). It uses it for locks and semaphres.
We therefore allocate this page of memory, to prevent IRIX process from
faulting when thay call usinit(3).
2002-04-20 16:19:22 +00:00
manu
1f32c2b1c4
One more unsupported feature: SGI_SATCTL
2002-04-20 07:43:35 +00:00
manu
829bfed008
Added missing irix_misc.c
2002-04-20 07:42:32 +00:00
manu
5261d673c9
Added getpgrp/setpgrp.
...
setpgrp is stolen from compat/sunos. It should probbaly be moved to
/compat/common
2002-04-16 20:15:47 +00:00
manu
08948f97d1
Added sysconf(SC_IP_SECOPTS)
2002-04-16 20:15:03 +00:00
manu
28a3cfe032
Do not restore SR on sigreturn: this could enable the user process to gain
...
unpropre privileges.
2002-04-15 20:48:12 +00:00
manu
f8c12b3107
IRIX provide a signal trampoline in libc, we now use it.
...
- the signal trampoline address is given to the kernel by a sigaction()
fourth argument
- we introduce an irix_emuldata structure to keep track of the signal
trampoline address
- we don't support per-sigaction signal trampolines, we only do per-process
- now that we use the IRIX libc signal trampoline, we do not have to handle
the errno update from the signal trampoline
- it is possible that IRIX 5 signal delivery works too, since theses binaries
will come with their own signal trampoline
2002-04-14 21:50:49 +00:00
manu
c56e133974
More comments on the new signal frame/trampoline
2002-04-13 10:52:59 +00:00
manu
5ee554064d
Reworked IRIX signal delivery so that ucontext is used instead of sigcontext
...
when SA_SIGINFO is used. The IRIX process will hence find the expected
information using the third argument of the signal handler.
We do not provide code and siginfo yet.
2002-04-12 18:44:57 +00:00
manu
78583a4567
Always define SA_SIGINFO, and keep track of it in SVR4 emulation. This is
...
needed for IRIX signal delivery.
Approved by Christos.
2002-04-12 17:37:30 +00:00
christos
10ecebd46a
implement getdents64; my full java tree builds now.
2002-04-10 18:19:34 +00:00
christos
7e9e73a53c
regen
2002-04-10 18:19:04 +00:00
christos
db952e86f3
add getdents64
2002-04-10 18:18:26 +00:00
itojun
9998fd3a57
revert previous
2002-04-10 09:53:01 +00:00
itojun
7aef2b4e07
make it compile (missing includes)
2002-04-10 09:37:51 +00:00
christos
ca4d90ffa1
Fix compile problem.
2002-04-08 14:51:29 +00:00
christos
b10c779726
#ifdef __alpha__ pal functions.
2002-04-08 14:51:18 +00:00
christos
bd432c1642
PR/16236: Joachim Koenig-Baltes: Linux emulation connect requires IPV6.
...
Apparently the sockaddr len fix was only compiled when IPV6 was enabled.
2002-04-08 14:00:31 +00:00
christos
866ad0f73f
PR/16231: Ben Harris: m68k does not compile.
2002-04-08 13:27:37 +00:00
manu
fb46073720
backed out the irix_siginfo field name change: we need different field names
...
to avoid collision with svr4_siginfo #define si_signo _info._signo and
friends.
2002-04-06 22:58:43 +00:00
manu
8e8b498d9c
Changed irix_siginfo field names to make them closer to svr4 names (and to
...
original IRIX names too)
2002-04-06 18:08:31 +00:00
christos
e9c4f70b2f
use lsi_ like all other linux emulations.
2002-04-04 22:17:29 +00:00
tron
d09c25ca9a
Set default kernel version of Linux emulation to 2.4.18 on the i386 port.
...
It has been successfully tested using SuSE 7.3 libraries and binaries with
many applications.
2002-04-04 09:32:11 +00:00
christos
cb483bd247
make this compile on archs that don't define linux signals.
2002-04-03 17:18:21 +00:00
christos
f28b55d327
provide missing types for arch's that don't have specific linux_types.h
2002-04-03 17:13:32 +00:00
christos
aa3369abe2
don't bail out if we don't have an arch/siginfo.h because we are being used
...
from userland.
2002-04-03 17:02:12 +00:00
tron
9121bc2ec4
Fix a cut and paste error in the emulation of getresgid(2): it returned
...
the effective user id as effective group id.
2002-04-03 14:28:36 +00:00
fvdl
221107a13b
Use shmat1(), and tell it to find removed segments.
2002-04-03 11:54:37 +00:00
fvdl
7fc44e13a8
Allocate the right size for the native gid_t array in setgroups16.
2002-04-03 10:17:01 +00:00
christos
fa33d13de9
Don't blow up if we don't have a machine dependend linux_signal.h.
...
kdump includes linux_signo.c
2002-04-02 23:25:07 +00:00
christos
eda21311fd
save/restore fs and gs; this should be pulled up.
2002-04-02 22:32:16 +00:00
manu
4bca6e2fd0
Added fsync
2002-04-02 20:29:52 +00:00
jdolecek
ee37f0c738
rename sysctl_linux() to linux_sysctl() and hook it into emul_linux
2002-04-02 20:23:43 +00:00
manu
062e23b4e2
Added IRIX fcntl(F_GETBSDLK) and fcntl(F_GETBSDLKW)
2002-04-02 19:58:38 +00:00
manu
456cced40e
Removed one debug line that was committed by mistake
2002-04-01 15:45:16 +00:00
manu
a98e52cc55
Added code to handle FPU and signal stack for IRIX signal delivery
...
(copied from the native version, not tested yet)
2002-04-01 13:42:36 +00:00
christos
840887afee
bring the reverse signal mapping array into linux_signo.c
2002-03-31 22:40:16 +00:00
christos
ac29fb3782
make signal array handling uniform, and put signal arrays in a separate
...
file. This is simular to errno array handling.
2002-03-31 22:22:43 +00:00
christos
018a4082cc
- #undef DPRINTF for files that are included from other files.
...
- more debugging for socketcalls
- fix sa_len if AF_INET; somehow we get passed 28 instead of 16?
2002-03-29 20:49:40 +00:00
kent
dad83731c1
pecoff_misc.c: Remove compat functions.
...
pecoff_sys*.[ch]: regen
2002-03-29 17:04:46 +00:00
christos
c9e808f0ee
1. fill in the ldt.sd_xx field, for total compat with linux.
...
2. in setregs, use gdt's instead of ldt's because linux wants to play with
all the ldts. Apparently linuxthreads uses ldt's to allocate space for
pthread_t's.
2002-03-29 17:01:49 +00:00
kent
e6ef08a13e
Exclude all compat syscalls.
2002-03-29 17:00:43 +00:00
manu
4a466c8fec
Added proper locks when calling uvm_swap_stats()
2002-03-29 09:06:54 +00:00
manu
2dd126f08e
Fixed the swap block size problem: the swap block size as used in struct
...
swapent, or as seen in userland, is dbtob(1), which turns to be 512 for all
arch for now.
In struct swapdev, there is another field for block size. This value is private
to uvm_swap.c and is only used for swap I/O on regular files. It is equal to
the underlying device block size and it is not necessarily 512.
2002-03-28 18:45:28 +00:00
manu
9278164721
- now reports accurate swap object size with swapctl(SWAP_STATS)
...
- Added two more swapctl commands: GETFREESWAP and GETSWAPVIRT.
There is a problem in the way swap block size are found here. See comment
in get_block_size().
2002-03-28 13:14:42 +00:00
manu
2ad173ef3f
Added syssgi(SETSID)
2002-03-28 12:59:35 +00:00
manu
50ac30b510
- now return real values in the rminfo system accounting structure. Theses
...
are not 100% accurate, but it should be okay for most programs
- fix a bug: we were doing the copyout of the struct on failure, not success
2002-03-28 10:37:46 +00:00
manu
5c37c50788
Use irix_sys_sigprocmask instead of svr4_sys_sigprocmask to make use
...
of the SETMASK32 command.
2002-03-28 10:36:14 +00:00
manu
fff388471d
Added the SETMASK32 command for sigprocmask(2). This is equivalent to
...
SETMASK except that the upper 32 bits are left untouched
2002-03-26 22:59:32 +00:00
manu
58537aa4d9
Fixed a typo in DEBUG_IRIX code
2002-03-26 16:58:56 +00:00
manu
a4085df772
- Uses p->p_stats->p_ru instead of p->P_ru to get ressource usage, since
...
p->p_ru sometime happens to be equal to 0xdeadbeef.
- added more debug output.
2002-03-26 16:38:12 +00:00
manu
a0fa2e7fa5
Added support for sysmp system accounting structures. Only real memory info
...
is defined yet, but it returns zeroes (will be fixed later).
2002-03-26 10:54:40 +00:00
manu
2ccdf1d7ec
Added truncate(2), ftruncate(2), truncate64() and ftruncate64(), the two latter
...
being untested yet.
2002-03-26 10:52:52 +00:00
manu
76084f5561
Added syssgi(PATHCONF), which implements pathconf(2), and syssgi(SETPGID)
...
which implements setpgid(2).
2002-03-25 20:42:50 +00:00
manu
0e9d73c741
Added support for IRIX kernel var emulation in kmem (not functionnal yet)
2002-03-25 18:43:59 +00:00
kent
d92d45e16c
Move a variable `emul_pecoff' to new file.
2002-03-25 06:44:46 +00:00
bjh21
99ba40c188
arm26->acorn26 transition.
2002-03-24 15:49:38 +00:00
jdolecek
bbee4277ca
fd_revoke(): don't assume that f_type other DTYPE_VNODE and DTYPE_SOCKET
...
is automatically bogus, make the code return EINVAL for all non-vnode
descriptors
2002-03-24 15:32:51 +00:00
jdolecek
4cfe9dc1f6
use FILE_USE()/FILE_UNUSE() as appropriate, use malloc()/free()
...
instead of MALLOC()/FREE() for variable-size allocations (sync
with kern/sys_generic.c)
XXX not tested
2002-03-24 15:19:24 +00:00
jdolecek
3089d90eeb
add explicit comment a FILE_USE() is not needed here
2002-03-24 15:12:45 +00:00
jdolecek
fc18dc8984
minor indentation fix
2002-03-24 15:03:00 +00:00
oki
b10ef43c8e
Read /usr/libexec/ld.so.dll if failed to read
...
/emul/pecoff/usr/libexec/ld.so.dll.
reported via IRC from kent, thanks.
2002-03-24 05:55:49 +00:00
jdolecek
0b5e2aba9a
Fix problem with assumption non-socket == vnode in F_{G,S}ETOWN different way
...
(revisions 1.47 & 1.48 effectively backed off):
* for all but vnodes, just fallback to sys_fcntl(); assumming
state of support for F_SETOWN/F_GETOWN and even hardcoding it here is
not right (e.g. rev. 1.47 had this incorrect for DTYPE_PIPE)
* fallback to sys_fcntl() also for vnodes which don't represent tty
* don't need to use FILE_{,UN}USE() here, the code won't block while
using the pointer
* add/fix some comments
2002-03-24 00:32:34 +00:00
christos
3c2d0dbff9
correct placement for FILE_UNUSE [from Izumi Tsutsui]
2002-03-23 15:36:15 +00:00
chs
60b5cc6ac2
make this compile again (PS_STRINGS is gone).
2002-03-23 05:00:04 +00:00
jdolecek
dd94bff875
invoke setregs hooks correctly, as in sys_execve()
...
Problem noted and fix tested by Eduardo Horvath
2002-03-22 21:36:46 +00:00
christos
0a4f1c3d8f
sync with current reality and fix debugging.
2002-03-22 18:39:23 +00:00
christos
65fc8539e4
gc debugging printfs.
2002-03-22 17:14:18 +00:00
christos
8b2467a1e9
nuke mmap2, cleanup mmap, add mprotect
2002-03-22 15:21:28 +00:00
christos
5681411206
regen
2002-03-22 15:19:53 +00:00
christos
b3c32e7e6d
nuke mmap2, add mprotect
2002-03-22 15:19:43 +00:00
christos
99ff14c9f3
regen
2002-03-22 15:18:48 +00:00
christos
45af46eb53
add mprotect, nuke mmap2
2002-03-22 15:18:13 +00:00
christos
b9a0007d1d
regen
2002-03-22 15:17:17 +00:00
christos
190ffecb97
add mprotect, nuke mmap2
2002-03-22 15:17:04 +00:00
christos
7359db6620
regen
2002-03-22 15:16:14 +00:00
christos
24e38ed8f3
nuke mmap2 add mprotect
2002-03-22 15:16:02 +00:00
christos
f7f4206314
regen.
2002-03-22 15:15:08 +00:00
christos
2b9a2aabe8
nuke mmap2, add mprotect
2002-03-22 15:14:55 +00:00
christos
92945f57fe
regen
2002-03-22 15:11:23 +00:00
christos
22111899d0
1. make sure lines don't wrap
...
2. fix mmap and call it mmap like other ports do, not mmap2
3. implement fcntl64
4. implement mprotect because linux treats args slightly differently.
2002-03-22 15:10:38 +00:00
christos
b02cb6b16f
implement the locking calls for linux_file64.
2002-03-22 14:54:49 +00:00
christos
3b57c6607c
- obey FILE_USE and FILE_UNUSE
...
- don't assume that non sockets point to vnodes.
2002-03-22 14:53:26 +00:00