Commit Graph

370 Commits

Author SHA1 Message Date
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
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
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 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
thorpej 08b77f43f0 Deal with the SSE FPU save format. 2001-08-02 22:04:57 +00:00
christos 934898bc32 Adjust to the new copyargs() footprint. 2001-07-29 21:28:45 +00:00
wiz 035b63a542 auxilliary -> auxiliary 2001-07-26 22:53:13 +00:00
jdolecek 318fdc0c37 execute signal handlers on separate signal stack, if it's been provided 2001-07-15 20:02:21 +00:00
jdolecek 17a1c4c337 Regen - modify to use linux_* wrappers for syscalls passing/fetching sockaddr 2001-07-04 10:26:28 +00:00
jdolecek 3ba502f406 modify to use linux_* wrappers for syscalls passing/fetching sockaddr 2001-07-04 10:25:32 +00:00
simonb 22267aa60b Include <sys/exec_elf.h> as the other arch's linux_exec.h file do.
New linux_trap.c compiles now.
2001-06-22 05:12:42 +00:00
sommerfeld 7e7d262c34 Add %fs/%gs to trap frame and save/restore them on
trap/interrupt/syscall entry from userspace.

Remove special-case "by hand" validation of fs/gs register values as
well as special handling of them in various signal handling paths.

Now, like %ds and %es, they are validated by the hardware on return to
userland.

This paves the way for the use of %fs for per-cpu data on
multiprocessor systems, and fixes an otherwise difficult-to-fix
interaction between threads/clone(2) and USER_LDT.

Discussed in advance with Frank van der Linden.
2001-06-17 21:01:32 +00:00
thorpej 80cc38a1af Fix a partial construction problem that can cause race conditions
between creation of a file descriptor and close(2) when using kernel
assisted threads.  What we do is stick descriptors in the table, but
mark them as "larval".  This causes essentially everything to treat
it as a non-existent descriptor, except for fdalloc(), which sees a
filled slot so that it won't (incorrectly) allocate it again.  When
a descriptor is fully constructed, the code that has constructed it
marks it as "mature" (which actually clears the "larval" flag), and
things continue to work as normal.

While here, gather all the code that gets a descriptor from the table
into a fd_getfile() function, and call it, rather than having the
same (sometimes incorrect) code copied all over the place.
2001-06-14 20:32:41 +00:00
wiz b2e2ddf49e It's "extern int", not "extern".
Macppc kernels with LINUX_COMPAT now compile again.
2001-06-13 23:10:31 +00:00
wiz 3d343db054 #include <machine/fpu.h> for save_fpu()
#ifdef 0 two unused and un-prototyped functions.
Following a hint by Andrw Cagney on port-macppc.
2001-06-13 23:09:01 +00:00
hannken a343eba6d6 Close coment of CVS tag. 2001-06-08 09:24:28 +00:00
manu 4788337ddb Fixed a rough buf in ptrace SETFPREGS (was using regs instead of fpregs) 2001-06-02 13:49:44 +00:00
mrg 6a89288a37 use _KERNEL_OPT. 2001-05-30 11:37:21 +00:00
manu 36ea8f0ed5 Fixed a potential security problem (copyout after an error) 2001-05-28 10:51:20 +00:00
manu befe23c119 Implements correctly PEEKUSER and fixes various serious bugs. The status
of this file is not "officially broken" any more (gdb works).
2001-05-27 21:15:07 +00:00
manu 383c1b6319 Fixed two typo in comments 2001-05-27 21:11:12 +00:00
manu 9e29066532 Fixed ptrace() so that it is now possible to get traced process registers.
This makes Linux gdb able to run a Linux binary
2001-05-22 21:09:20 +00:00
manu 05fe8173f8 Fixed a typo in a comment 2001-05-19 14:31:00 +00:00