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
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
bjh21
99ba40c188
arm26->acorn26 transition.
2002-03-24 15:49:38 +00:00
jdolecek
3089d90eeb
add explicit comment a FILE_USE() is not needed here
2002-03-24 15:12:45 +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
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
christos
d9ada7eabf
Don't bitch if we don't have support for a particular arch. This makes it
...
easier to include this header from userland binaries [sysctl] on archs that
don't support compat-linux without incurring ifdef hell.
2002-03-21 13:23:48 +00:00
christos
50981e06bc
emulation specific sysctls. Also change the kernel date to nov 11 as requested
...
by bad.
2002-03-20 00:27:58 +00:00
christos
bda4b15e05
- Now that RT-signals fit, fix the array to deliver them. [i386 only].
...
- jdk-1.4 works perfectly now. :-)
2002-03-19 20:51:59 +00:00
christos
381e6a7764
make the stackgap_{init,alloc} functions MP friendly (i.e. pass struct proc *
...
in, instead of using curproc). While there add an optional size argument to
stackgap_init.
2002-03-16 20:43:48 +00:00
pooka
28a03499e8
Replace unused padding in struct linux_stat64 by lst_ino64 as found in
...
linux's m68k struct stat64.
makes linux compat compile again
2002-03-16 14:49:29 +00:00
bjh21
a42e17ae9a
__RCSID -> __KERNEL_RCSID
2002-03-10 15:47:43 +00:00
bjh21
64a051900d
Id -> NetBSD in RCSID (oops).
2002-03-10 11:35:32 +00:00
christos
07a8b6bf28
proper statfs emulation...
2002-02-20 17:03:03 +00:00
christos
227c487828
allow writing of kernel.version, kernel.osrelease, kernel.ostype... I might
...
revert that l8r if I come up with something better.
2002-02-20 17:02:48 +00:00
is
728d5e960d
fix some swapped parameters
2002-02-19 22:42:25 +00:00
nathanw
20d013dbed
Regen.
2002-02-19 16:46:12 +00:00
nathanw
502ca4a24b
Add linux_sys_{get,set}rlimit.
2002-02-19 16:44:09 +00:00
nathanw
cbc3e62bf0
Add LINUX_SA_NOCLDWAIT.
2002-02-19 16:35:59 +00:00
rafal
5af2ddd207
Add LINUX_SA_NOCLDWAIT, LINUX_SA_RESTORER, update LINUX_SA_ALLBITS. Linux
...
compat on mips builds again now.
2002-02-19 14:11:49 +00:00
christos
e52b5e4bfb
Resolve alpha compile issues:
...
- bug with order in args in mask conversion md code.
- flags can be both int and long on the alpha. kludge around that, by not
passing pointers to the conversion function.
- something is wrong with the toolchain look at the void * cast in copyout().
- sa_restorer is in a different place on the aplha. Deal with that, by not
initializing it as before. XXX: this should be changed in the MD signal
definition.
2002-02-18 22:24:17 +00:00
christos
1133f20b4f
regen
2002-02-18 20:20:25 +00:00
christos
08739d68be
provide linux_sys_getrlimit and linux_sys_setrlimit
2002-02-18 20:12:49 +00:00
jdolecek
2558157b0b
Back off previous partially - make linux_release[] back 2.0.38
...
and linux_version[] "#0 Sun Apr 1 11:11:11 MET 2000";". Add a BIG
WARNING MESSAGE so that people won't break things changing this.
2002-02-18 18:51:51 +00:00
christos
6e293e79bd
regen
2002-02-18 16:36:20 +00:00
christos
7f739a6187
fix comment.
2002-02-18 16:35:57 +00:00
rafal
0208af27ee
Regen: Use linux_sys_{g,s}setrlimit, remove linux_sys_ugetrlimit since
...
linux/mips doesn't seem to have one.
2002-02-18 00:10:26 +00:00
rafal
9751855fab
the MIPS stat64 struct doesn't have a separate ino64 field, but the ino field
...
is a u_longlong.
2002-02-17 23:57:57 +00:00
rafal
efdd3f2dd7
There is no linux_sys_ugetrlimit on mips, so don't try building it (XXX: adds
...
icky ifdefs)
2002-02-17 23:56:35 +00:00
rafal
dfcb814799
Use linux_sys_{g,s}etrlimit() since there's a common implementation now; but
...
MIPS has no sys_ugetrlimit, so don't declare it (209 is UNIMPL in the OSS
Linux-mips tree)
2002-02-17 23:55:23 +00:00
rafal
9f99fdabde
Adapt for changes to linux_to_native_sigset() and native_to_linux_sigset().
2002-02-17 23:18:38 +00:00
bjh21
db030aa93f
Add an lst_ino64 member to struct linux_stat64.
2002-02-17 23:18:11 +00:00
bjh21
0fd75dd4e5
Adapt for changes to limux_old_extra_to_native_sigset() and
...
native_to_linux_old_extra_sigset().
2002-02-17 23:05:08 +00:00
bjh21
9e7faceaf4
Add LINUX_SA_NOCLDWAIT.
2002-02-17 22:45:29 +00:00
bjh21
d0dfca3108
Regen.
2002-02-17 22:30:22 +00:00
bjh21
e5087cd2b4
getrlimit and setrlimit now have Linux-specific implementations. Use them.
2002-02-17 22:29:46 +00:00
bjh21
6c9d7cafe8
linux_sys_break() is marked OBSOL, so don't include it.
2002-02-17 22:03:23 +00:00
bjh21
3113edfb9a
linux_sys_rt_sigreturn is currently marked UNIMPL, so leave the stub out.
2002-02-17 22:00:09 +00:00
christos
6e89926d24
regen
2002-02-17 19:35:45 +00:00
christos
5a51f8945d
fix rlimit confusion.
2002-02-17 19:35:30 +00:00
christos
09a9c8ea3d
1. load cr2 now that we have it.
...
2. ldt_info.base_addr == 0 && ldt_info.limit == 0 means zero the ldt
From Robert V. Barron's wabi patch.
2002-02-16 16:23:09 +00:00
christos
57c8cc95f1
s/printf/uprintf/
2002-02-15 20:02:56 +00:00
christos
b03c54f812
regen
2002-02-15 16:50:58 +00:00
christos
3a4f78636f
Regen
2002-02-15 16:50:35 +00:00
christos
51ea9c87e7
proper comment.
2002-02-15 16:50:13 +00:00
christos
28debea38a
- add a real linux_sys___sysctl because the mib numbers are different.
...
implement only the kernel version getting entries.
- make the signal conversion functions consistent; dest is arg 1.
- make linux_fakedev deal with block and char devices differently.
- add linux_sys_ugetrlimit, and flesh out the regular get/setrlimit so
that they work properly.
- add linux_mmap2 [untested].
- bump kernel to 2.4.18, and make the date be valentine's day :-)
- linux_sys_*stat64 family was totally busted. Fix it.
tested only on i386.
Status:
gdb, telnet, work
jdk-1.4.0 extractor works, jdk still coredumps.
christos
2002-02-15 16:47:58 +00:00
bjh21
043db35f0a
cpu_cache_syncI_rng -> cpu_icache_sync_range
2002-02-02 16:53:39 +00:00
bjh21
c738201135
We shouldn't need an icache sync when catching a signal, so don't bother.
2002-02-02 16:52:45 +00:00
bjh21
2667358f8e
Get rid of "unused variable" warnings on arm26.
2002-02-02 16:30:28 +00:00
bjh21
70017578a1
Regen (breakpoint() implemented).
2002-01-27 15:28:22 +00:00
bjh21
8c36606f84
Add support for breakpoints to ARMLinux emulation.
2002-01-27 15:27:33 +00:00
bjh21
4929dc576f
Add support for PTRACE_GETREGS and PTRACE_SETREGS in ARMLinux emulation.
2002-01-27 15:11:38 +00:00
bjh21
bf73a232ce
Regen (prototype for linux_sys_nosys()).
2002-01-27 14:09:38 +00:00
bjh21
71953fb155
Make syscall 0 an explicit call of linux_sys_nosys, as it is on i386. This
...
is necessary to get a prototype for linux_sys_nosys generated in syscallargs.h.
2002-01-27 14:08:56 +00:00
bjh21
3985634329
Regen (sys_nosys -> linux_sys_nosys).
2002-01-23 16:14:45 +00:00
bjh21
6add1ec812
sys_nosys="linux_sys_nosys", since that's how it should be.
2002-01-23 16:14:20 +00:00
bjh21
6b940e1484
Regen (cacheflush() and remove syscall 0).
2002-01-23 15:55:51 +00:00
bjh21
8b78e49ada
Syscall 0 isn't syscall() on ARMLinux. Mark it UNIMPL instead.
2002-01-23 15:54:34 +00:00
bjh21
8a3c27fbf7
Add support for the ARM-specific syscalls in ARMLinux. These are invoked
...
by SWI numbers above 0x9f0000, but we re-map them down to somewhere just
after the end of the usual syscall range, since NetBSD doesn't handle
sparse syscall arrays well.
The only syscall I've actually implemented in this range is cacheflush(),
which was previously being mapped to fork(), causing ... interesting results.
2002-01-23 15:52:58 +00:00
bjh21
6ad60873c2
More-or-less working signal handling for Linux processes on ARM.
2002-01-17 22:50:38 +00:00
bjh21
72e7652233
Fix typo in last commit.
2002-01-17 21:19:22 +00:00
bjh21
934715db90
Fix unterminated #ifdef.
2002-01-17 21:17:57 +00:00
bjh21
16ee93eb67
On platforms that don't __HAVE_SYSCALL_INTERN, define LINUX_SYSCALL_FUNCTION
...
to be the value of emul_linux.e_syscall that we want. This allows it to differ
between machines, so I can have a separate linux_syscall() on arm.
2002-01-17 17:19:03 +00:00
rjs
01529df446
Include arch/arm/linux_errno.h for arm build.
2002-01-17 15:11:38 +00:00
rjs
0046c56309
Add arm to #endif comment.
2002-01-17 15:10:26 +00:00
rjs
77f9569791
Add extra error codes from Linux.
2002-01-17 15:08:44 +00:00
bjh21
4a4d63e6c0
Regen.
2002-01-15 10:23:35 +00:00
bjh21
9f08648c7d
Shuffle uname calls around. It turns out we don't use the same names as
...
Linux does, so:
sys_olduname -> linux_sys_oldolduname
sys_uname -> linux_sys_olduname
sys_newuname -> linux_sys_uname
2002-01-15 10:21:46 +00:00
bjh21
2fdddc2550
Generated files for ARMLinux binary compatibility.
2002-01-14 23:17:16 +00:00
bjh21
23a5fe8d9b
Remove old ARMLinux binary compatibility fragment. As far as I know, this
...
was never used.
2002-01-14 23:15:58 +00:00
bjh21
6462506466
Crude first cut at ARMLinux binary compatibility. Successfully runs
...
"/emul/linux/bin/echo hello, world", dynamically linked.
2002-01-14 23:14:32 +00:00
augustss
fa18fdc168
Add some missing ioctl()s. From Tommy Bohlin in PR kern/14414.
2001-12-19 15:20:16 +00:00
chs
8e9cdbbd63
replace "vnode" and "vtext" with "file" and "exec" in uvmexp field names.
2001-12-09 03:07:43 +00:00
manu
482b5bcec3
Removed unused (commented out) code
2001-11-20 21:50:13 +00:00
manu
675946fd1c
Fixed the Linux signal trampoline and linux_sys_sigreturn(). Linux signal
...
delivery now seems fully functionnal.
2001-11-20 21:37:50 +00:00
manu
86349adc0d
Make it build again after recent MIPS cache code changes
2001-11-17 22:13:38 +00:00
manu
cb5cba1cf3
Fixed typos
2001-11-17 20:49:14 +00:00
lukem
2565646230
don't need <sys/types.h> when including <sys/param.h>
2001-11-15 09:47:59 +00:00
lukem
dab6ef8b56
add RCSIDs (including regeneration of files as appropriate)
2001-11-13 02:07:52 +00:00
thorpej
e8ee04475d
- Add a new vnode flag VEXECMAP, which indicates that a vnode has
...
executable mappings. Stop overloading VTEXT for this purpose (VTEXT
also has another meaning).
- Rename vn_marktext() to vn_markexec(), and use it when executable
mappings of a vnode are established.
- In places where we want to set VTEXT, set it in v_flag directly, rather
than making a function call to do this (it no longer makes sense to
use a function call, since we no longer overload VTEXT with VEXECMAP's
meaning).
VEXECMAP suggested by Chuq Silvers.
2001-10-30 15:32:01 +00:00
manu
948a7fa8ef
Fixed some mistakes in signal handling (this is still broken)
...
Added some code to set linux's uname kernel version to 2.4.0 (usefull for
testing with glibc-2.2). This is currently guarded by a #if 0.
2001-10-14 17:21:47 +00:00
manu
abcf0c8406
Fixed a minor problem so that it builds
2001-10-14 17:15:58 +00:00
manu
c4210f055f
Added Mips
2001-10-14 17:14:07 +00:00
manu
aa5da496fa
Added socket operations to Linux Mips emulation
2001-10-06 13:32:58 +00:00
manu
2d38e85044
Implements ATOMIC_SET in linux_sys_sysmips
2001-10-06 13:32:18 +00:00
manu
801da94626
Implements parts of sysmips() and fctnl64() emulation
2001-09-30 20:52:40 +00:00
manu
a9c8120ff3
Fixes my last commit: only mips really need fcntl64 to work now. i386 and
...
powerpc could use it later if needed. m68k and alpha should never need it.
2001-09-30 20:44:49 +00:00
martin
62aaf2691e
Make i386 kernels compile again.
...
fcntl64 was still marked UNIMPL, but the implementation existed, causing
a missing prototype warning.
XXX I have no clue if this is the correct fix - someone able to test this
please review it!
2001-09-30 18:57:43 +00:00
manu
238328fb7a
Added initial support for fcntl64 system call (file locking is not
...
implemented)
2001-09-30 16:04:03 +00:00
simonb
8aec0ac7d5
DEBUG kernels fill the registers with garbage on process startup and
...
Linux program don't like that. Explicitly zero out the registers for
DEBUG kernels.
2001-09-30 02:36:42 +00:00
simonb
0b8f86120f
Define LINUX_ATEXIT_SIGNATURE to enable the atexit_signature test; needed
...
to run Linux/Alpha binaries.
2001-09-30 02:35:23 +00:00
manu
c56e2ccc5d
I'm working on Mips
2001-09-22 21:26:40 +00:00
manu
75e9ab7f5f
Enabled Mips Linux emul in header files
2001-09-22 21:25:49 +00:00
manu
e302bb5bc5
Enable Mips Linux emulation in header files
2001-09-22 21:24:16 +00:00
manu
40a2d61d92
Fixes for mips support
2001-09-22 21:22:57 +00:00
manu
63d1ca8449
Initial support for running Linux binaries on the Mips. Both static and
...
dynamic binaries work on 32 bit mips. Signals are completely broken yet,
and ptrace is not supported.
2001-09-22 21:19:10 +00:00
manu
a0cca8f7f6
One file that was missing from a previous commit
2001-09-22 21:17:55 +00:00
manu
2207c50687
Fixed errors in header files
2001-09-22 21:15:18 +00:00
manu
84d266e55c
More work on Linux compat for Mips: system calls mapping.
2001-09-22 21:14:37 +00:00
jdolecek
ef8abe0767
Make the setregs hook emulation-specific, rather than executable
...
format specific.
Struct emul has a e_setregs hook back, which points to emulation-specific
setregs function. es_setregs of struct execsw now only points to
optional executable-specific setup function (this is only used for
ECOFF).
2001-09-18 19:36:32 +00:00
fvdl
2c344fe7d9
Allow the old-style sockaddr_in6 for v6 addresses for which the
...
scope id is irrelevant. Makes netscape6 for Linux work again,
which uses v4-mapped addresses to connect to v4 sites.
2001-09-08 14:19:09 +00:00
manu
421be662fc
Forgotten file in my last commit for removing PowerPC mmap hack in Linux
...
emulation
2001-09-08 07:13:04 +00:00
manu
6bbacb9d3f
Removed a hack to make PowerPC mmap work. This could have side effects on
...
alpha and i386. It has been tested and works on i386.
2001-09-08 07:09:43 +00:00
jdolecek
a065626465
change LINUX_F_SETFL so that SIGIO handling for sockets
...
matches more closely
add support for NEW_PIPE to the SIGIO hack
2001-09-04 20:27:29 +00:00
manu
11736debb0
Fixed indent
2001-09-03 21:10:56 +00:00
manu
27d1edf719
Added 64 bits support in header files.
...
All headers should be common to 32 bits MIPS and 64 bits MIPS now.
2001-09-02 08:39:37 +00:00
manu
f914316a09
Fixed indent problems
2001-09-02 07:56:11 +00:00
manu
220d274aa6
Fixed indent problems
2001-09-02 07:27:33 +00:00
manu
54eff3d533
Added some comments
2001-09-02 07:25:58 +00:00
manu
b9581b43a2
Fixed an error in a define
2001-09-02 07:24:49 +00:00
manu
fbdc500a69
Fixed indent problems
2001-09-02 06:51:15 +00:00
manu
8e1033bfc3
Enable the GCC signature test so that ld.so will be executable (needed for
...
Linux's ldd)
2001-08-30 20:41:36 +00:00
manu
8537f76c98
Changed the way signature tests are done. This makes possible to run
...
ld.so as an executable on the PowerPC (Linux's ldd does this), and it also
much clearer IMHO.
2001-08-30 20:22:08 +00:00
manu
6f08a31e06
Fixed a lot of mistakes in #define's (hes values instead of octal)
2001-08-26 21:17:52 +00:00
manu
6ae6d7c980
Preliminary work on Linux/Mips emul
2001-08-26 18:53:20 +00:00
manu
abf3af624a
Preliminary work on Linux/Mips emul. More to come soon...
2001-08-26 18:11:25 +00:00
manu
34e3550db4
Moved LINUX_NCCS from MI file to MD file, because the value is different
...
on MIPS and sparc machines.
2001-08-26 17:26:31 +00:00
manu
8d2d7fdf71
Fiexed a typo in a #define
2001-08-26 17:17:55 +00:00
manu
0e6de337a2
Preliminary work on Linux/mips compat, more to come soon...
2001-08-26 17:12:56 +00:00
manu
d1fd72fba1
Fixed a typo in struct naming. This does not seems to impact anything.
2001-08-26 17:08:09 +00:00
manu
21f970e367
Preliminary work on Linux/Mips emulation, more to come soon...
2001-08-26 17:03:37 +00:00
manu
0f65ff9afc
Preliminary work on Linux/mips compatibility, more to come soon...
2001-08-26 16:41:58 +00:00
manu
de40f400dd
Preliminary work on Linux/mips compatibility, more to come soon...
2001-08-26 16:33:01 +00:00
manu
6ca52a1743
Preliminary work on Linux/mips compatibility, more to come soon...
2001-08-26 16:21:56 +00:00
manu
0a50dcbab4
Preliminary work on Linux/mips compatibility. More to come soon...
2001-08-26 16:18:03 +00:00
manu
fcf1fa0015
Preliminary work on Linux/mips compatibility, more to come soon...
2001-08-26 15:41:14 +00:00
manu
e712414a48
Preliminary work on Linux/mips compatibility. More to come soon...
2001-08-26 15:38:44 +00:00
manu
a410e315dd
Preliminary work on Linux/mips compatibility. More to come soon...
2001-08-26 15:24:24 +00:00
manu
b2ca6f9c3b
Preliminary work for Linux/Mips compatibility, more to come soon.
2001-08-26 15:16:42 +00:00
christos
699b00997c
PR/13652: Katsuomi Hamajima: Fix compile error.
2001-08-08 13:23:34 +00:00