Make sure the 32bit LWPs don't have MDL_IRET set. That's not a problem
right now, but will be in the future.
This commit is contained in:
parent
675bd60661
commit
c3992c95be
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: netbsd32_machdep.c,v 1.109 2017/09/17 09:41:35 maxv Exp $ */
|
||||
/* $NetBSD: netbsd32_machdep.c,v 1.110 2017/10/15 11:36:15 maxv Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2001 Wasabi Systems, Inc.
|
||||
|
@ -36,7 +36,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: netbsd32_machdep.c,v 1.109 2017/09/17 09:41:35 maxv Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: netbsd32_machdep.c,v 1.110 2017/10/15 11:36:15 maxv Exp $");
|
||||
|
||||
#ifdef _KERNEL_OPT
|
||||
#include "opt_compat_netbsd.h"
|
||||
|
@ -132,7 +132,7 @@ netbsd32_setregs(struct lwp *l, struct exec_package *pack, vaddr_t stack)
|
|||
|
||||
netbsd32_adjust_limits(p);
|
||||
|
||||
l->l_md.md_flags |= MDL_COMPAT32; /* Force iret not sysret */
|
||||
l->l_md.md_flags = MDL_COMPAT32; /* Force iret not sysret */
|
||||
pcb->pcb_flags = PCB_COMPAT32;
|
||||
|
||||
fpu_save_area_clear(l, pack->ep_osversion >= 699002600
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: linux32_machdep.c,v 1.39 2017/09/02 12:57:03 maxv Exp $ */
|
||||
/* $NetBSD: linux32_machdep.c,v 1.40 2017/10/15 11:36:15 maxv Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2006 Emmanuel Dreyfus, all rights reserved.
|
||||
|
@ -31,7 +31,7 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: linux32_machdep.c,v 1.39 2017/09/02 12:57:03 maxv Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: linux32_machdep.c,v 1.40 2017/10/15 11:36:15 maxv Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/proc.h>
|
||||
|
@ -283,7 +283,7 @@ linux32_setregs(struct lwp *l, struct exec_package *pack, u_long stack)
|
|||
|
||||
fpu_save_area_clear(l, __Linux_NPXCW__);
|
||||
|
||||
l->l_md.md_flags |= MDL_COMPAT32; /* Forces iret not sysret */
|
||||
l->l_md.md_flags = MDL_COMPAT32; /* Forces iret not sysret */
|
||||
pcb->pcb_flags = PCB_COMPAT32;
|
||||
|
||||
p->p_flag |= PK_32;
|
||||
|
|
Loading…
Reference in New Issue