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