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
mycroft
c0341b165d
Round up sysent table size.
2000-12-11 03:09:02 +00:00
mycroft
f0689d5505
Regen.
2000-12-11 03:07:06 +00:00
mycroft
23babc12e5
Round up sysent table size.
2000-12-11 03:06:49 +00:00
thorpej
a1479e118c
Fix previous:
...
- EBADF, not NULL when a file descriptor can't be found.
- Check FIF_WANTCLOSE properly.
2000-12-10 17:34:25 +00:00
fvdl
a499e56944
Add some ioctls for harddisk, floppy disk and console handling.
...
Implement a few extra cdrom ioctl calls.
Make sure to correctly use FILE_USE and FILE_UNUSE.
2000-12-10 14:12:16 +00:00
fvdl
e772d7a6d5
Add i386-specific code for a few ioctl calls.
2000-12-10 14:09:59 +00:00
fvdl
ec9b1e3f5e
The gist of the Linux _IOX definitions was the same for all platforms;
...
move it to the MI linux_ioctl.h and only leave the MD bits in the MD
header files.
Add defintions for linux_ioctl_hdio and linux_ioctl_fdio.
2000-12-10 14:08:48 +00:00
fvdl
8488f3e039
The gist of the Linux _IOX definitions was the same for all platforms;
...
move it to the MI linux_ioctl.h and only leave the MD bits in the MD
header files.
2000-12-10 14:07:22 +00:00
fvdl
f86f1f091f
Add linux_hdio.c and linux_fdio.c
2000-12-10 14:05:54 +00:00
christos
835b5d35c5
how many different prototypes does linux_syscall() need finally? sheesh!
2000-12-09 19:51:44 +00:00
jdolecek
87a6bee3a9
prototype ibcs2_syscall() in compat/ibcs2/ibcs2_exec.c
2000-12-09 12:45:44 +00:00
jdolecek
8f9b01eba1
prototype svr4_syscall() (only) in compat/svr4/svr4_exec.c
2000-12-09 12:44:26 +00:00
jdolecek
a6ca890142
always fill in e_syscall in respective emul_*; if the emulation doesn't
...
have it's own separated *_syscall() function, use syscall()
2000-12-09 12:38:23 +00:00
jdolecek
415500a28f
regen
2000-12-09 12:27:00 +00:00
jdolecek
c557c9f0f9
add more unimplemented syscalls to list
2000-12-09 12:23:35 +00:00
jdolecek
217ab37653
split ecoff specific code to separate file ultrix_exec_ecoff.c
2000-12-09 12:19:28 +00:00
mycroft
dd92250590
Regen.
2000-12-09 07:11:17 +00:00
mycroft
9b7a9b2897
Get rid of the damn EMUL_GET* flags.
2000-12-09 07:10:34 +00:00
mycroft
77b46f5749
Oops; missed a critical #include.
2000-12-09 06:25:03 +00:00
mycroft
95bdfed457
Add hook for a separate svr4_syscall().
2000-12-09 06:20:17 +00:00
mycroft
51e3b887d7
Regen.
2000-12-09 06:19:40 +00:00
mycroft
e2743f72a9
Round up the sysent table size.
2000-12-09 06:15:42 +00:00
mycroft
f348afacb9
Regen.
2000-12-09 05:37:01 +00:00
mycroft
d47448bce6
Add the %% separators.
2000-12-09 05:31:10 +00:00
mycroft
9682cf0b09
Add the %% separators.
2000-12-09 05:27:28 +00:00
jdolecek
cc5b7ecb22
put the ecoff specific code from osf1_exec.c to osf1_exec_ecoff.c
2000-12-08 21:39:30 +00:00
jdolecek
f4c6609be7
change emulation name from 'netbsd' to 'aoutm68k'
2000-12-08 20:07:43 +00:00
jdolecek
0576f87ad3
add infrastructure to load emulations and their executable support dynamically
...
via LKM
2000-12-08 19:42:11 +00:00
jdolecek
6f1bed130e
regen
2000-12-06 21:26:07 +00:00
jdolecek
79e6f66114
make LKM safe
2000-12-06 21:25:39 +00:00
jdolecek
3a7eb81dbe
make LKM safe (need to use if/endif, #if/#endif is filtered out by makesyscalls.sh)
2000-12-06 21:24:47 +00:00
jdolecek
eb248dea94
regen
2000-12-06 21:02:30 +00:00
jdolecek
6ddca63eb7
make LKM safe
2000-12-06 21:02:00 +00:00
sommerfeld
5348dfb6ac
Have recursive make invocations depend on the .MAKE pseudo-target so
...
make knows to handle them specially.
2000-12-05 17:01:19 +00:00
eeh
433c92930e
Fix uninitialized pointer bug.
2000-12-05 15:25:57 +00:00
fvdl
c3d820fa5d
Use a copied fktrace syscall arg structure with out 'const int' for the
...
filedescriptor to copy arguments, avoiding a warning. XXX
2000-12-03 14:48:29 +00:00
fvdl
5ce71a2aed
Include opt_* files to make sure prototypes are included.
2000-12-03 14:47:27 +00:00
fvdl
8537802e8d
Add systm.h to pull in copyout* prototypes.
2000-12-03 13:15:38 +00:00
scw
47a35be2c9
Initial cut of COMPAT_AOUT_M68K.
...
This gets most existing m68k a.out binaries working with m68k ELF
kernels.
There are still some remaining ABI issues to track down; most notably,
some ioctl(2) calls are affected by the change.
2000-12-02 20:40:03 +00:00
jdolecek
6f4041b981
regen after addition of linux_sys_swapoff()
2000-12-02 16:45:51 +00:00
jdolecek
1acf11b550
add emulation of linux swapoff(2)
2000-12-02 16:43:50 +00:00
jdolecek
65203b4ec6
if IBCS2_MACHDEP_HAS_SEPARATED_SYSCALL is defined, put ibcs2_syscall to
...
emul_ibcs2
define IBCS2_MACHDEP_HAS_SEPARATED_SYSCALL in i386 ibcs2_machdep.h
2000-12-02 16:09:44 +00:00
jdolecek
da1aefe9bf
if machdep define LINUX_MACHDEP_HAS_SEPARATED_SYSCALL is defined, put
...
linux_syscall() to emul_linux
define LINUX_MACHDEP_HAS_SEPARATED_SYSCALL for i386
2000-12-02 16:05:04 +00:00
mrg
f5a3788577
pull over lost fix from nebsd32_exec.c:
...
>revision 1.25
>date: 2000/12/01 08:59:02; author: mrg; state: Exp; lines: +2 -2
>in netbsd32_elf32_probe(), 'pos' is really a pointer to an Elf_Addr, not a
>vaddr_t. cast the pointer before dereferencing it to avoid the alignment
>fault that broke compat_netbsd32, cuz pos is defined like:
> Elf_Addr phdr = 0, pos = 0;
>in exec_elf32.c.
2000-12-02 04:08:35 +00:00
jdolecek
df127e0001
make netbsd32_copyargs() an inline
2000-12-01 22:05:18 +00:00
jdolecek
e53f148af5
put a.out/elf32 specific things in netbsd32_exec_{aout|elf32}.c
...
emul_netbsd32 was moved to netbsd32_netbsd.c
g/c netbsd32_exec.c now
2000-12-01 21:51:08 +00:00
jdolecek
758d9354ff
always define COMPAT_OLDSOCK (this tracks rev.1.55 of kern/uipc_syscalls.c)
...
move definition of emul_netbsd32 from netbsd32_exec.c here
fix couple of compile nits I encountered while compiling this with
sparc cross-compiler
2000-12-01 21:48:24 +00:00
jdolecek
445c16b759
implement linux_sys_setdomainname()/linux_sys_swapon(), using code
...
from compat_09_sys_setdomainname()/compat_12_sys_swapon().
2000-12-01 21:14:42 +00:00
jdolecek
31cf7b914c
regen
2000-12-01 21:11:02 +00:00
jdolecek
058a5a87bd
replace compat_09_sys_setdomainname() with linux_sys_setdomainname(),
...
compat_12_sys_swapon() with linux_sys_swapon() - this is to drop dependency
on COMPAT_12/COMPAT_09
2000-12-01 21:02:55 +00:00
jdolecek
b490742cef
if LINUX_MACHDEP_PASS_PPID_AND_EUID is defined for given arch, add
...
flags EMUL_GETPID_PASS_PPID|EMUL_GETID_PASS_EID to emul_linux
define this option for alpha
2000-12-01 20:31:13 +00:00
jdolecek
5c032b6899
define EXEC_AOUT before including freebsd_exec.h, so that the a.out stuff
...
gets defined
2000-12-01 19:35:39 +00:00
jdolecek
8e91e3f0bd
make LKM safe
2000-12-01 19:26:57 +00:00
jdolecek
2ff42428df
put elf32 specific code from svr4_exec.c to separate file svr4_exec_elf32.c
2000-12-01 19:26:26 +00:00
jdolecek
dc7c57f299
make LKM safe
2000-12-01 19:25:10 +00:00
jdolecek
36e6e46132
put aout specific sunos code from sunos_exec.c to separate file
...
sunos_exec_aout.c
make LKM safe
add EMUL_GETPID_PASS_PPID|EMUL_GETID_PASS_EID to emul_sunos flags
2000-12-01 19:24:36 +00:00
jdolecek
43ac5f6b81
put aout specific sunos code from sunos_exec.c to separate file
...
sunos_exec_aout.c
2000-12-01 19:23:10 +00:00
jdolecek
7f86cf1b2c
make LKM safe
2000-12-01 19:20:56 +00:00
jdolecek
e0c059250f
emul_osf1: add flags EMUL_GETPID_PASS_PPID|EMUL_GETID_PASS_EID
2000-12-01 19:20:22 +00:00
jdolecek
70569d32c8
prototype netbsd32_stat12_to_netbsd32()
2000-12-01 19:18:46 +00:00
jdolecek
f1badb80a7
put executable format specific code from ibcs2_exec.c to separate
...
files ibcs2_exec_coff.c, ibcs2_exec_elf32.c, ibcs2_exec_xout.c as
appropriate
2000-12-01 19:17:41 +00:00
jdolecek
e826fe9d58
split aout-specific code to sepatate file hpux_exec_aout.c
2000-12-01 19:15:12 +00:00
jdolecek
b4a8a5fbce
split aout and elf32 specific code to separate files
...
emul_freebsd: add emul flags
EMUL_HAS_SYS___syscall|EMUL_GETPID_PASS_PPID|EMUL_GETID_PASS_EID
2000-12-01 19:13:47 +00:00
jdolecek
caae796b52
add emul flag EMUL_HAS_SYS___syscall
2000-12-01 19:12:11 +00:00
jdolecek
011229ffcb
make LKM safe
2000-12-01 18:16:54 +00:00
jdolecek
23a13e04be
LKMify, g/c no more needed extern declarations, make hpuxtobsdioctl() static
2000-12-01 18:05:53 +00:00
jdolecek
31a6e57929
LKMify
2000-12-01 18:03:54 +00:00
jdolecek
798f64c85b
put linux_sys_uselib() to separate file linux_uselib.c
2000-12-01 13:49:35 +00:00
jdolecek
81f0543ba6
fix the emulation path
2000-12-01 13:21:37 +00:00
jdolecek
28c12f0c39
provide extern const struct emul emul_osf1
2000-12-01 12:51:03 +00:00
jdolecek
01040d97a2
add e_path (emulation path) to struct emul, which replaces emulation-specific
...
*_emul_path variables
change macros CHECK_ALT_{CREAT|EXIST} to use that, 'root' doesn't need
to be passed explicitly any more and *_CHECK_ALT_{CREAT|EXIST} are removed
change explicit emul_find() calls in probe functions to get the emulation
path from the checked exec switch entry's emulation
remove no longer needed header files
add e_flags and e_syscall to struct emul; these are unsed and empty for now
2000-12-01 12:28:30 +00:00
mrg
7af8b6448c
in netbsd32_elf32_probe(), 'pos' is really a pointer to an Elf_Addr, not a
...
vaddr_t. cast the pointer before dereferencing it to avoid the alignment
fault that broke compat_netbsd32, cuz pos is defined like:
Elf_Addr phdr = 0, pos = 0;
in exec_elf32.c.
2000-12-01 08:59:02 +00:00
jdolecek
50d91bb255
fix typo - it should be compat_09_netbsd32_uname, not compat_09_netbsd32_ouname
2000-11-30 19:19:43 +00:00
jdolecek
e8fcbc2bf1
always include netbsd32_ntp_adjtime(), LKMify
2000-11-30 19:17:56 +00:00
jdolecek
cad0013a61
only define SYSVMSG, SYSVSEM, SYSVSHM if it's not defined already
2000-11-30 19:14:35 +00:00
jdolecek
6626f506b3
LKMify
2000-11-30 19:05:26 +00:00
jdolecek
6b1add13dc
sync netbsd32_execve() with sys_execve() - this involves
...
VMCMD_RELATIVE support, couple of debugging printfs and addition of
doexechooks() call
also fix one FREE() which should be free()
2000-11-30 12:54:38 +00:00
jdolecek
73f3cd8c7e
LKMify
2000-11-29 21:51:49 +00:00
mrg
87650daf07
make this compile again, after execsw/lkm changes.
2000-11-28 13:07:27 +00:00
jdolecek
872ef3b1fb
don't use linux_emuldata for now, so that this compiles after
...
rev 1.2 of compat/linux/common/linux_emuldata.h
2000-11-27 22:23:09 +00:00
jdolecek
d9f0dcbe03
adapt to execsw[] changes
2000-11-27 17:25:24 +00:00
tsutsui
6c33654882
Add declarations of hpux_setregs() and struct emul emul_hpux.
2000-11-27 15:26:17 +00:00
scw
7d7a448f88
Make these compile with the latest execsw[] changes. Someone with
...
SunOS binaries needs to test this...
2000-11-24 10:21:30 +00:00
thorpej
32831b2eb4
Update for change of name of FPU synch routine.
2000-11-22 08:40:47 +00:00
itojun
fdbcde1abe
more COMPAT_OSF1 fix (exec_conf.c conversion?)
2000-11-22 03:56:52 +00:00
itojun
6c7e531e99
make COMPAT_OSF1 to compile. not tested (could someone review?).
2000-11-22 03:48:33 +00:00
jdolecek
ad1c55c73b
implement PTRACE_{GET|SET}FPREGS and framework for PTRACE_{PEEK|POKE}USER
...
this makes it possible to attach to linux process with linux gdb and
see top-most function on traceback; lower functions are not available,
probably due to bad frame setup
it's not possible to setup breakpoints - Linux gdb uses hw breakpoints,
so support for them would need to be written
2000-11-21 12:28:15 +00:00
jdolecek
a53687b13e
(de)allocate linux emuldata on fork/exec/exit as needed
2000-11-21 12:23:29 +00:00
jdolecek
33d7a60ccc
comment out ps_siginfo from struct emuldata for now, add int debugreg[8]
...
update comment a bit
2000-11-21 12:21:43 +00:00
jdolecek
baae0324b9
restructure struct emul and execsw, in preparation to make emulations LKMable:
...
* move all exec-type specific information from struct emul to execsw[] and
provide single struct emul per emulation
* elf:
- kern/exec_elf32.c:probe_funcs[] is gone, execsw[] how has one entry
per emulation and contains pointer to respective probe function
- interp is allocated via MALLOC() rather than on stack
- elf_args structure is allocated via MALLOC() rather than malloc()
* ecoff: the per-emulation hooks moved from alpha and mips specific code
to OSF1 and Ultrix compat code as appropriate, execsw[] has one entry per
emulation supporting ecoff with appropriate probe function
* the makecmds/probe functions don't set emulation, pointer to emulation is
part of appropriate execsw[] entry
* constify couple of structures
2000-11-21 00:37:49 +00:00
jdolecek
bc146d0eb0
make const the struct emul * pointers passed/used in stackgap_init(),
...
stackgap_alloc()
2000-11-20 20:23:07 +00:00
simonb
f2df695c3b
Update extern declarations of {hpux,ultrix}_syscallnames for change
...
to e_syscallnames in struct emul. Untested on HP, but should be ok.
2000-11-19 12:47:51 +00:00
mrg
822cec2475
get rid of remaining warnings.
2000-11-18 03:23:53 +00:00
mrg
e4f5ca29a9
kill gcc warnings.
2000-11-18 02:00:50 +00:00
thorpej
db3db664bd
Make this compile again.
2000-11-17 21:40:04 +00:00
simonb
1982741ab4
Don't need to extern ncpus - <sys/systm.h> has this.
2000-11-17 05:07:45 +00:00
erh
7d91e4941a
Regen.
2000-11-17 03:58:01 +00:00
erh
f96aee80d6
Make the linux compatibilty code work on the alpha. (horay!) (at last!)
...
Two main changes:
Create a linux_elf64_copyargs that uses the linux specific LinuxAuxInfo
structure. This is only used on the alpha. i386 and m68k use the
standard elf copyargs function.
Since linux's approach to binary compatibilty is to look as much
like osf1 as possible, add all the osf1 syscalls that we have
implemented to the linux syscall table. This includes get/setsysinfo,
ported from FreeBSD.
In order for linux compat to work you must have COMPAT_OSF1, COMPAT_43,
COMPAT_09, COMPAT_12 and COMPAT_13 on also.
2000-11-17 03:55:17 +00:00
erh
dad312de14
Provide some more useful information.
2000-11-17 03:40:25 +00:00
erh
2681c46114
Regen.
2000-11-17 03:07:25 +00:00
erh
447472c902
Port FreeBSD's osf1_sys_getsysinfo() and fill in setsysinfo. These are
...
incomplete at the moment (notable the fp_control stuff) but they need to
exist for the linux compatibilty code. All other osf1 syscalls needed for
linux compat are already here.
2000-11-17 03:06:28 +00:00
onoe
1e584c9cec
Adopt the recent change to makesyscalls.sh (char * -> const char * const)
...
to make kdump compilable for arch without linux emulation.
2000-11-15 08:34:03 +00:00
jdolecek
78b866e95a
change the type of *syscallnames[] array to 'const char * const foo[]'
2000-11-13 21:32:15 +00:00
eeh
559cfbe78a
Don't dereference NULL t_linesw.
2000-11-08 22:51:01 +00:00
erh
1f16400706
Update the names of some unimplemented syscalls to match what linux calls them. Match const in parameters to our sys_writev.
2000-11-08 04:19:00 +00:00
itohy
486a58959c
Adapt to the new line discipline scheme.
2000-11-02 11:00:53 +00:00
jdolecek
8d9bc8494c
move definition of LINUX_PTRACE_{SET|GET}(FP)REGS flags to
...
sys/compat/linux/common/linux_ptrace.h, they seem to be actually MI
2000-11-01 21:02:08 +00:00
jdolecek
7b1d98353d
Linux LINUX_PTRACE_SINGLESTEP operation should have same
...
semantics as NetBSD's PT_STEP, so support it on archs which have it
under Linux, ptrace(PTRACE_CONT, pid, 0, 0) is used to continue the
traced process where it left off; adjust addr to (caddr_t) 1 so that
the NetBSD syscall code DTRT
some sligh const poisoning
2000-11-01 20:56:30 +00:00
jdolecek
a6a1220287
regen
2000-11-01 20:43:56 +00:00
jdolecek
27d3e13121
support mlockall(), munlockall() - they are same as respective NetBSD syscalls
2000-11-01 20:38:49 +00:00
erh
5b09e159e7
Add sys/proc.h so this compiles.
2000-10-16 03:18:04 +00:00
onoe
eb1f8f2a3a
Map the ioctl number of ifioctl ('i') group as much as possible.
...
commands are: FreeBSD NetBSD
SIOCALIFADDR 27 28
SIOCGLIFADDR 28 29
SIOCDLIFADDR 29 30
SIOCGIFMTU 51 126
SIOCSIFMTU 52 127
* SIOCGLIFADDR is necessary for cvsup to work.
commands not emulated are:
SIOCGIFPHYS, SIOCSIFPHYS, SIOCGIFSTATUS, SIOCSIFLLADDR
2000-10-09 06:19:31 +00:00
eeh
1ecf6779be
Add support for variable end of user stacks needed to support COMPAT_NETBSD32:
...
`struct vmspace' has a new field `vm_minsaddr' which is the user TOS.
PS_STRINGS is deprecated in favor of curproc->p_pstr which is derived
from `vm_minsaddr'.
Bump the kernel version number.
2000-09-28 19:05:06 +00:00
martin
41c6b720f1
The ovadvise syscall is (correctly) listed as STD, so move it's implementation
...
to another place. This makes kernels without options COMPAT_43 link.
2000-09-24 13:09:31 +00:00
jdolecek
a777f280d1
fix obvious bug in svr4_sys_resolvepath():
...
since we have not requested locked vnode (LOCKLEAF is not used for namei()
call), the vnode is returned unlocked, so we need to use vrele(), not vput()
This fixes kern/11044.
2000-09-21 21:24:33 +00:00
thorpej
72a24b4eae
Add an align argument to uvm_map() and some callers of that
...
routine. Works similarly fto pmap_prefer(), but allows callers
to specify a minimum power-of-two alignment of the region.
How we ever got along without this for so long is beyond me.
2000-09-13 15:00:15 +00:00
ad
decb1dcfcf
const tty{numbers,letters}, and remove PCVT hack.
2000-09-11 15:12:40 +00:00
fvdl
7f5724ad4c
In the case of MAP_ANON, Linux mmap ignores the fd argument completely.
...
So, always pass -1 to the native syscall in that case, to avoid
errors if a Linux app doesn't specify -1 as the fd (which some do).
2000-09-07 22:20:45 +00:00
bouyer
aacf1f7a6a
Back out the suspendsched()/resumesched() thing, per request of Jason Thorpe &
...
Bill Sommerfeld. suspendsched() will be implemented in a different way.
2000-09-05 16:20:27 +00:00
bouyer
629150f864
Add the sched_suspend/sched_resume functions, as discussed on tech-kern,
...
with the following modifications to the initial patch:
- rename SHOLD and P_HOST to SSUSPEND and P_SUSPEND to avoid confusion with
PHOLD()
- don't deal with SSUSPEND/P_SUSPEND in fork1(), if we come here while
scheduler is suspended we're forking proc0, which can't have P_SUSPEND set.
sched_suspend() suspends the scheduling of users process, by removing all
processes from the run queues and changing their state from SRUN to
SSUSPEND. Also mark all user process but curproc P_SUSPEND.
When a process has to be put in SRUN and is marked P_SUSPEND, it's placed in
the SSUSPEND state instead.
sched_resume() places all SSUSPEND processes back in SRUN, clear the P_SUSPEND
flag.
2000-08-31 14:36:19 +00:00
itohy
a1a00824e1
Regen.
2000-08-31 03:49:44 +00:00
itohy
e2319847de
Add linux_sys_sigaltstack().
2000-08-31 03:46:30 +00:00
sommerfeld
99d6bcc3e1
more range-checking.
...
In debug code, limit the size of malloced buffers to a reasonable amount.
2000-08-30 01:13:22 +00:00
sommerfeld
90eb61037d
Range-check ioc->len
2000-08-29 15:15:13 +00:00
sommerfeld
6b88a0fc51
Emulation stackgap sanity checks, based partly on fixes from
...
FreeBSD-SA00:42.
Change stackgap_alloc to bounds-check the allocation vs. the stack
gap, returning NULL if there isn't room for the allocation.
Change emul_find() to check for a NULL return from stackgap_alloc()
and convert that into ENAMETOOLONG.
Reorder various emulation syscalls so that all *_CHECK_ALT_{EXIST,CREAT}
calls (which turn into emul_find() under the covers come *after* small,
fixed-size stackgap_alloc() calls.
Clean up ibcs2 {get,set}groups.
2000-08-29 14:33:25 +00:00
thorpej
4db6fc7542
Make need_resched() take a "struct cpu_info *" argument. This
...
causes gives a primitive form of processor affinity. Its use in
roundrobin() still needs some work.
2000-08-25 01:04:06 +00:00
matt
4e1f5ebf66
When reading dir entry by dir entry, we need to pad out the receive buffer
...
to at least a block to make ufs_readdir happy.
2000-08-23 21:11:47 +00:00
christos
e2bcf6b0b5
add support for sigaltstack(2) needed for jvm-1.3 support.
...
XXX: Only on i386, don't have access to other linuxes...
2000-08-23 17:02:18 +00:00
christos
7f6c062b21
regen
2000-08-23 17:01:20 +00:00
christos
303ab3ee07
add support for syscall 186 [sigaltstack]
2000-08-23 16:59:51 +00:00
mrg
8638251139
declare struct firm_event32
2000-08-22 03:35:14 +00:00
thorpej
a616e3a1af
splhigh() -> splsched(), and an XXXSMP.
2000-08-21 02:33:04 +00:00
thorpej
b4dc5fb0b7
splhigh() -> splsched()
2000-08-21 02:31:59 +00:00
eeh
1e8c5f2119
Fix netbsd32_ioctls.
2000-08-19 14:38:18 +00:00
cgd
0199b04bef
update for changed makesyscalls.master
2000-08-18 19:35:15 +00:00
cgd
3af42e5211
update for changed makesyscalls.sh
2000-08-18 19:26:56 +00:00
cgd
e539b49106
update for my change to makesyscalls.sh, and apparently previous
...
changes as well...
2000-08-18 19:25:37 +00:00
cgd
287e8a9edf
update for new makesyscalls.sh, and also for correct ids for changed
...
syscalls.master files. (you need to regenerate after checking in
syscalls.master to get the correct ids.)
2000-08-18 19:19:50 +00:00
matt
8666ad87ba
Fix read problem on directories on UFS.
2000-08-18 17:38:33 +00:00
matt
693b01e5da
Fix IBCS2_S_IFWGRP
2000-08-17 15:16:01 +00:00
tron
29e1f8bd9f
Use accurate rounding in conversion between OSS and NetBSD volume values.
...
The optimized integer formula was supplied by Wolfgang Solfrank on
"tech-kern@netbsd.org". This fixes problems with e.g FreeBSD TV (fxtv),
RealPlayer-7.0 Beta 2 (PR pkg/10818) and KDE's "kscd".
2000-08-16 16:14:33 +00:00
matt
52a3078697
fix some size_t/int confusion.
2000-08-11 22:21:41 +00:00
matt
66617b2137
Add ibcs2_sys_gtty.
2000-08-11 22:20:10 +00:00
matt
ef5099c8d8
Use size_t appropriately.
2000-08-11 22:19:29 +00:00
matt
e4dc804075
Regen.
2000-08-11 22:17:58 +00:00
matt
4153441571
add ibcs2_sys_gtty
2000-08-11 22:14:07 +00:00