jdolecek
bf65eb50af
add appropriate cast to debug printf
2001-11-18 13:29:29 +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
tv
4dec0efa0b
Preload <bsd.own.mk> before .undef DESTDIR.
2001-11-14 22:00:42 +00:00
tv
4446c00002
Undefine DESTDIR; we don't want the special DESTDIR <bsd.lib.mk>
...
handling for kernel libraries.
XXX this build method should be replaced by something more sane
2001-11-14 21:59:31 +00:00
lukem
dab6ef8b56
add RCSIDs (including regeneration of files as appropriate)
2001-11-13 02:07:52 +00:00
atatat
23b1a14d0d
compile in the absense of SYSVSHM and SYSVSEM.
2001-11-12 01:23:51 +00:00
christos
50a347501a
compile in the absense of SYSVSHM and SYSVSEM. pointed out by @@@.
2001-11-11 21:21:02 +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
christos
2a64b3cc60
use the copy of path stashed in pack->ep_emul_arg and free it.
...
also don't allocate the emul path, because it is causing a memory leak.
2001-10-28 04:47:27 +00:00
jdolecek
9f2548a603
Regen:
...
Hook in minherit(2), fhstatfs(2), fhopen(2), fhstat(2).
Adresses kern/8622 by Paul Shupak.
2001-10-27 10:02:57 +00:00
jdolecek
084e319b3f
Hook in minherit(2), fhstatfs(2), fhopen(2), fhstat(2).
...
Adresses kern/8622 by Paul Shupak.
2001-10-27 10:00:55 +00:00
jdolecek
dab7dee0f2
Add a comment regarding the ELFOSABI_FREEBSD thing,
...
and reformat the condition a bit to avoid nested if
2001-10-27 09:50:22 +00:00
christos
8101253d41
KNF.
2001-10-23 16:43:33 +00:00
christos
9c0bd73ac9
PR/14332: Shingo WATANABE: Regognize new ELFOSABI_FREEBSD branded executables.
2001-10-23 16:41:36 +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
jdolecek
d08f6c6e2e
pull <sys/exec.h> to get setregs prototype.
...
problem noted by Chuck Silvers
2001-09-23 19:32:10 +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
manu
e7a3ba084e
Empty framework for upcoming work on IRIX_COMPAT
2001-09-22 18:51:35 +00:00
thorpej
bfaf142ff6
Add sunos32_setregs(), thus making sunos32 compile again.
2001-09-20 20:52:26 +00:00
thorpej
2708743345
Make this compile again.
2001-09-20 20:28:41 +00:00
thorpej
e38a2e561a
machine/fbio.h -> dev/sun/fbio.h
2001-09-19 18:10:32 +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
jdolecek
9edaceed67
g/c dead code
2001-09-17 17:47:47 +00:00
jdolecek
6b213f8761
remove superfluous cpu_exec_ecoff_setregs() prototype
2001-09-17 17:46:16 +00:00
wiz
456dff6cb8
Spell 'occurred' with two 'r's.
2001-09-16 16:34:23 +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
chuck
1c06d68731
only include opt_compat_43.h if _KERNEL_OPT defined so lkm compiles
2001-09-08 13:23: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
wiz
08d1db8111
Fix typo in variable name.
2001-09-08 02:35:25 +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
chuck
31ae40ba15
confirmed the code for MID_VAX1K NMAGIC binaries was wrong,
...
you've got to pad the text just like with 4.3BSD binaries.
fix it.
i have now successfully tested compat-vax1k with real
o/m/z magic binaries from both 4.3BSD and netbsd 1.3.
2001-08-31 18:44:12 +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
chuck
1b6311c365
make 4.3 binaries run once again on the vax. tested with
...
omagic/nmagic/zmagic binaries from guest account on
Lord Isildur's tahoe system (thanks). enabled if both
COMPAT_43 and COMPAT_VAX1K are defined.
basically rewrote exec_vax1k_prep_anymagic() to handle more
file formats. we remove vax1k_subr.c because we now use the
standard vmcmd_readvn function.
XXX: suspect the code for MID_VAX1K NMAGIC binaries is wrong,
need a binary to confirm this... the old code did not pad the
end of the text segment to a page boundary, and that seems wrong.
you definitely need to pad it on a 4.3BSD NMAGIC binary and i
don't see why MID_VAX1K should be different?
2001-08-29 03:43:53 +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
mrg
e63635fdcd
update copyright notices.
2001-08-25 15:06:02 +00:00
wiz
c52d355d71
"wierd" is weird.
2001-08-20 12:20:01 +00:00
eeh
e31ca9e045
regen.
2001-08-15 05:27:29 +00:00
eeh
950d07bdf7
Use the netbsd32 version of anything that takes args.
2001-08-15 05:18:11 +00:00
eeh
16b1f7aae0
Fix bug in netbsd32_compat_43_olseek return value.
2001-08-15 05:16:59 +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
eeh
8180bfa441
Add missing `error'.
2001-07-30 22:04:08 +00:00
christos
934898bc32
Adjust to the new copyargs() footprint.
2001-07-29 21:28:45 +00:00
christos
b474b9ac65
carry on the copyargs() and exit1() changes from kern_exec.c
2001-07-29 21:28:20 +00:00
christos
781411d393
adjust to the new copyargs footprint and cleanup debugging.
2001-07-29 21:26:07 +00:00
christos
d5dfcf76de
a bit more mach glue.
2001-07-29 19:30:56 +00:00
wiz
035b63a542
auxilliary -> auxiliary
2001-07-26 22:53:13 +00:00
jdolecek
718eee7811
make linux_socketcall_argsize[] static const
2001-07-22 13:55:23 +00:00
jdolecek
85fbcb3c05
return EMSGSIZE rather than ENOMEM if it would not be possible to
...
allocate space for accrights within stackgap
comment the copyin() of msg.msg_control in recvmsg() is safe
2001-07-22 13:46:51 +00:00
wiz
a9356936b4
seperate -> separate
2001-07-22 13:33:58 +00:00
thorpej
e21d5026ef
Add support for the __WALL wait4(2) flag.
2001-07-18 19:11:14 +00:00
thorpej
cbf41a143a
bzero -> memset
2001-07-18 16:43:09 +00:00
jdolecek
588b94c0a2
Expel MSG_COMPAT/COMPAT_OLDSOCK, make the COMPAT_43 wrappers
...
arrange things as needed. Unfortunately, the check in sockargs()
have to stay, since 4.3BSD bind(2), connect(2) and sendto(2) were
not versioned at the time :(
This code was tested to pass regression tests.
2001-07-17 11:49:40 +00:00
jdolecek
318fdc0c37
execute signal handlers on separate signal stack, if it's been provided
2001-07-15 20:02:21 +00:00
christos
6f12096732
add a shell that does nothing for now for the mach syscalls.
2001-07-14 02:10:59 +00:00
christos
97c9d7a9dd
rename elf32_read_from to exec_read_from since it is used in many places
...
now.
2001-07-14 02:05:05 +00:00
kim
1dc43ac2f2
Map OSS mixer device "line1" to native mixer device "aux".
2001-07-09 03:21:32 +00:00
jdolecek
e24cc0f4c5
compat_43_sys_send(): wrap using sys_sendto() rathen than sendit()
...
compat_43_sys_recv(): wrap using sys_recvfrom() rathen than recvit()
2001-07-07 14:44:45 +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
jdolecek
978d4eb77b
remove no longer used variable
...
make 'osa' arg of linux_sa_get() const
2001-07-04 10:24:18 +00:00
jdolecek
8cbefdbb89
Do address family (AF_*) number translation for socket system calls which
...
pass socket address in our or out. This makes Linux programs using IPv6
working under emulation. This addresses kern/13279 by Jun-ichiro itojun Hagino.
Change sendmsg()/recvmsg() to expect the control information
to be passed the standard way (not 4.3BSD one, imlied by compat_43 code
or MSG_COMPAT). Linux uses different (arguably broken) CMSG_ALIGN() on some
architectures unfortunately, that would need to be handled eventually.
Also provide some other trivial stubs (like linux_sys_send()) to avoid
unneeded dependance on uipc_syscalls_43.c.
2001-07-04 10:09:24 +00:00
jdolecek
adc0c5d8f3
Add myself to the list, put e-mail addresses within '<' and '>'
2001-07-01 17:13:41 +00:00
thorpej
d0f766fb5c
Regen; use the generic close(2).
2001-07-01 16:55:41 +00:00
thorpej
ee8334823e
No need to have a SVR4-32 specific close(2).
2001-07-01 16:55:19 +00:00
simonb
e6f5e42d1b
Regen; new syscalls.
2001-06-28 04:10:07 +00:00
simonb
9086d98157
Add some (unimplemented) syscalls from Tru64 Unix 5.1a.
2001-06-28 04:08:58 +00:00
dmcmahill
2beb554d4c
regen after adding COMPAT_OSF1 getitimer(2).
2001-06-28 01:49:04 +00:00
dmcmahill
e844f04e07
add COMPAT_OSF1 getitimer(2). Patch submitted by Kevin Schoedel
...
<schoedel@kw.igs.net> in PR port-alpha/13071, reviewed by Jason Thorpe.
2001-06-28 01:48:22 +00:00
jdolecek
26d45c1101
Back off the sendit()/recvit() change, some have problems with it
2001-06-25 20:46:11 +00:00
jdolecek
1b87473851
linux_getifhwaddr(): use strncmp() to find out if if_name starts with 'eth',
...
it's more readable that way
2001-06-25 19:55:02 +00:00
jdolecek
7f7c60e827
Add 'kernsa' parameter for sendit()/recvit(); if nonzero, msg->msg_name
...
is supposed to point directly to struct mbuf or struct sockaddr in kernel
space as appropriate, rather than being a pointer to memory in userland.
This is to be used by compat/* when emulation needs to wrap
send{to|msg}(2)/recv{from|msg}(2) and modify the passed struct
sockaddr.
2001-06-25 19:24:02 +00:00
dmcmahill
1880c09133
regen after adding flock.
2001-06-23 02:46:25 +00:00
dmcmahill
b2ddb9701f
Add entry for flock() syscall.
...
From the NetBSD and OSF man pages, the arguments and operation of the
2 flocks are identical. The only differences are in some of the possible
values for errno which may be set in the event of certain errors. These
differences are (again from the manual pages):
The NetBSD flock may set errno to
[EOPNOTSUPP] The argument fd refers to an object other than a file.
and the OSF flock doesn't list this is a possible error code.
The OSF flock may set errno to:
[EINTR] A signal interuppted the flock call.
[ENOLCK] The lock table is full. Too many regions are already locked.
[EDEADLK] The lock is blocked by some lock from another process. Putting
the calling process to sleep while waiting for that lock to
become free would cause a deadlock.
while the NetBSD flock does not list these as possibilities.
The remainder of the possible error codes are the same.
commit cleared with thorpej first.
2001-06-23 02:45:54 +00:00
jdolecek
5f9c0daf71
linux_sys_socketcall(): refuse negative 'what' values
2001-06-22 08:27:05 +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
fvdl
fe75469d65
Some of this was sparc-specific, so ifdef __sparc__ it (XXX). Also,
...
change the alignment of one structure with an MD ifdef. Should
be moved into the netbsd32_machdep parts.
2001-06-19 00:36:21 +00:00
christos
0f380fac15
Add an e_trapsignal member to struct emul, so that emulated processes can
...
send the appropriate signal depending on the trap type.
2001-06-18 02:00:48 +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
manu
ff5ce5bd93
Removed obsoletes EMUL_NO_BSD_ASYNCIO_PIPE and EMUL_NO_SIGIO_ON_READ flags.
...
Async I/O OS specifities should now handled in OS specific code. Linux
has been done, but other emulation should be handled. See case LINUX_F_SETFL
in sys/compat/linux/common/linux_file.c:linux_sys_fcntl() for more details.
The data that has been collected yet:
Net Free Open Linux SunOS AIX OSF1 Darwin
send SIGIO to write end of pipe Y N N N N N Y Y
send SIGIO to read end of pipe Y Y N N N ? Y ?
send SIGIO to write end of socket Y Y Y N N Y Y Y
send SIGIO to read end of socket Y Y Y Y Y ? Y ?
2001-06-16 22:05:36 +00:00
manu
a7cdf998ec
Removed obsoletes EMUL_NO_BSD_ASYNCIO_PIPE and EMUL_NO_SIGIO_ON_READ flags.
...
Async I/O OS specifities should now handled in OS specific code. Linux
has been done, but other emulation should be handled. See case LINUX_F_SETFL
in sys/compat/linux/common/linux_file.c:linux_sys_fcntl() for more details.
The data that has been collected yet:
Net Free Open Linux SunOS AIX OSF1 Darwin
send SIGIO to write end of pipe Y N N N N N Y Y
send SIGIO to read end of pipe Y Y N N N ? Y ?
send SIGIO to write end of socket Y Y Y N N Y Y Y
send SIGIO to read end of socket Y Y Y Y Y ? Y ?
2001-06-16 21:44:27 +00:00
manu
ce10f4da5b
Linux does not send a SIGIO to the write end of a socket,
...
neither it does send any SIGIO for pipes. If async I/O
was requested, we keep the SS_ASYNC in struct socket flag
set, but we clear SB_ASYNC flags on the sending buffer
(for socket), and on the sending and the receiving buffer
(for pipes).
Because we do not alter to SS_ASYNC in struct socket,
the Linux process keeps a consistent view of async I/O
status if it attemps to read the async flag (SS_ASYNC)
This async I/O problem does matters, since some Linux
a programs such as the JDK request async I/O on pipes,
but they fail if they happen to get a SIGIO to the write
end of the pipe.
2001-06-16 21:32:51 +00:00
thorpej
7660fd850d
In check_exec(), don't bother checking P_TRACED along with
...
MNT_NOSUID, just check MNT_NOSUID to clear the S{U,G}ID bits
in the attributes for the vnode we're about to exec.
We now check P_TRACED right before we would actually perform
the s{u,g}id function in the exec code.
This closes a race condition between exec of a setuid binary
and ptrace(2).
2001-06-15 17:24:19 +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
mrg
0b7f4cf1ba
avoid trigraphs
2001-06-08 12:50:11 +00:00
hannken
a343eba6d6
Close coment of CVS tag.
2001-06-08 09:24:28 +00:00
mrg
25e7951011
proto for coredump32
2001-06-06 21:45:56 +00:00
mrg
a6a28df3e2
add netbsd32_uvm_unix.c and netbsd32_kern_sig.c
2001-06-06 21:30:28 +00:00
mrg
06f624518c
sync with uvm_unix.c 1.23
2001-06-06 21:30:07 +00:00
mrg
85794da2bd
LKM friendly: move coredump32() here
2001-06-06 21:25:11 +00:00
mrg
5677baf886
LKM friendly: move uvm_coredump32() here
2001-06-06 21:24:39 +00:00
thorpej
f149c43285
Regen; don't define our own (incorrect!) dup(2); just use the NetBSD version.
2001-06-06 16:18:10 +00:00
thorpej
ea5fdab7bb
Don't define our own (incorrect!) dup(2); just use the NetBSD version.
2001-06-06 16:17:40 +00:00
mrg
c59b99f5c8
use _KERNEL_OPT, catch up with constification in compat/svr4.
2001-06-04 22:00:10 +00:00
mrg
46762d3560
fix lint exposed by GCC 3.0 20010604 (prerelease).
2001-06-04 20:56:51 +00:00
nathanw
4b2dbe7a1a
Note that negative system call numbers no longer appear negative in
...
ktrace output, due to range-bounding by binary masking.
2001-06-04 20:06:41 +00:00
manu
ae80f433ec
Fixes by Chuck Silvers to make ptrace PEEKTEXT more 64 bit friendy
2001-06-04 07:44:39 +00:00
manu
b5269c31d1
added a double cast to build on alpha
2001-06-03 18:22:27 +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
jdolecek
58467b0a9d
Slighly improve the PTRACE_CONT comment
2001-06-02 11:46:09 +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
7046b15b3d
Fixed the return value of ptrace for PEEKTEXT and PEEKDATA: return value must
...
be a pointer to data, which holds the result. Linux's glibc undo this odd
operation to bring the standard ptrace behavior to userland.
2001-05-27 21:17:16 +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
kristerw
7ae7504033
Added a 'break' on the last line in a switch statement, since the ISO
...
C standard do not permit labels at the end of compound statements.
2001-05-24 10:49:31 +00:00
manu
8e9a35bbaa
Enable PowerPC Linux ptrace() emulation
2001-05-22 21:11:54 +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
23e3fc1231
When c_ospeed in termio is null, NetBSD hangup the terminal. Since Linux
...
does not do this, we fake null c_ospeed values by -1 in the kernel, so
that NetBSD does not hangup.
2001-05-22 21:05:49 +00:00
manu
89047f2566
Added powerpc status in a comment
2001-05-20 09:29:10 +00:00
manu
05fe8173f8
Fixed a typo in a comment
2001-05-19 14:31:00 +00:00
jdolecek
a20a67e39b
regen (some unnecessary passthrough stubs eliminated)
2001-05-15 21:39:31 +00:00
jdolecek
da5867c716
Eliminate passthrough syscalls stubs which only call appropriate sys_foo()
...
without any change.
Fixes kern/7270 by Bill Sommerfeld.
2001-05-15 21:37:47 +00:00
manu
56839426da
This file is not used on alpha, and it causes some warning that break the
...
build. Added an ifdef to ignore the file content for alpha (not tested)
2001-05-15 20:35:02 +00:00
lukem
37aedd067b
delint: fix comments
2001-05-15 15:20:29 +00:00
manu
d473f5bd8a
Improved the accuracy of gettimeofday/settimeofday: Linux stores a srtuct
...
timezone in the kernel. We now keep track of it for emulated processes.
Tested for powerpc and i386. Untested on m68k, but it should be ok
Alpha has a particular implementation (osf1_sys_gettimeofday), and it has
therefore not been touched.
2001-05-13 20:54:42 +00:00
kleink
045d2b0272
Make this build again.
2001-05-11 19:19:44 +00:00
augustss
f63784bfbe
Improved fix of PR12796, from Frederick Bruckman <fb@enteract.com>
2001-05-10 01:54:30 +00:00
augustss
5c9ba155e3
Apply patch in PR lib/12796 from Frederick Bruckman <fb@enteract.com>
2001-05-09 21:49:58 +00:00
manu
7e6929fe90
Changed EMUL_BSD_ASYNCIO_PIPE to EMUL_NO_BSD_ASYNCIO_PIPE, so that
...
the native emulation (NetBSD) does not have a flag.
2001-05-07 09:55:12 +00:00
manu
5a6b8191b5
Added two flags to emulation packages:
...
EMUL_BSD_ASYNCIO_PIPE notes that the emulated binaries expect the original
BSD pipe behavior for asynchronous I/O, which is to fire SIGIO on read() and
write(). OSes without this flag do not expect any SIGIO to be fired on
read() and write() for pipes, even when async I/O was requested. As far as
we know, the OSes that need EMUL_BSD_ASYNCIO_PIPE are NetBSD, OSF/1 and
Darwin.
EMUL_NO_SIGIO_ON_READ notes that the emulated binaries that requested
asynchrnous I/O expect the reader process to be notified by a SIGIO, but
not the writer process. OSes without this flag expect the reader and the
writer to be notified when some data has arrived or when some data have been
read. As far as we know, the OSes that need EMUL_NO_SIGIO_ON_READ are Linux
and SunOS.
2001-05-06 19:09:52 +00:00
ross
6b9d94cd8c
Fix overflow errors in brk(2).
2001-05-06 04:32:08 +00:00
matt
eae1312a70
Use NULL instead of an explicit cast.
2001-05-03 05:30:35 +00:00
ross
2df695b1e4
o IEEE 754 floating-point completion code.
...
o Implement the architected FP_C "Floating Point Control Quadword"
2001-04-26 03:10:44 +00:00
manu
bc237413cb
Fixed an error in a comment
2001-04-12 19:32:35 +00:00
manu
bb1594b20b
Integrated security review for signal delivery by Wolfgang Solfrank
2001-04-11 19:41:02 +00:00
eeh
511e0204b1
Update to conform to new interface.
2001-04-10 18:57:49 +00:00
kleink
0e1ec27466
Regen.
2001-04-10 11:12:12 +00:00
kleink
7b62f6ff28
Slight indentation nit.
2001-04-10 11:11:17 +00:00
jdolecek
b6d1d4db02
Change the first arg to fileops fo_stat routine to struct file *, adjust
...
callers and appropriate routines to cope. This makes fo_stat more
consistent with rest of fileops routines and also makes the fo_stat
match FreeBSD as an added bonus.
Discussed with Luke Mewburn on tech-kern@.
2001-04-09 10:22:00 +00:00
jdolecek
c1dca7fa03
also use fops fo_stat for osf1_sys_fstat2()
2001-04-09 10:08:51 +00:00
jdolecek
3fc6fc58e6
Call file descriptor stat function via (*fp->f_ops->fo_stat) instead
...
of a switch statement and explicit call.
Sprinkle some FILE_USE()/FILE_UNUSE() as appropriate.
2001-04-09 09:39:09 +00:00
ross
2d8e2c19d6
Fix soo_stat() calls for the new parameter, even if the direct call is
...
now obsolete, so that kernels will at least compile. I guess it was too
much trouble to change all 10 call sites, or perhaps, these days, only
things that build on i386 are important. Maybe it's the full moon tonight.
2001-04-08 08:01:36 +00:00
jdolecek
bb8ceadfcc
Adapt to struct fileops, soo_stat() changes.
...
Pointed out by Bernd Ernesti in private mail.
2001-04-07 17:37:09 +00:00
tsutsui
aff5787b5b
Regen from aoutm68k/syscalls.master rev 1.5:
...
> Allow enabling/disabling /emul/aout alternate path search
> on COMPAT_AOUT_M68K environment by options COMPAT_AOUT_ALTPATH.
2001-04-07 12:28:55 +00:00
tsutsui
0286ef8bba
Allow enabling/disabling /emul/aout alternate path search
...
on COMPAT_AOUT_M68K environment by options COMPAT_AOUT_ALTPATH.
2001-04-07 12:25:15 +00:00
jdolecek
16b1272b3f
Add new 'stat' fileop and call the stat function via f_ops rather
...
than directly.
For compat syscalls, also add necessary FILE_USE()/FILE_UNUSE().
Now that soo_stat() gets a proc arg, pass it on to usrreq function.
2001-04-07 09:00:57 +00:00
ross
3bbe93edd6
new syscalls
2001-04-04 19:52:18 +00:00
ross
cf6a3cc49d
prototypes and comments
2001-04-04 19:41:00 +00:00
jdolecek
9f531a91bb
regen - use linux_sys_nosys() instead sys_nosys()
2001-03-30 18:33:22 +00:00
jdolecek
bbe1ee69af
Use linux_sys_nosys() instead sys_nosys() here too.
2001-03-30 18:31:28 +00:00
jdolecek
02281ec1f5
regen
2001-03-30 18:02:28 +00:00
jdolecek
c51fe2a452
use UNIMPL instead of NODEF for the dummy syscalls 218, 219
2001-03-30 18:01:20 +00:00
jdolecek
36a42f0ce8
Add new syscalls from Linux 2.4.3 to the lists. Not implemented ATM.
2001-03-30 17:59:46 +00:00
jdolecek
e07a93ab5a
regen
2001-03-30 17:18:47 +00:00
jdolecek
890850dddf
Implement linux_sys_nosys() and use it instead of sys_nosys() for
...
unimplemented syscalls. Difference is that linux_sys_nosys() doesn't
post SIGSYS to the process. Linux doesn't do that and thus glibc (and
probably other Linux code) doesn't deal with SIGSYS, even through it
generally contains fallback code for ENOSYS case.
This also addresses port-i386/12503, though the issue was already discussed
earlier.
2001-03-30 17:16:33 +00:00
toddpw
8b733f7126
Our INCSDIR has been pruned from distrib/sets, so don't make it any more.
2001-03-30 12:42:30 +00:00
fvdl
879b34ea8c
Don't do the ioctl call for the get hw addr case, all the work has
...
been done already.
2001-03-29 10:37:37 +00:00
jdolecek
569cf4b764
Use parent's vmspace in linux_e_proc_fork() hook, the child does not
...
have vmspace setup yet. This fixes lossage discussed on current-users,
thread "hard lockups with -current and Netscape", and should fix
kern/12433 by <kawamoto@tenjin.org>, maybe also kern/12455.
XXX Threads forked via linux_sys_clone() should share the brk value
XXX if they share vmspace. This needs to be implemented.
2001-03-24 11:13:04 +00:00
manu
ea545137cc
Added a missing native to linux signal number translation in linux_sendsig(),
...
when building the trap frape
2001-03-22 22:10:04 +00:00
itojun
c35e5ed1b2
do not dereference p_vmspace, if it is not initialized yet (NULL).
2001-03-22 08:26:14 +00:00
manu
bfaa81d0e1
Fixed typos in comments
2001-03-18 11:31:44 +00:00
manu
802ed4d55c
Removed an unused oldbrk variable in linux_sys_brk()
2001-03-16 07:46:57 +00:00
mrg
85b0b4096f
s/rv/error/ in a uprintf(). (rv isn't defined.)
2001-03-16 04:05:15 +00:00
manu
27a41174dd
Made linux_sys_brk() cleaner (no functionnality change)
2001-03-15 23:23:26 +00:00
manu
1208df7bdf
Fixed brk() emulation. We now keep track of the processes' idea of the
...
break value. See http://mail-index.netbsd.org/tech-kern/2001/03/15/0000.html
for more details.
2001-03-15 19:18:20 +00:00
chs
ac3bc537bd
eliminate the KERN_* error codes in favor of the traditional E* codes.
...
the mapping is:
KERN_SUCCESS 0
KERN_INVALID_ADDRESS EFAULT
KERN_PROTECTION_FAILURE EACCES
KERN_NO_SPACE ENOMEM
KERN_INVALID_ARGUMENT EINVAL
KERN_FAILURE various, mostly turn into KASSERTs
KERN_RESOURCE_SHORTAGE ENOMEM
KERN_NOT_RECEIVER <unused>
KERN_NO_ACCESS <unused>
KERN_PAGES_LOCKED <unused>
2001-03-15 06:10:32 +00:00
mrg
f1a8e2ab5f
be more verbose about failed vmcmds.
2001-03-04 13:42:32 +00:00
eeh
e330ffed34
Remove conflicts with changes made to COMPAT_SVR4.
2001-02-28 15:58:35 +00:00
eeh
a72ee87980
Add support for 64-bit SVR4 (Solaris 8) binaries.
2001-02-21 23:53:00 +00:00
jdolecek
522f569810
make some more constant arrays 'const'
2001-02-21 21:39:52 +00:00
eeh
82deda03bf
Fixup compile problems.
2001-02-19 19:49:35 +00:00
eeh
800c3c476d
Use svr4_ttold.c since it has no LP64 issues.
2001-02-19 15:48:59 +00:00
mrg
bc003b5676
use svr4_32 ttold ioctl types.
2001-02-18 00:27:20 +00:00
eeh
8a4a682091
Support flexible process address space limits and bump kernel version number.
2001-02-14 18:21:42 +00:00
manu
ad16681a92
Clarified comments about the LINUX_SCERR_SIGN macro
2001-02-12 21:25:08 +00:00
fvdl
6b7a7448f5
Cast 32bit sunos_nfs_arg member to (char *)(long) to avoid warning
...
after sunos.h change (cast is safe; a SunOS binary will pas a 32 bit
pointer).
2001-02-12 19:49:20 +00:00
manu
16bc5b4004
Moved the fix for negative errno returned to userland on the PowerPC to a
...
more machine independent fashion
2001-02-11 20:24:49 +00:00
eeh
fb46d1eed4
Export bits needed by COMPAT_SVR4_32.
2001-02-11 01:16:42 +00:00
eeh
c2a7dae9d2
Fix getuid() and getgid() to work like the Solaris ones.
2001-02-11 01:14:25 +00:00
eeh
7fd4c88055
Fix getuid() and getgid() calls to return both e[ug]id and r[ug]id.
2001-02-11 01:13:01 +00:00
eeh
82ca5fba5b
Fixes to get dynamic binaries working.
2001-02-11 01:10:24 +00:00
eeh
a562e38910
Don't play fast and loose with pointers.
2001-02-11 00:00:29 +00:00
mrg
da9e4bd3a1
split up netbsd32_netbsd.c into 9 new files, leaving only those syscalls that
...
have no special interpretations besides simple syscall args conversion.
2001-02-08 13:19:33 +00:00
mrg
477f3d1140
header is struct netbsd32_exec
2001-02-08 12:32:41 +00:00
mrg
e927957b42
move the static inline conversion functions into a header file so other
...
files can see these. note a bunch of functions that should be moved
into their own files.
2001-02-07 15:22:39 +00:00
mrg
7217f71af3
compat_12_netbsd32_{,fl}stat12() were not copyout()ing the converted result.
2001-02-07 13:15:54 +00:00
mrg
c1b372c5ca
fix the glaring errors in compat_13_netbsd32_sigaltstack13
2001-02-07 13:14:07 +00:00
mrg
7a908a5f44
compat_sunos needs netbsd32_compat_09.c
2001-02-07 13:13:01 +00:00
mrg
098da9d296
use the standard alt check for creat.
2001-02-07 01:34:21 +00:00
eeh
4380259bc7
Specify a process' address space limits for uvmspace_exec().
2001-02-06 17:01:51 +00:00
eeh
967cc758a6
Add 32-bit svr4 emulation (for 64-bit machines).
2001-02-06 16:37:56 +00:00
mrg
d0f57eaf28
regen
2001-02-06 15:42:34 +00:00
mrg
bb4dfb96a8
oops, use netbsd32_select().
2001-02-06 15:41:53 +00:00
mrg
79c2fcd3b2
add from NetBSD Id.
2001-02-06 15:39:38 +00:00
mrg
5cd04bbafa
use struct sunos32_dirent. now getwd() works.
2001-02-06 13:13:42 +00:00
mrg
04534d365c
stat/lstat must use netbsd32_stat43 not stat43.
2001-02-06 10:32:34 +00:00
manu
82b165a23b
Modified a cast so that it builds again
2001-02-05 19:44:32 +00:00
mrg
8507daffe2
regen
2001-02-05 12:48:33 +00:00
mrg
f973f47b9c
s/sunos_sendsig/sunos32_sendsig/
2001-02-05 12:48:13 +00:00
mrg
2bdf90f148
use sunos32_sys_sigreturn
2001-02-05 12:46:19 +00:00
chs
09cb38f22b
expose the definitions of MIN() and MAX() in sys/param.h to the kernel
...
and use those in favor of a dozen copies scattered around the source tree.
2001-02-05 10:42:40 +00:00
mrg
8e76e697d7
fix the glaring errors in emulations for osendmsg, orecvmsg, osigvec and osigstack.
2001-02-05 06:32:55 +00:00
mrg
973fe837ab
s/long/netbsd32_long/ in various places. call netbsd32_fcntl, not sys_fcntl.
2001-02-05 06:28:55 +00:00
mrg
07df067e6c
make sunos32_sys_stime() & sunos32_sys_sigvec() work.
2001-02-05 06:27:57 +00:00
itojun
30b4221720
make it compile on alpha. cast pointer to u_long, not int
2001-02-05 04:33:41 +00:00
jmc
ece49e13a9
Back out last change. m68k.h is now in cpu.h (which got updated in between
...
my noticing this problem here on a sun3).
2001-02-04 23:53:31 +00:00
christos
ff4eeac9d3
cosmetic fixes.
2001-02-04 22:59:26 +00:00
mrg
2343525d2b
we don't #include ../sunos/sunos_ioctl.c anymore...sigh
2001-02-04 15:38:17 +00:00
manu
0bf34ec725
Fixed a bug in Linux/powerpc ktrace support (it's still broken, anyway)
2001-02-04 14:24:38 +00:00
mrg
9e0d8392a4
clean up sunos32_sys_mmap(), modelling it more like netbsd32_mmap()
2001-02-04 11:06:14 +00:00
jmc
5a272e431a
Add m68k/m68k.h to pickup fputype definitions.
2001-02-04 10:16:43 +00:00
mrg
b4e92dfd81
regen
2001-02-04 09:48:43 +00:00
mrg
b352fc1de2
s/long/netbsd32_long/ in sunos32_sys_mmap(). noted by chuq.
2001-02-04 09:47:22 +00:00
mrg
32fdb6e321
change_utimes32() was copyin()ing a struct timeval, not netbsd32_timeval.
...
general clean up.
2001-02-04 09:00:14 +00:00
mrg
a531aa1597
emulate kern.boottime. now 32-bit w(1) works properly.
2001-02-04 07:08:51 +00:00
mrg
2aa001b546
make sysctl vm.loadavg work.
2001-02-04 06:35:07 +00:00
mrg
bd15b74ffc
add missing !LKM check, noted by <tih@kpnQwest.no>
2001-02-03 22:20:02 +00:00
ross
69e20722b9
Emulate LINUX_TCFLSH with our TIOCFLUSH. Do some CSE.
2001-02-03 19:01:29 +00:00
mrg
ef777aa80b
sync a comment from sys_execve().
...
make netbsd32_recvfrom() work.
2001-02-03 12:46:55 +00:00
mrg
dabf2a8634
s/sizeof(struct exec)/sizeof(struct netbsd32_exec)/ when calculating file offsets. now sunos32 nmagic/omagic work.
2001-02-03 12:45:44 +00:00
fvdl
92bf89da0b
Oops, remove debugging printf.
2001-02-03 01:23:08 +00:00
fvdl
3d66a69335
For the read subchannel ioctl, don't mix up the data and address formats,
...
and always set the track to 0, like Linux does.
2001-02-03 01:17:38 +00:00
jdolecek
c48d420625
emul_find(): actually, the emulation root vnode dance has to be done for
...
CHECK_ALT_SYMLINK() same way as for CHECK_ALT_EXISTS()
This fixes lossage reported on current-users and kern/12019 by Ross Harvey.
2001-02-02 21:17:45 +00:00
mrg
0b2b6b074d
add netbsd32 & sunos32 to the (commented) SUBDIR line.
2001-02-02 13:08:04 +00:00
mrg
eefaef162b
properly implement compat_43_netbsd32_stat43, compat_43_netbsd32_lstat43
...
and compat_43_netbsd32_fstat43. now 32-bit ls(1) works. so does static
sunos `/sbin/sh' on sparc64.
2001-02-02 13:06:48 +00:00
mrg
87cc07b7c9
implement netbsd32_lchflags & netbsd32_utrace
2001-02-02 13:05:18 +00:00
mrg
674f1689f6
regen
2001-02-02 13:03:39 +00:00
mrg
b0f29c9c95
add lchflags, issetugid, utrace, reserves for [gs]etcontext, and sched/SA.
2001-02-02 13:01:44 +00:00
mrg
2110531265
implement stat & fstat properly.
2001-02-02 13:00:29 +00:00
mrg
bdec681975
sunos_ioctl.c is included by sunos32_ioctl.c. include the sunos32 &
...
netbsd32 headers if we are in sunos32 mode.
2001-02-02 12:59:43 +00:00
mrg
2f62d51a64
generate.
2001-02-02 07:29:42 +00:00
mrg
3fbaadb80d
initial support for sunos binaries running on a 64 bit sparc64 kernel.
...
some programs work, many do not yet.
2001-02-02 07:28:54 +00:00
mrg
b67bcac710
don't build these files if we're doing compat_netbsd32 as well.
...
a different set are required.
2001-02-02 07:12:27 +00:00
mrg
157a31d7a1
make this useful when compiled on sparc64: two members in sunos_nfs_args
...
become typedefs.
2001-02-02 07:11:09 +00:00
mrg
e4c34bc9e5
de-static netbsd32_exec_aout_prep_[zno]magic().
...
de-static netbsd32_from_stat43().
move the guts of netbsd32_execve() into netbsd32_execve2().
all of are for the forthcoming sunos32 compat mode (for sparc64).
2001-02-02 07:08:17 +00:00
thorpej
95a72e42de
egen; getpid(2) is MP-safe.
2001-01-27 08:02:10 +00:00
thorpej
00d798f276
getpid(2) is MP-safe.
2001-01-27 07:59:58 +00:00
thorpej
b54650a0bc
Regen; getpid(2) is MP-safe.
2001-01-27 07:58:37 +00:00
thorpej
e00fb66e89
getpid(2) is MP-safe.
2001-01-27 07:58:22 +00:00
thorpej
cf30c31b4d
Regen; getpid(2) is MP-safe.
2001-01-27 07:56:54 +00:00
thorpej
bca5b90ff2
getpid(2) is MP-safe.
2001-01-27 07:56:30 +00:00
thorpej
e385ddef5e
Regen; getpid(2) is MP-safe.
2001-01-27 07:55:44 +00:00
thorpej
f979b01e55
getpid(2) is MP-safe.
2001-01-27 07:55:23 +00:00
thorpej
c1bdc2ed00
Regen; getpid(2) is MP-safe.
2001-01-27 07:54:43 +00:00
thorpej
3853970b15
getpid(2) is MP-safe.
2001-01-27 07:54:24 +00:00
thorpej
3c55fd337f
Regen; getpid(2) is MP-safe.
2001-01-27 07:53:27 +00:00
thorpej
f3e8131498
getpid(2) is MP-safe.
2001-01-27 07:53:10 +00:00
thorpej
987590c661
Regen; getpid(2) is MP-safe.
2001-01-27 07:52:20 +00:00
thorpej
4f58e50fa7
getpid(2) is MP-safe.
2001-01-27 07:51:22 +00:00
thorpej
c69905cee8
Regen; getpid(2) is MP-safe.
2001-01-27 07:50:34 +00:00
thorpej
ac878f7a8c
getpid(2) is MP-safe.
2001-01-27 07:50:11 +00:00
thorpej
1b6a66420e
Regen; add sy_flags.
2001-01-27 07:23:06 +00:00
manu
de8918d969
Moved include <sys/ioctl.h> so that we can build without WSCONS enabled.
2001-01-26 19:41:52 +00:00
manu
86651a757f
Fixed wrong signal handler argument setup. The emulated sigcontext still has some problems.
2001-01-25 19:36:53 +00:00
jdolecek
1b91de887e
use CHECK_ALT_SYMLINK() for lstat(2)
...
don't call stackgap_init() for pwrite(2) and pread(2), it's not necessary
2001-01-22 21:31:37 +00:00
jdolecek
13ca559d39
Use CHECK_ALT_SYMLINK() instead CHECK_ALT_EXISTS() where appropriate.
...
This addresses kern/11757.
2001-01-22 20:08:03 +00:00
jdolecek
2fcd02eea0
Introduce CHECK_ALT_SYMLINK() - this checks for alternative location without
...
following links, hence is usable for checking of presence of a symlink.
Also slighly cleanup EXISTS and CREAT cases - use symbolic constants
instead of 0/1.
This is needed for emulation of readlink(2), lchown(2) and similar.
Addresses kern/11757.
2001-01-22 19:50:56 +00:00
manu
9c111b5a93
Fixed wrong open() Linux flags definition (octal instead of hexadecimal)
2001-01-21 22:19:26 +00:00
manu
167ec91e4b
Fix the "created from" field of files generated from syscalls.master (this
...
master file did not have a RCS Id at generation time, hence the problem)
2001-01-20 19:03:01 +00:00
manu
0d6749fdd9
Fixed wrong ioctl definitions that caused Linux ioctl TCGETS and many other to
...
fail
2001-01-20 18:59:55 +00:00
manu
fe95c9c3de
Moved architecure dependent part of struct linux_termio to architecture
...
dependent header files.
2001-01-20 18:56:41 +00:00
manu
94785018b1
Fixed a typo
2001-01-20 10:36:05 +00:00
manu
d932075a0e
Fixed a typo (two instructions dupliated at the end of code that were not reached)
2001-01-19 12:49:22 +00:00
manu
d5329fdce7
Cosmetic fix to move powerpc from "guesses" to "know values"
2001-01-19 12:35:47 +00:00
manu
e20b81421d
Added Linux errno mapping for powerpc
2001-01-19 12:27:13 +00:00
manu
3c98a504b9
Added previously created files for powerpc Linux compatibility to the kernel
...
config system
2001-01-19 01:51:16 +00:00
manu
083ffa3b67
Added support for powerpc Linux compatibility
2001-01-19 01:44:46 +00:00
manu
ac10cf6946
Added a linux_atexit_signature to match Linux statically linked ELF binaries. It
...
searches for a __libc_atexit ELF section, which is specific to Linux
2001-01-19 01:43:31 +00:00
manu
cac0b39302
Added Linux compatibility support for powerpc ports
2001-01-19 01:40:38 +00:00
manu
5472427809
Added powerpc specific code for Linux compatibility on powerpc ports
2001-01-19 01:36:47 +00:00
manu
3ec1257260
Added various header files for initial Linux compatibility on powerpc ports
2001-01-19 01:31:23 +00:00
jdolecek
34c8ae80da
constify
2001-01-18 20:28:15 +00:00
jdolecek
e912e655e1
kill local declaration of native_to_linux_errno[], one in common/linux_errno.h suffices
2001-01-18 18:41:20 +00:00
tv
e58532a4bf
No-op commit to force update to a non-"-kk" revision.
2001-01-18 17:47:58 +00:00
fvdl
6784825249
EINVAL -> ENOTTY
2001-01-18 13:56:32 +00:00
thorpej
009d2d725c
Grok __HAVE_MINIMAL_EMUL and __HAVE_SYSCALL_INTERN.
2001-01-15 21:33:52 +00:00
oki
880b841888
Add support to mmap .bss section.
...
Use vmcmd_map_pagedvn if possible.
2001-01-15 17:05:32 +00:00
fvdl
07ca2a03bf
Correct copyright year.
2001-01-10 02:33:47 +00:00
fvdl
8c4bd70cda
Add linux_blkio.c
2001-01-10 02:29:29 +00:00
fvdl
d772be168f
Declare linux_ioctl_blkio and call it from the main routine.
2001-01-10 02:28:38 +00:00
fvdl
da9e8a988d
Add some BLK* ioctl calls. Currently only the easy and useful ones
...
are implemented.
2001-01-10 02:28:01 +00:00
fvdl
c99aee0084
Add emulation of KIOCSOUND.
2001-01-09 13:01:03 +00:00
simonb
f514e805ed
Move prototypes for mips_user_cachectl() and mips_user_cacheflush()
...
to <mips/cachectl.h>.
2001-01-07 04:13:16 +00:00
fvdl
3950869204
Set Linux version to 2.0.38 for now, until the clone + "real time signal"
...
problems are fixed.
2001-01-05 15:31:15 +00:00
fvdl
bcac62574c
Implement KDGETMODE ioctl.
2000-12-29 22:06:58 +00:00
fvdl
2d53941bd4
Hardcode what the linux uname() calls return (Linux 2.2.5 is the current
...
value). A few major applications check for this (like VMware), and
there is no other way to trick them. Needs a more generic solution
eventually.
2000-12-29 21:07:16 +00:00
fvdl
1b9256990d
Regen.
2000-12-29 20:11:52 +00:00
fvdl
17f991c744
Don't pass through link(2) directly, as we need to do altpath checks.
2000-12-29 20:11:32 +00:00
fvdl
1575b3e35a
Regen.
2000-12-29 20:10:46 +00:00
fvdl
cc449a70ed
Don't pass through link(2) directly, as we need to do altpath checks.
2000-12-29 20:10:17 +00:00
fvdl
e8e363d309
Regen.
2000-12-29 20:09:57 +00:00
fvdl
54450b21c0
Don't pass through link(2) directly, as we need to do altpath checks.
2000-12-29 20:09:39 +00:00
fvdl
f90b2fc517
Avoid sign extension problem in offset.
2000-12-29 20:08:54 +00:00
fvdl
77765cf28f
Do alternate path checks for link(2).
2000-12-29 20:08:31 +00:00
fvdl
6f552a029f
Allow the EJUSTRETURN hack for PTIOCLINUX-passed through ioctl calls.
2000-12-29 20:07:53 +00:00
fvdl
b930296d07
Under Linux it's possible to return values through the ioctl system
...
call directly (i.e. not a reference argument, but a direct return
value). So far I have only seen this with binaries that talk
to their own device modules, using non-standard ioctl calls.
Hence, allow for a pass-through ioctl call using PTIOCLINUX to
return EJUSTRETURN, signalling that the return value is in
the 'data' field of the structure, which can then be put in 'retval'.
2000-12-29 20:07:25 +00:00
jdolecek
1e46d6c702
use NetBSD utrace(2) facilities for FreeBSD utrace(2) emulation;
...
use id 'FreeBSD utrace'
2000-12-28 11:18:01 +00:00
sommerfeld
5217f6335b
Let COMPAT_LINUX build with DEBUG
2000-12-27 23:47:58 +00:00
fvdl
7fbbc11d9c
Regen.
2000-12-27 22:04:35 +00:00
fvdl
7cd004ead8
Add all uid and gid calls, and do the right thing for the older 16 bit
...
ones.
2000-12-27 22:04:05 +00:00
fvdl
41e840d9c7
Regen.
2000-12-27 22:03:10 +00:00
fvdl
11156e7e47
Add all uid and gid calls, and do the right thing for the older 16 bit
...
ones.
2000-12-27 22:02:41 +00:00
fvdl
62af6738b1
Use CHECK_ALT_* for chown and lchown, missed in my previous commit.
...
Get *id16 calls right; most can be passed through directly, but
some need the 16->32 check for -1 values.
2000-12-27 22:01:42 +00:00
jdolecek
c6a69abc26
adapt to recent changes of signal structures
2000-12-27 21:58:52 +00:00
itohy
811fede455
Regen.
2000-12-26 01:57:57 +00:00
itohy
4aee4579ba
Declare linux_sys_setgid16() (NOARGS -> STD).
...
Change syscall #182 from linux_sys_lchown() to linux_sys_lchown16().
2000-12-26 01:57:10 +00:00
fvdl
e60e785474
Don't do the syscall with modified ioctl command if we've successfully
...
done a 'passthrough' ioctl.
2000-12-22 23:41:16 +00:00
jdolecek
e9e91a0fb5
split off thread specific stuff from struct sigacts to struct sigctx, leaving
...
only signal handler array sharable between threads
move other random signal stuff from struct proc to struct sigctx
This addresses kern/10981 by Matthew Orgass.
2000-12-22 22:58:52 +00:00
fvdl
1a09a359eb
Add SIOCGIFBR and SIOCSIFBR (more for reference than anything, currently).
2000-12-22 11:24:43 +00:00
thorpej
7027166972
Regen.
2000-12-21 20:42:42 +00:00
thorpej
c0b556f767
Make an Alpha kernel with COMPAT_LINUX compile again.
2000-12-21 20:42:15 +00:00
thorpej
f7a4dd48fd
Only include the 16-bit uid/gid stuff if on i386 or m68k. This is a
...
little ugly, but hey, so is Linux.
2000-12-21 20:19:22 +00:00
thorpej
e57273c82e
Only include the 16-bit chown/fchown/lchown stuff if on i386 or m68k.
...
This is a little ugly, but hey, so is Linux.
2000-12-21 20:15:53 +00:00
jdolecek
0d8b0305c5
don't define SYSVMSG if it's already defined
2000-12-21 19:30:26 +00:00
fvdl
b542c20c5b
Fix yet another typo.
2000-12-21 13:37:02 +00:00
fvdl
b76b718303
Fix another pasto.
2000-12-19 22:24:03 +00:00
jdolecek
2db538c869
separate the freebsd syscall code similarily to other emulations
2000-12-18 20:38:27 +00:00
fvdl
b7ffc98bf8
Fix pasto in previous.
2000-12-18 16:27:20 +00:00
mrg
272c549ab2
copy exec_aout.c:exec_aout_setup_stack to netbsd32_exec_aout_setup_stack,
...
but use USRSTACK32 not USRSTACK, so that we get 32-bit stack addresses.
now 32 bit a.out binaries work on sparc64.
2000-12-18 14:50:04 +00:00
fvdl
3259cebc4c
For unknown ioctls, pass them through to a device using PTIOCLINUX,
...
so that it may deal with them if it knows them (i.e. LKMs which
deal with Linux binaries).
2000-12-18 14:47:38 +00:00
fvdl
865e7b1375
Pass SIOC* calls that are done on devices (not sockets) through
...
without trying to interpret done, as is done on Linux. The device
will get them as PTIOCLINUX, with command and arg in the structure
passed in.
2000-12-18 14:46:36 +00:00
fvdl
8578d458e5
Define LINUX_SIOCDEVPRIVATE (currently not emulated for sockets).
2000-12-18 14:44:44 +00:00
fvdl
4d193ccde8
Add seperate entries for 16 bit uid/gid calls, so that border cases
...
like 0xffff can be handled better (not done yet).
2000-12-18 14:40:02 +00:00
fvdl
0bda0568cf
Regen.
2000-12-18 14:37:36 +00:00
fvdl
41623d32a2
Update for Linux calls with 32 bit uids/gids.
2000-12-18 14:37:17 +00:00
fvdl
8839755950
Update for 32 bit Linux uid/gid calls.
2000-12-18 14:36:35 +00:00
jdolecek
f66ae436e9
make compilable without KTRACE, too
2000-12-18 08:53:39 +00:00
jdolecek
29fd738f28
make LKM safe
2000-12-17 16:15:54 +00:00
jdolecek
cec7e3ceca
regen
2000-12-17 16:14:40 +00:00
jdolecek
b436e7bba3
add emulation of FreeBSD utrace(2)
2000-12-17 16:11:38 +00:00
jdolecek
df68499f38
make LKM safe
2000-12-17 15:55:47 +00:00
scw
7fb03460dc
Sprinkle some register prefixes in the asm() statements.
2000-12-16 22:59:32 +00:00
jdolecek
72014988d6
adapt to recent struct emul changes
2000-12-16 13:30:08 +00:00
mycroft
b29180b2ff
Tighten up the ELF signature checks, and actually look for the ABI tag added
...
in newer glibc versions.
2000-12-15 06:14:21 +00:00
simonb
6ec588df0d
Correctly order the contents of the emul_hpux struct so this compiles.
2000-12-14 22:55:36 +00:00
jdolecek
5f0114a837
regen
2000-12-14 20:39:36 +00:00
jdolecek
14b2acc126
add sysinfo()
2000-12-14 20:37:57 +00:00
mycroft
bdf4af93a3
Some namespace hiding I forgot before.
2000-12-14 18:10:35 +00:00
mycroft
ccaa88d980
Declare linux_syscall_intern().
2000-12-14 18:10:14 +00:00
mycroft
b8d0fc574a
Regen.
2000-12-14 18:08:09 +00:00
mycroft
52e8ecc51c
Round up sysent[] table size.
2000-12-14 18:07:54 +00:00
augustss
8dab2a36e1
Regen.
2000-12-13 21:42:21 +00:00
augustss
b907acd3fd
Add sysinfo.
2000-12-13 21:41:46 +00:00
augustss
ccf2c891cc
Implement sysinfo.
2000-12-13 21:41:23 +00:00
itohy
3e9f9f8abf
sync with i386, so that exec_conf.c compiles again
2000-12-13 03:49:51 +00:00
mycroft
108d17eb16
Do the md_syscall, __HAVE_MINIMAL_EMUL and __HAVE_SYSCALL_INTERN thangs.
2000-12-13 03:16:36 +00:00
mycroft
165574c579
Regen.
2000-12-13 01:29:35 +00:00
mycroft
c87c56ee90
Round up sysent[] table size.
2000-12-13 01:29:16 +00:00
jdolecek
638d27777e
add linux_sys_truncate64()
2000-12-12 22:24:56 +00:00
jdolecek
e60b4a518d
regen
2000-12-12 22:23:47 +00:00
jdolecek
405a6ce62f
actually, we need to wrap sys_truncate() call so that the /emul/linux/...
...
path is tried first
fix ftruncate64 entry - first arg to ftruncate is int fd, not path
2000-12-12 22:23:02 +00:00
jdolecek
621dac5bc2
define struct linux_stat64 used by linux_sys_*stat64()
2000-12-12 19:07:59 +00:00
jdolecek
c3dd514d84
regen
2000-12-12 19:03:10 +00:00
jdolecek
daff00c255
add emulation of Linux truncate64(2), ftruncate64(2), *stat64(2)
2000-12-12 19:01:59 +00:00
jdolecek
f8d1770316
define EXEC_AOUT (if not defined) before including linux_syscallargs.h,
...
to get linux_sys_uselib() prototype
2000-12-12 17:52:56 +00:00
fvdl
0b7398458a
Allow for passing through of certain ranges of ioctl command values
...
directly to a device. The device has to be aware of how to handle
with these special ioctls. Useful for LKMs that deal with Linux
binaries.
2000-12-12 15:11:56 +00:00
mycroft
455360f941
Do the __HAVE_SYSCALL_INTERN and __HAVE_MINIMAL_EMUL dance.
2000-12-12 08:00:26 +00:00
mycroft
f495cd9dc6
Introduce 2 new flags in types.h:
...
* __HAVE_SYSCALL_INTERN. If this is defined, e_syscall is replaced by
e_syscall_intern, which is called at key places in the kernel. This can be
used to set a MD syscall handler pointer. This obsoletes and replaces the
*_HAS_SEPARATED_SYSCALL flags.
* __HAVE_MINIMAL_EMUL. If this is defined, certain (deprecated) elements in
struct emul are omitted.
2000-12-11 05:28:59 +00:00
mycroft
fef5184d84
Regen.
2000-12-11 04:56:01 +00:00
mycroft
fc774b14ce
getuid -> getuid_with_euid
...
getgid -> getgid_with_egid
2000-12-11 04:55:50 +00:00
mycroft
75fbdc005e
Nuke LINUX_MACHDEP_PASS_PPID.
2000-12-11 04:55:09 +00:00
mycroft
cfe0002fc5
Regen.
2000-12-11 04:54:29 +00:00
mycroft
6d0c28a87c
getpid -> getpid_with_ppid
2000-12-11 04:54:13 +00:00
mycroft
e99a608974
Regen.
2000-12-11 03:09:10 +00:00