Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/i386 Declare INTR_RECURSE_HWFRAME, same as amd64.
details: https://anonhg.NetBSD.org/src/rev/b6e89cbe9f60
branches: trunk
changeset: 359069:b6e89cbe9f60
user: maxv <maxv%NetBSD.org@localhost>
date: Sat Jan 27 18:48:59 2018 +0000
description:
Declare INTR_RECURSE_HWFRAME, same as amd64.
diffstat:
sys/arch/i386/i386/vector.S | 20 ++++++--------------
sys/arch/i386/include/frameasm.h | 7 ++++++-
2 files changed, 12 insertions(+), 15 deletions(-)
diffs (83 lines):
diff -r daf380a8bd47 -r b6e89cbe9f60 sys/arch/i386/i386/vector.S
--- a/sys/arch/i386/i386/vector.S Sat Jan 27 18:44:19 2018 +0000
+++ b/sys/arch/i386/i386/vector.S Sat Jan 27 18:48:59 2018 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: vector.S,v 1.73 2017/08/18 14:52:19 maxv Exp $ */
+/* $NetBSD: vector.S,v 1.74 2018/01/27 18:48:59 maxv Exp $ */
/*
* Copyright 2002 (c) Wasabi Systems, Inc.
@@ -65,7 +65,7 @@
*/
#include <machine/asm.h>
-__KERNEL_RCSID(0, "$NetBSD: vector.S,v 1.73 2017/08/18 14:52:19 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: vector.S,v 1.74 2018/01/27 18:48:59 maxv Exp $");
#include "opt_ddb.h"
#include "opt_multiprocessor.h"
@@ -149,9 +149,7 @@
* General purpose IPI handler.
*/
IDTVEC(recurse_lapic_ipi)
- pushfl
- pushl %cs
- pushl %esi
+ INTR_RECURSE_HWFRAME
pushl $0
pushl $T_ASTFLT
INTRENTRY
@@ -276,9 +274,7 @@
* Interrupt from the local APIC timer.
*/
IDTVEC(recurse_lapic_ltimer)
- pushfl
- pushl %cs
- pushl %esi
+ INTR_RECURSE_HWFRAME
pushl $0
pushl $T_ASTFLT
INTRENTRY
@@ -335,9 +331,7 @@
#define INTRSTUB(name, num, early_ack, late_ack, mask, unmask, level_mask) \
IDTVEC(recurse_ ## name ## num) ;\
- pushfl ;\
- pushl %cs ;\
- pushl %esi ;\
+ INTR_RECURSE_HWFRAME ;\
subl $4,%esp ;\
pushl $T_ASTFLT /* trap # for doing ASTs */ ;\
INTRENTRY ;\
@@ -898,9 +892,7 @@
#define XENINTRSTUB(name, num, early_ack, late_ack, mask, unmask, level_mask) \
IDTVEC(recurse_ ## name ## num) ;\
- pushfl ;\
- pushl %cs ;\
- pushl %esi ;\
+ INTR_RECURSE_HWFRAME ;\
subl $4,%esp ;\
pushl $T_ASTFLT /* trap # for doing ASTs */ ;\
INTRENTRY ;\
diff -r daf380a8bd47 -r b6e89cbe9f60 sys/arch/i386/include/frameasm.h
--- a/sys/arch/i386/include/frameasm.h Sat Jan 27 18:44:19 2018 +0000
+++ b/sys/arch/i386/include/frameasm.h Sat Jan 27 18:48:59 2018 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: frameasm.h,v 1.24 2018/01/27 09:33:25 maxv Exp $ */
+/* $NetBSD: frameasm.h,v 1.25 2018/01/27 18:48:59 maxv Exp $ */
#ifndef _I386_FRAMEASM_H_
#define _I386_FRAMEASM_H_
@@ -76,6 +76,11 @@
#define INTRFASTEXIT \
jmp intrfastexit
+#define INTR_RECURSE_HWFRAME \
+ pushfl ; \
+ pushl %cs ; \
+ pushl %esi ;
+
#define CHECK_DEFERRED_SWITCH \
cmpl $0, CPUVAR(WANT_PMAPLOAD)
Home |
Main Index |
Thread Index |
Old Index