Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. =================================================================== RCS file: /ftp/cvs/cvsroot/src/sys/arch/powerpc/powerpc/sig_machdep.c,v rcsdiff: /ftp/cvs/cvsroot/src/sys/arch/powerpc/powerpc/sig_machdep.c,v: warning: Unknown phrases like `commitid ...;' are present. retrieving revision 1.23.20.1 retrieving revision 1.24 diff -u -p -r1.23.20.1 -r1.24 --- src/sys/arch/powerpc/powerpc/sig_machdep.c 2006/03/28 22:43:48 1.23.20.1 +++ src/sys/arch/powerpc/powerpc/sig_machdep.c 2005/12/11 12:18:46 1.24 @@ -1,4 +1,4 @@ -/* $NetBSD: sig_machdep.c,v 1.23.20.1 2006/03/28 22:43:48 riz Exp $ */ +/* $NetBSD: sig_machdep.c,v 1.24 2005/12/11 12:18:46 christos Exp $ */ /* * Copyright (C) 1995, 1996 Wolfgang Solfrank. @@ -32,7 +32,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: sig_machdep.c,v 1.23.20.1 2006/03/28 22:43:48 riz Exp $"); +__KERNEL_RCSID(0, "$NetBSD: sig_machdep.c,v 1.24 2005/12/11 12:18:46 christos Exp $"); #include "opt_compat_netbsd.h" #include "opt_ppcarch.h" @@ -223,12 +223,8 @@ cpu_setmcontext(struct lwp *l, const mco /* Restore GPR context, if any. */ if (flags & _UC_CPU) { - /* - * Accept all user-settable bits without complaint; - * userland should not need to know the machine-specific - * MSR value. - */ - gr[_REG_MSR] = (gr[_REG_MSR] & PSL_USERMOD) | PSL_USERSET; + if (!PSL_USEROK_P(gr[_REG_MSR])) + return (EINVAL); #ifdef PPC_HAVE_FPU /*