bjh21
99ba40c188
arm26->acorn26 transition.
2002-03-24 15:49:38 +00:00
jdolecek
bbee4277ca
fd_revoke(): don't assume that f_type other DTYPE_VNODE and DTYPE_SOCKET
...
is automatically bogus, make the code return EINVAL for all non-vnode
descriptors
2002-03-24 15:32:51 +00:00
jdolecek
4cfe9dc1f6
use FILE_USE()/FILE_UNUSE() as appropriate, use malloc()/free()
...
instead of MALLOC()/FREE() for variable-size allocations (sync
with kern/sys_generic.c)
XXX not tested
2002-03-24 15:19:24 +00:00
jdolecek
3089d90eeb
add explicit comment a FILE_USE() is not needed here
2002-03-24 15:12:45 +00:00
jdolecek
fc18dc8984
minor indentation fix
2002-03-24 15:03:00 +00:00
oki
b10ef43c8e
Read /usr/libexec/ld.so.dll if failed to read
...
/emul/pecoff/usr/libexec/ld.so.dll.
reported via IRC from kent, thanks.
2002-03-24 05:55:49 +00:00
jdolecek
0b5e2aba9a
Fix problem with assumption non-socket == vnode in F_{G,S}ETOWN different way
...
(revisions 1.47 & 1.48 effectively backed off):
* for all but vnodes, just fallback to sys_fcntl(); assumming
state of support for F_SETOWN/F_GETOWN and even hardcoding it here is
not right (e.g. rev. 1.47 had this incorrect for DTYPE_PIPE)
* fallback to sys_fcntl() also for vnodes which don't represent tty
* don't need to use FILE_{,UN}USE() here, the code won't block while
using the pointer
* add/fix some comments
2002-03-24 00:32:34 +00:00
christos
3c2d0dbff9
correct placement for FILE_UNUSE [from Izumi Tsutsui]
2002-03-23 15:36:15 +00:00
chs
60b5cc6ac2
make this compile again (PS_STRINGS is gone).
2002-03-23 05:00:04 +00:00
jdolecek
dd94bff875
invoke setregs hooks correctly, as in sys_execve()
...
Problem noted and fix tested by Eduardo Horvath
2002-03-22 21:36:46 +00:00
christos
0a4f1c3d8f
sync with current reality and fix debugging.
2002-03-22 18:39:23 +00:00
christos
65fc8539e4
gc debugging printfs.
2002-03-22 17:14:18 +00:00
christos
8b2467a1e9
nuke mmap2, cleanup mmap, add mprotect
2002-03-22 15:21:28 +00:00
christos
5681411206
regen
2002-03-22 15:19:53 +00:00
christos
b3c32e7e6d
nuke mmap2, add mprotect
2002-03-22 15:19:43 +00:00
christos
99ff14c9f3
regen
2002-03-22 15:18:48 +00:00
christos
45af46eb53
add mprotect, nuke mmap2
2002-03-22 15:18:13 +00:00
christos
b9a0007d1d
regen
2002-03-22 15:17:17 +00:00
christos
190ffecb97
add mprotect, nuke mmap2
2002-03-22 15:17:04 +00:00
christos
7359db6620
regen
2002-03-22 15:16:14 +00:00
christos
24e38ed8f3
nuke mmap2 add mprotect
2002-03-22 15:16:02 +00:00
christos
f7f4206314
regen.
2002-03-22 15:15:08 +00:00
christos
2b9a2aabe8
nuke mmap2, add mprotect
2002-03-22 15:14:55 +00:00
christos
92945f57fe
regen
2002-03-22 15:11:23 +00:00
christos
22111899d0
1. make sure lines don't wrap
...
2. fix mmap and call it mmap like other ports do, not mmap2
3. implement fcntl64
4. implement mprotect because linux treats args slightly differently.
2002-03-22 15:10:38 +00:00
christos
b02cb6b16f
implement the locking calls for linux_file64.
2002-03-22 14:54:49 +00:00
christos
3b57c6607c
- obey FILE_USE and FILE_UNUSE
...
- don't assume that non sockets point to vnodes.
2002-03-22 14:53:26 +00:00
christos
d9ada7eabf
Don't bitch if we don't have support for a particular arch. This makes it
...
easier to include this header from userland binaries [sysctl] on archs that
don't support compat-linux without incurring ifdef hell.
2002-03-21 13:23:48 +00:00
christos
e88e90e3bf
use 64 signals.
2002-03-20 17:50:07 +00:00
christos
50981e06bc
emulation specific sysctls. Also change the kernel date to nov 11 as requested
...
by bad.
2002-03-20 00:27:58 +00:00
christos
bda4b15e05
- Now that RT-signals fit, fix the array to deliver them. [i386 only].
...
- jdk-1.4 works perfectly now. :-)
2002-03-19 20:51:59 +00:00
manu
af187fe983
Added swapctl SC_ADD, SC_REMOVE and SC_SGIADD commands.
2002-03-18 20:34:54 +00:00
manu
a8db9077cd
Uses the recently introduced uvm_swap_stats() instead of
...
sys_swapctl(SWAP_STATS). This enable the use of a kernel based
buffer instead of using some temporary memory in the stackgap,
whereas we cannot make sure that the size os the struct swapent array
will fit in it. (it is not known at build time, but the stackgap len
is set at build time).
2002-03-18 17:21:24 +00:00
manu
1c1ef56eed
Cosmetic change (lines longer than 80 car)
2002-03-18 17:18:28 +00:00
oki
075769476a
Use /emul/pecoff as prefix to run PE/COFF binaries.
2002-03-18 07:11:06 +00:00
atatat
31144d9976
Convert ioctl code to use EPASSTHROUGH instead of -1 or ENOTTY for
...
indicating an unhandled "command". ERESTART is -1, which can lead to
confusion. ERESTART has been moved to -3 and EPASSTHROUGH has been
placed at -4. No ioctl code should now return -1 anywhere. The
ioctl() system call is now properly restartable.
2002-03-17 19:40:26 +00:00
christos
4b803b1108
panic if more space than stackgaplen is requested. Maybe I should remove the
...
size option completely.
2002-03-17 00:16:07 +00:00
christos
7c50f65a84
get rid of STACKGAP* shit.
2002-03-16 23:55:57 +00:00
christos
381e6a7764
make the stackgap_{init,alloc} functions MP friendly (i.e. pass struct proc *
...
in, instead of using curproc). While there add an optional size argument to
stackgap_init.
2002-03-16 20:43:48 +00:00
pooka
28a03499e8
Replace unused padding in struct linux_stat64 by lst_ino64 as found in
...
linux's m68k struct stat64.
makes linux compat compile again
2002-03-16 14:49:29 +00:00
manu
431e4d2b95
Added enough of swaptcl() command emulation to get swap -l working. This
...
is needed by acad (it exec's swap -l to check if swap is enabled)
2002-03-16 13:29:42 +00:00
manu
cdab2861e2
Added the IRIX /dev/kmem emulation pseudodevice driver
2002-03-15 17:21:26 +00:00
manu
eb3041b4dc
I finnally identified syssgi(SGI_FDHI) as the implementation of the
...
getdtablehi(3) library call. Updated comments and removed the paranoid
diagnostics about this mysterious syssgixi() request.
2002-03-13 20:33:41 +00:00
manu
25f8840ca4
Implements syssgi(FDHI), which seems (it's not documented) to return the
...
higher open file descriptor plus one. This makes IRIX's find able to work.
2002-03-13 07:54:18 +00:00
manu
b2ce645507
Added syssgi(GETGROUPS) and syssgi(SETGROUPS)
2002-03-10 22:36:28 +00:00
manu
911cceb1b7
Added statvfs/fstatvfs
2002-03-10 21:56:24 +00:00
manu
6a48d31676
Fix a bug in the way syssgi(MAPELF) handles relocation: we are supposed to
...
look for a block of free virtual memory big enough to hold all sections. The
blocks starts at the beginning of the first section and ends at the end of
the last section. In the previous version the block ended at the beginning
of the last section, hence creating situations where there was not enough
free space to map the section.
2002-03-10 19:03:08 +00:00
bjh21
a42e17ae9a
__RCSID -> __KERNEL_RCSID
2002-03-10 15:47:43 +00:00
bjh21
64a051900d
Id -> NetBSD in RCSID (oops).
2002-03-10 11:35:32 +00:00
manu
339682e5f4
Fixed a problem in getmountid emulation: we use the address of a kernel
...
structure for the mountid, but it is 32/64 bits long only, whereas
mountid is 128 bits long. Because we did not initialize the unused bits to
zero, the mountid was not always unique within a filesystem.
This makes autocad 1.3 able to start up.
2002-03-09 16:05:21 +00:00
manu
de4ff85b32
Fixed a bug in getdents64 emulation: we used a struct irix_dirent to hold
...
the result instead of a strruct irix_dirent64.
2002-03-09 13:32:12 +00:00
manu
d77463efde
Fixed typo
2002-03-09 13:13:09 +00:00
manu
3523a539eb
Attempt to provide support to programs digging the load average out of
...
/dev/kmem (probably broken at the moment)
2002-03-09 10:52:21 +00:00
manu
28cae7e6d6
Added setreuid/setregid
2002-03-04 22:19:02 +00:00
manu
cb99a5f48e
Implements SIOCNREAD ioctl (some kind of FIONREAD for sockets only). This
...
makes X11 binaries able to actually work: most of them were previously hang
in infinite loop wiaiting for data from the X server because SIOCNREAD
reported that some data where to be read whereas the X server had nothing
to say.
Tested (and works): xlogo, xterm, ghostview (IRIX build). Things are getting
interesting...
2002-03-03 20:12:17 +00:00
mrg
d3b3f3e560
move the COMPAT_SUNOS TIOCGPGRP handling in the compat sunos code proper.
...
this is the final fix needed for it to run properly as an LKM. no more
COMPAT_SUNOS hacks around the tree!
2002-03-02 12:30:43 +00:00
manu
63b308a593
FIxed typo
2002-02-23 22:43:56 +00:00
manu
d2e60e82f8
Fixed various sysconf() commands
2002-02-23 22:35:15 +00:00
manu
a9c374ed26
Added munmap() and mprotect()
2002-02-21 22:15:28 +00:00
manu
89e46d8a99
Reworked the o32/n32 matching scheme. IRIX uses some e_flags in the ELF
...
header to distinguish between o32, n32 and n64 ABIs. We now use this.
This suppress the need of the mips_option test, which had some fake positive.
This also removes the mandatory ordering of n32 vs o32 in the exec switch
(exec_conf.c)
2002-02-21 21:53:00 +00:00
manu
9d16e4d12b
Added gethostid/sethostid and the HOSTID command to systeminfo()
2002-02-21 11:09:43 +00:00
manu
25e8963ed3
Fixed typo
2002-02-20 21:18:18 +00:00
christos
07a8b6bf28
proper statfs emulation...
2002-02-20 17:03:03 +00:00
christos
227c487828
allow writing of kernel.version, kernel.osrelease, kernel.ostype... I might
...
revert that l8r if I come up with something better.
2002-02-20 17:02:48 +00:00
is
728d5e960d
fix some swapped parameters
2002-02-19 22:42:25 +00:00
nathanw
20d013dbed
Regen.
2002-02-19 16:46:12 +00:00
nathanw
502ca4a24b
Add linux_sys_{get,set}rlimit.
2002-02-19 16:44:09 +00:00
nathanw
cbc3e62bf0
Add LINUX_SA_NOCLDWAIT.
2002-02-19 16:35:59 +00:00
rafal
5af2ddd207
Add LINUX_SA_NOCLDWAIT, LINUX_SA_RESTORER, update LINUX_SA_ALLBITS. Linux
...
compat on mips builds again now.
2002-02-19 14:11:49 +00:00
christos
e52b5e4bfb
Resolve alpha compile issues:
...
- bug with order in args in mask conversion md code.
- flags can be both int and long on the alpha. kludge around that, by not
passing pointers to the conversion function.
- something is wrong with the toolchain look at the void * cast in copyout().
- sa_restorer is in a different place on the aplha. Deal with that, by not
initializing it as before. XXX: this should be changed in the MD signal
definition.
2002-02-18 22:24:17 +00:00
christos
1133f20b4f
regen
2002-02-18 20:20:25 +00:00
christos
08739d68be
provide linux_sys_getrlimit and linux_sys_setrlimit
2002-02-18 20:12:49 +00:00
jdolecek
2558157b0b
Back off previous partially - make linux_release[] back 2.0.38
...
and linux_version[] "#0 Sun Apr 1 11:11:11 MET 2000";". Add a BIG
WARNING MESSAGE so that people won't break things changing this.
2002-02-18 18:51:51 +00:00
christos
6e293e79bd
regen
2002-02-18 16:36:20 +00:00
christos
7f739a6187
fix comment.
2002-02-18 16:35:57 +00:00
rafal
0208af27ee
Regen: Use linux_sys_{g,s}setrlimit, remove linux_sys_ugetrlimit since
...
linux/mips doesn't seem to have one.
2002-02-18 00:10:26 +00:00
rafal
9751855fab
the MIPS stat64 struct doesn't have a separate ino64 field, but the ino field
...
is a u_longlong.
2002-02-17 23:57:57 +00:00
rafal
efdd3f2dd7
There is no linux_sys_ugetrlimit on mips, so don't try building it (XXX: adds
...
icky ifdefs)
2002-02-17 23:56:35 +00:00
rafal
dfcb814799
Use linux_sys_{g,s}etrlimit() since there's a common implementation now; but
...
MIPS has no sys_ugetrlimit, so don't declare it (209 is UNIMPL in the OSS
Linux-mips tree)
2002-02-17 23:55:23 +00:00
rafal
9f99fdabde
Adapt for changes to linux_to_native_sigset() and native_to_linux_sigset().
2002-02-17 23:18:38 +00:00
bjh21
db030aa93f
Add an lst_ino64 member to struct linux_stat64.
2002-02-17 23:18:11 +00:00
bjh21
0fd75dd4e5
Adapt for changes to limux_old_extra_to_native_sigset() and
...
native_to_linux_old_extra_sigset().
2002-02-17 23:05:08 +00:00
manu
457750dabf
Implemented irix_sys_systeminfo()
2002-02-17 22:49:53 +00:00
bjh21
9e7faceaf4
Add LINUX_SA_NOCLDWAIT.
2002-02-17 22:45:29 +00:00
bjh21
d0dfca3108
Regen.
2002-02-17 22:30:22 +00:00
bjh21
e5087cd2b4
getrlimit and setrlimit now have Linux-specific implementations. Use them.
2002-02-17 22:29:46 +00:00
bjh21
6c9d7cafe8
linux_sys_break() is marked OBSOL, so don't include it.
2002-02-17 22:03:23 +00:00
bjh21
3113edfb9a
linux_sys_rt_sigreturn is currently marked UNIMPL, so leave the stub out.
2002-02-17 22:00:09 +00:00
manu
d383f72720
reworked signal handling:
...
- do not save/and restore registers that should not be saved and restore
- do give an accurate sigcontext pointer to the signal handler
- do use the struct sigreturna from IRIX.
This eliminates panics and hangs in certain circonstances
Also some cosmetic changes with tabs usage
2002-02-17 20:50:06 +00:00
manu
853adfc30b
- implement SGI_GETSID command for syssgi()
...
- reworked SGI_GETPGID implementation to use the getpgid() system call instead
of duplicating it.
2002-02-17 20:44:17 +00:00
christos
6e89926d24
regen
2002-02-17 19:35:45 +00:00
christos
5a51f8945d
fix rlimit confusion.
2002-02-17 19:35:30 +00:00
christos
09a9c8ea3d
1. load cr2 now that we have it.
...
2. ldt_info.base_addr == 0 && ldt_info.limit == 0 means zero the ldt
From Robert V. Barron's wabi patch.
2002-02-16 16:23:09 +00:00
christos
57c8cc95f1
s/printf/uprintf/
2002-02-15 20:02:56 +00:00
christos
b03c54f812
regen
2002-02-15 16:50:58 +00:00
christos
3a4f78636f
Regen
2002-02-15 16:50:35 +00:00
christos
51ea9c87e7
proper comment.
2002-02-15 16:50:13 +00:00
christos
28debea38a
- add a real linux_sys___sysctl because the mib numbers are different.
...
implement only the kernel version getting entries.
- make the signal conversion functions consistent; dest is arg 1.
- make linux_fakedev deal with block and char devices differently.
- add linux_sys_ugetrlimit, and flesh out the regular get/setrlimit so
that they work properly.
- add linux_mmap2 [untested].
- bump kernel to 2.4.18, and make the date be valentine's day :-)
- linux_sys_*stat64 family was totally busted. Fix it.
tested only on i386.
Status:
gdb, telnet, work
jdk-1.4.0 extractor works, jdk still coredumps.
christos
2002-02-15 16:47:58 +00:00
chs
b744097a5f
allow writing to write-only mappings. fixes PR 3493.
2002-02-14 07:08:02 +00:00
manu
5ad92b8294
Fixed irix_blkcnt_t size (was 64 bit, changed to 32). This caused alignment
...
troubles in struct stat, hence giving wrong st_blocks, st_blksize and st_size
values.
2002-02-12 23:11:58 +00:00