compat glue for new lwp_park

This commit is contained in:
christos 2013-03-29 01:04:30 +00:00
parent ab470567c6
commit 14184f73a9
5 changed files with 24 additions and 14 deletions

View File

@ -1,4 +1,4 @@
# $NetBSD: files.netbsd32,v 1.32 2012/03/10 21:51:58 joerg Exp $
# $NetBSD: files.netbsd32,v 1.33 2013/03/29 01:04:30 christos Exp $
#
# config file description for machine-independent netbsd32 compat code.
# included by ports that need it.
@ -36,3 +36,4 @@ file compat/netbsd32/netbsd32_compat_20.c compat_netbsd32 & compat_20
file compat/netbsd32/netbsd32_compat_30.c compat_netbsd32 & compat_30
file compat/netbsd32/netbsd32_compat_43.c compat_netbsd32 & (compat_43 | compat_sunos | compat_linux32)
file compat/netbsd32/netbsd32_compat_50.c compat_netbsd32 & compat_50
file compat/netbsd32/netbsd32_compat_60.c compat_netbsd32 & compat_60

View File

@ -1,4 +1,4 @@
/* $NetBSD: netbsd32_compat_50.c,v 1.22 2012/11/03 23:22:22 njoly Exp $ */
/* $NetBSD: netbsd32_compat_50.c,v 1.23 2013/03/29 01:04:30 christos Exp $ */
/*-
* Copyright (c) 2008 The NetBSD Foundation, Inc.
@ -36,7 +36,7 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_50.c,v 1.22 2012/11/03 23:22:22 njoly Exp $");
__KERNEL_RCSID(0, "$NetBSD: netbsd32_compat_50.c,v 1.23 2013/03/29 01:04:30 christos Exp $");
#if defined(_KERNEL_OPT)
#include "opt_sysv.h"
@ -561,7 +561,8 @@ compat_50_netbsd32__lwp_park(struct lwp *l,
return error;
}
return lwp_park(tsp, SCARG_P32(uap, hint));
return lwp_park(CLOCK_REALTIME, TIMER_ABSTIME, tsp,
SCARG_P32(uap, hint));
return 0;
}

View File

@ -1,4 +1,4 @@
/* $NetBSD: netbsd32_lwp.c,v 1.14 2012/07/20 02:27:36 christos Exp $ */
/* $NetBSD: netbsd32_lwp.c,v 1.15 2013/03/29 01:04:30 christos Exp $ */
/*
* Copyright (c) 2005, 2006, 2007 The NetBSD Foundation.
@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: netbsd32_lwp.c,v 1.14 2012/07/20 02:27:36 christos Exp $");
__KERNEL_RCSID(0, "$NetBSD: netbsd32_lwp.c,v 1.15 2013/03/29 01:04:30 christos Exp $");
#include <sys/types.h>
#include <sys/param.h>
@ -152,12 +152,14 @@ netbsd32__lwp_setprivate(struct lwp *l, const struct netbsd32__lwp_setprivate_ar
}
int
netbsd32____lwp_park50(struct lwp *l,
const struct netbsd32____lwp_park50_args *uap, register_t *retval)
netbsd32____lwp_park60(struct lwp *l,
const struct netbsd32____lwp_park60_args *uap, register_t *retval)
{
/* {
syscallarg(const netbsd32_clockid_t) clock_id;
syscallarg(int) flags;
syscallarg(const netbsd32_timespec50p) ts;
syscallarg(lwpid_t) unpark;
syscallarg(netbsd32_lwpid_t) unpark;
syscallarg(netbsd32_voidp) hint;
syscallarg(netbsd32_voidp) unparkhint;
} */
@ -182,7 +184,8 @@ netbsd32____lwp_park50(struct lwp *l,
return error;
}
return lwp_park(tsp, SCARG_P32(uap, hint));
return lwp_park(SCARG(uap, clock_id), SCARG(uap, flags), tsp,
SCARG_P32(uap, hint));
}
int

View File

@ -1,10 +1,10 @@
# $NetBSD: syscalls.conf,v 1.11 2009/01/11 02:45:49 christos Exp $
# $NetBSD: syscalls.conf,v 1.12 2013/03/29 01:04:30 christos Exp $
sysnames="netbsd32_syscalls.c"
sysnumhdr="netbsd32_syscall.h"
syssw="netbsd32_sysent.c"
sysarghdr="netbsd32_syscallargs.h"
compatopts="compat_43 compat_09 compat_10 compat_11 compat_12 compat_13 compat_14 compat_15 compat_16 compat_20 compat_30 compat_40 compat_50"
compatopts="compat_43 compat_09 compat_10 compat_11 compat_12 compat_13 compat_14 compat_15 compat_16 compat_20 compat_30 compat_40 compat_50 compat_60"
libcompatopts=""
switchname="netbsd32_sysent"

View File

@ -1,4 +1,4 @@
$NetBSD: syscalls.master,v 1.96 2012/10/02 01:44:28 christos Exp $
$NetBSD: syscalls.master,v 1.97 2013/03/29 01:04:30 christos Exp $
; from: NetBSD: syscalls.master,v 1.81 1998/07/05 08:49:50 jonathan Exp
; @(#)syscalls.master 8.2 (Berkeley) 1/13/94
@ -890,7 +890,7 @@
netbsd32_timespecp_t timeout); }
432 UNIMPL netbsd32___mq_timedsend50
433 UNIMPL netbsd32___mq_timedreceive50
434 STD { int|netbsd32|50|_lwp_park( \
434 COMPAT_60 { int|netbsd32||_lwp_park( \
const netbsd32_timespecp_t ts, \
lwpid_t unpark, const netbsd32_voidp hint, \
const netbsd32_voidp unparkhint); }
@ -1039,3 +1039,8 @@
netbsd32_clockid_t clock_id, \
int flags, const netbsd32_timespecp_t rqtp, \
netbsd32_timespecp_t rmtp); }
478 STD { int|netbsd32|60|_lwp_park(\
netbsd32_clockid_t clock_id, \
int flags, const netbsd32_timespecp_t ts, \
lwpid_t unpark, netbsd32_voidp hint, \
netbsd32_voidp unparkhint); }