Use PCB_SAVEFPU_SIZE instead of a too-small size in savectx(). This
bug only affected FPU emulators. It might have caused bogus FPU states in core dumps and in the child pcb after a fork. Emulated FPU states in core dumps don't work for other reasons, and the child FPU state is reinitialized by exec, so the problem might not have caused any noticeable affects. Cleaned up #includes.
This commit is contained in:
parent
5b5220556d
commit
0513ce7f75
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=15232
@ -33,19 +33,21 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: swtch.s,v 1.30 1996/03/12 05:44:23 nate Exp $
|
||||
* $Id: swtch.s,v 1.31 1996/03/19 04:40:03 nate Exp $
|
||||
*/
|
||||
|
||||
#include "npx.h" /* for NNPX */
|
||||
#include "opt_user_ldt.h" /* for USER_LDT */
|
||||
#include "assym.s" /* for preprocessor defines */
|
||||
#include "apm.h" /* for NAPM */
|
||||
#include <sys/errno.h> /* for error codes */
|
||||
#include "apm.h"
|
||||
#include "npx.h"
|
||||
#include "opt_user_ldt.h"
|
||||
|
||||
#include <machine/asmacros.h> /* for miscellaneous assembly macros */
|
||||
#include <machine/spl.h> /* for SWI_AST_MASK ... */
|
||||
#include <sys/errno.h>
|
||||
#include <sys/rtprio.h>
|
||||
|
||||
#include <machine/asmacros.h>
|
||||
#include <machine/spl.h>
|
||||
|
||||
#include "assym.s"
|
||||
|
||||
|
||||
/*****************************************************************************/
|
||||
/* Scheduling */
|
||||
@ -509,7 +511,7 @@ ENTRY(savectx)
|
||||
popl %ecx
|
||||
|
||||
pushl %ecx
|
||||
pushl $108+8*2 /* XXX h/w state size + padding */
|
||||
pushl $PCB_SAVEFPU_SIZE
|
||||
leal PCB_SAVEFPU(%ecx),%ecx
|
||||
pushl %ecx
|
||||
pushl %eax
|
||||
|
@ -33,19 +33,21 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: swtch.s,v 1.30 1996/03/12 05:44:23 nate Exp $
|
||||
* $Id: swtch.s,v 1.31 1996/03/19 04:40:03 nate Exp $
|
||||
*/
|
||||
|
||||
#include "npx.h" /* for NNPX */
|
||||
#include "opt_user_ldt.h" /* for USER_LDT */
|
||||
#include "assym.s" /* for preprocessor defines */
|
||||
#include "apm.h" /* for NAPM */
|
||||
#include <sys/errno.h> /* for error codes */
|
||||
#include "apm.h"
|
||||
#include "npx.h"
|
||||
#include "opt_user_ldt.h"
|
||||
|
||||
#include <machine/asmacros.h> /* for miscellaneous assembly macros */
|
||||
#include <machine/spl.h> /* for SWI_AST_MASK ... */
|
||||
#include <sys/errno.h>
|
||||
#include <sys/rtprio.h>
|
||||
|
||||
#include <machine/asmacros.h>
|
||||
#include <machine/spl.h>
|
||||
|
||||
#include "assym.s"
|
||||
|
||||
|
||||
/*****************************************************************************/
|
||||
/* Scheduling */
|
||||
@ -509,7 +511,7 @@ ENTRY(savectx)
|
||||
popl %ecx
|
||||
|
||||
pushl %ecx
|
||||
pushl $108+8*2 /* XXX h/w state size + padding */
|
||||
pushl $PCB_SAVEFPU_SIZE
|
||||
leal PCB_SAVEFPU(%ecx),%ecx
|
||||
pushl %ecx
|
||||
pushl %eax
|
||||
|
@ -33,19 +33,21 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: swtch.s,v 1.30 1996/03/12 05:44:23 nate Exp $
|
||||
* $Id: swtch.s,v 1.31 1996/03/19 04:40:03 nate Exp $
|
||||
*/
|
||||
|
||||
#include "npx.h" /* for NNPX */
|
||||
#include "opt_user_ldt.h" /* for USER_LDT */
|
||||
#include "assym.s" /* for preprocessor defines */
|
||||
#include "apm.h" /* for NAPM */
|
||||
#include <sys/errno.h> /* for error codes */
|
||||
#include "apm.h"
|
||||
#include "npx.h"
|
||||
#include "opt_user_ldt.h"
|
||||
|
||||
#include <machine/asmacros.h> /* for miscellaneous assembly macros */
|
||||
#include <machine/spl.h> /* for SWI_AST_MASK ... */
|
||||
#include <sys/errno.h>
|
||||
#include <sys/rtprio.h>
|
||||
|
||||
#include <machine/asmacros.h>
|
||||
#include <machine/spl.h>
|
||||
|
||||
#include "assym.s"
|
||||
|
||||
|
||||
/*****************************************************************************/
|
||||
/* Scheduling */
|
||||
@ -509,7 +511,7 @@ ENTRY(savectx)
|
||||
popl %ecx
|
||||
|
||||
pushl %ecx
|
||||
pushl $108+8*2 /* XXX h/w state size + padding */
|
||||
pushl $PCB_SAVEFPU_SIZE
|
||||
leal PCB_SAVEFPU(%ecx),%ecx
|
||||
pushl %ecx
|
||||
pushl %eax
|
||||
|
Loading…
Reference in New Issue
Block a user