Commit Graph

109 Commits

Author SHA1 Message Date
dsl 461647c21e Update using no pecoff specific system call code. 2007-04-23 21:23:13 +00:00
dsl ad5f09d13c Having removed all the CHECK_ALT_XXX() none of these syscall functions
do anything except call a standard function.  Nuke them all.
2007-04-23 21:22:29 +00:00
dsl b8fbaf8c4b Change the way that emulations locate files within the emulation root to
avoid having to allocate space in the 'stackgap'
  - which is very LWP unfriendly.
The additional code for non-emulation namei() is trivial, the reduction for
  the emulations is massive.
The vnode for a processes emulation root is saved in the cwdi structure
  during process exec.
If the emulation root the TRYEMULROOT flag are set, namei() will do an initial
  search for absolute pathnames in the emulation root, if that fails it will
  retry from the normal root.
".." at the emulation root will always go to the real root, even in the middle
  of paths and when expanding symlinks.
Absolute symlinks found using absolute paths in the emulation root will be
  relative to the emulation root (so /usr/lib/xxx.so -> /lib/xxx.so links
  inside the emulation root don't need changing).
If the root of the emulation would be returned (for an emulation lookup), then
  the real root is returned instead (matching the behaviour of emul_lookup,
  but being a cheap comparison here) so that programs that scan "../.."
  looking for the root dircetory don't loop forever.
The target for symbolic links is no longer mangled (it used to get the
  CHECK_ALT_xxx() treatment, so could get /emul/xxx prepended).
CHECK_ALT_xxx() are no more. Most of the change is deleting them, and adding
  TRYEMULROOT to the flags to NDINIT().
A lot of the emulation system call stubs could now be deleted.
2007-04-22 08:29:55 +00:00
christos 53524e44ef Kill caddr_t; there will be some MI fallout, but it will be fixed shortly. 2007-03-04 05:59:00 +00:00
cube 632ece3eaf Introduce a new member to struct emul, e_startlwp, to be used by
sys__lwp_create.  It allows using the said syscall under COMPAT_NETBSD32.

The libpthread regression tests now pass on amd64 and sparc64.
2007-02-19 15:10:02 +00:00
ad b07ec3fc38 Merge newlock2 to head. 2007-02-09 21:55:00 +00:00
christos 168cd830d2 __unused removal on arguments; approved by core. 2006-11-16 01:32:37 +00:00
christos 4d595fd7b1 - sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386
2006-10-12 01:30:41 +00:00
matt 280b69066a Regen. 2006-09-01 21:19:44 +00:00
matt 30183e299f Don't conditionalize *sys_ptrace. The lack of sys_ptrace will be dealt
with differently.
2006-09-01 20:58:18 +00:00
oki a7e68afd48 Regen (for PTRACE). 2006-08-31 00:23:11 +00:00
oki a978ade516 Update for options PTRACE. 2006-08-31 00:21:09 +00:00
martin b4cb63a646 Make filehandles opaque to userland 2006-07-31 16:34:42 +00:00
martin f956f13e21 Step 1 to make filehandles completely opaque to userland 2006-07-31 16:32:51 +00:00
ad f474dceb13 Use the LWP cached credentials where sane. 2006-07-23 22:06:03 +00:00
pavel 65ace88efa regenerate again to have correct source RCS Id 2006-07-13 22:35:06 +00:00
martin b2fb3338d9 Adapt to getfh versioning 2006-07-13 21:31:31 +00:00
pavel 60646c8d46 Regen after addition of sys___ntp_gettime30 and sys___socket30. 2006-06-29 06:02:42 +00:00
pavel 78789f2545 after sys_socket() versioning, add the new socket syscall. 2006-06-29 05:58:00 +00:00
pavel 43ffaf603b Add the new ntp_gettime syscall to match native syscalls.master. 2006-06-29 05:54:18 +00:00
mrg 1b7ff51599 regenerate. 2006-06-26 21:30:50 +00:00
mrg e2eb31d3a3 version the socket(2) syscall. for compat30 socket, we use
EPROTONOSUPPORT instead of EAFNOSUPPORT.

from pavel@ with a little bit of clean up from myself.

XXX: netbsd32 (and perhaps other emulations) should be able
XXX: to call the standard socket calls for this i think, but
XXX: revisit this at another time.
2006-06-26 21:23:56 +00:00
oki aab3cbfbad Added saemul_pecoff structure, and (hope) work again w/ pthread. 2006-06-20 14:11:56 +00:00
drochner 21166bafa5 regen 2006-05-29 09:46:54 +00:00
drochner 9575ca7cfd Remove emulation of ntp_gettime. In preparation for "timecounters" we
will change "struct ntptimeval", so some translation would be necessary.
ntp_gettine is considered dispensable, the only userland program known
to use it is "ntptime".
2006-05-29 09:44:51 +00:00
elad 874fef3711 integrate kauth. 2006-05-14 21:19:33 +00:00
mrg b569463af0 in pecoff_load_file() make size a u_long to match it's use. 2006-05-11 17:17:00 +00:00
christos 89a5572015 Regen 2006-05-04 17:50:28 +00:00
christos 9ec9aed92e fhstat needs to be versioned too (for ino_t). Pointed out by Izumi Tsutsui 2006-05-04 17:48:56 +00:00
thorpej be8b235384 Clean up fallout proc_is_traced_p() change:
- proc_is_traced_p() -> trace_is_enabled(), to match trace_enter() and
  trace_exit().
- trace_is_enabled() becomes a real function.
- Remove unnecessary include files from various files that used to care
  about KTRACE and SYSTRACE, but do no more.
2006-03-07 03:32:04 +00:00
kent d3dccfb5d8 regenerate for syscalls.master rev.1.16 2006-02-26 17:13:51 +00:00
kent 1d37dd09ca follow recent changes in sys/kern/syscalls.master 2006-02-26 17:12:44 +00:00
christos 95e1ffb156 merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
christos c3ae1990ca Regen 2005-11-17 17:09:05 +00:00
christos 7faedc67d3 need the non-compat version of shm.h too. 2005-11-17 17:07:03 +00:00
christos 306385b2a5 regen. 2005-11-10 18:47:31 +00:00
christos e2f2b17e31 add the new compat header. 2005-11-10 18:47:16 +00:00
christos 78063c9188 regen. 2005-10-20 15:35:42 +00:00
christos 0270612ce7 Conditionalize the sigreturn syscall inclusion; from Patrick Welche 2005-10-20 15:35:25 +00:00
christos 758a209d23 64 bit inode changes. 2005-08-19 02:03:49 +00:00
christos ecc4f71237 define syscall again. 2005-07-10 04:23:30 +00:00
christos f1461c7e8a No point in declaring syscall_intern and syscall in a zillion places. 2005-07-10 00:45:52 +00:00
christos 4e330f1fbc We don't have sigcode if we are not in COMPAT_16. 2005-06-14 22:35:20 +00:00
christos fb4b40b7e8 - sprinkle const.
- add XXXUNCONST to the emul_find() pbuf argument free'ing. XXX: this needs
  an api change.
- avoid variable shadowing.
2005-05-29 22:08:16 +00:00
fvdl c487efe4a7 Fix some things regarding COMPAT_NETBSD32 and limits/VM addresses.
* For sparc64 and amd64, define *SIZ32 VM constants.
* Add a new function pointer to struct emul, pointing at a function
  that will return the default VM map address. The default function
  is uvm_map_defaultaddr, which just uses the VM_DEFAULT_ADDRESS
  macro. This gives emulations control over the default map address,
  and allows things to be mapped at the right address (in 32bit range)
  for COMPAT_NETBSD32.
* Add code to adjust the data and stack limits when a COMPAT_NETBSD32
  or COMPAT_SVR4_32 binary is executed.
* Don't use USRSTACK in kern_resource.c, use p_vmspace->vm_minsaddr
  instead (emulations might have set it differently)
* Since this changes struct emul, bump kernel version to 3.99.2

Tested on amd64, compile-tested on sparc64.
2005-03-26 05:12:34 +00:00
perry 77f2a006d0 regen 2005-02-26 23:58:19 +00:00
perry 84f4fbb117 make this rebuild generated files by default 2005-02-26 23:46:50 +00:00
perry 477853c351 nuke trailing whitespace 2005-02-26 22:58:54 +00:00
christos 0b71a2d5de Don't try to map a 0 size bss. 2005-01-30 23:59:57 +00:00
oki 50d1aadd13 kill __P. 2005-01-22 01:36:59 +00:00