@@ -19,15 +19,10 @@
#include <xen/event.h>
#include <xen/hypercall.h>
#include <xen/guest_access.h>
-#include <xen/lib.h>
-#include <xen/sched.h>
#include <compat/callback.h>
#include <compat/nmi.h>
-#include <asm/current.h>
-#include <asm/nmi.h>
#include <asm/shared.h>
-#include <asm/traps.h>
#include <public/callback.h>
@@ -20,25 +20,6 @@
*/
#include <xen/err.h>
-#include <xen/errno.h>
-#include <xen/event.h>
-#include <xen/guest_access.h>
-#include <xen/iocap.h>
-#include <xen/spinlock.h>
-#include <xen/trace.h>
-
-#include <asm/apic.h>
-#include <asm/debugreg.h>
-#include <asm/hpet.h>
-#include <asm/hypercall.h>
-#include <asm/mc146818rtc.h>
-#include <asm/p2m.h>
-#include <asm/pv/traps.h>
-#include <asm/shared.h>
-#include <asm/traps.h>
-#include <asm/x86_emulate.h>
-
-#include <xsm/xsm.h>
#include "emulate.h"
@@ -19,26 +19,8 @@
* along with this program; If not, see <http://www.gnu.org/licenses/>.
*/
-#include <xen/errno.h>
-#include <xen/event.h>
-#include <xen/guest_access.h>
-#include <xen/iocap.h>
-#include <xen/spinlock.h>
#include <xen/trace.h>
-#include <asm/apic.h>
-#include <asm/debugreg.h>
-#include <asm/hpet.h>
-#include <asm/hypercall.h>
-#include <asm/mc146818rtc.h>
-#include <asm/p2m.h>
-#include <asm/pv/traps.h>
-#include <asm/shared.h>
-#include <asm/traps.h>
-#include <asm/x86_emulate.h>
-
-#include <xsm/xsm.h>
-
#include "emulate.h"
static int emulate_forced_invalid_op(struct cpu_user_regs *regs)
@@ -19,25 +19,18 @@
* along with this program; If not, see <http://www.gnu.org/licenses/>.
*/
-#include <xen/errno.h>
+#include <xen/domain_page.h>
#include <xen/event.h>
#include <xen/guest_access.h>
#include <xen/iocap.h>
-#include <xen/spinlock.h>
-#include <xen/trace.h>
#include <asm/amd.h>
-#include <asm/apic.h>
#include <asm/debugreg.h>
#include <asm/hpet.h>
#include <asm/hypercall.h>
#include <asm/mc146818rtc.h>
-#include <asm/p2m.h>
#include <asm/pv/domain.h>
-#include <asm/pv/traps.h>
#include <asm/shared.h>
-#include <asm/traps.h>
-#include <asm/x86_emulate.h>
#include <xsm/xsm.h>
@@ -1,6 +1,8 @@
#ifndef __PV_EMULATE_H__
#define __PV_EMULATE_H__
+#include <xen/sched.h>
+
#include <asm/processor.h>
#include <asm/x86_emulate.h>
@@ -20,15 +20,7 @@
* along with this program; If not, see <http://www.gnu.org/licenses/>.
*/
-#include <xen/guest_access.h>
-#include <xen/rangeset.h>
-#include <xen/sched.h>
#include <xen/trace.h>
-
-#include <asm/domain.h>
-#include <asm/mm.h>
-#include <asm/pci.h>
-#include <asm/pv/mm.h>
#include <asm/shadow.h>
#include "emulate.h"
@@ -25,14 +25,11 @@
#include <xen/iocap.h>
#include <xen/param.h>
#include <xen/shutdown.h>
-#include <xen/types.h>
#include <xen/consoled.h>
#include <xen/pv_console.h>
-#include <asm/apic.h>
#include <asm/dom0_build.h>
#include <asm/guest.h>
-#include <asm/pv/mm.h>
#include <public/arch-x86/cpuid.h>
#include <public/hvm/params.h>
@@ -75,6 +75,7 @@ static inline void mmio_config_writel(void __iomem *pos, u32 val)
}
/* function prototypes */
+struct acpi_table_header;
int acpi_parse_mcfg(struct acpi_table_header *header);
int pci_mmcfg_reserved(uint64_t address, unsigned int segment,
unsigned int start_bus, unsigned int end_bus,
@@ -22,7 +22,6 @@
#ifndef _XEN_SHADOW_H
#define _XEN_SHADOW_H
-#include <public/domctl.h>
#include <xen/sched.h>
#include <xen/perfc.h>
#include <xen/domain_page.h>
@@ -31,6 +30,8 @@
#include <asm/p2m.h>
#include <asm/spec_ctrl.h>
+#include <public/domctl.h>
+
/*****************************************************************************
* Macros to tell which shadow paging mode a domain is in*/
@@ -28,6 +28,7 @@ extern int tb_init_done;
#define tb_init_done false
#endif
+#include <xen/types.h>
#include <public/sysctl.h>
#include <public/trace.h>
#include <asm/trace.h>
Several of these in particular haven't been pruned since the logic was all part of arch/x86/traps.c Some adjustments to header files are required to avoid compile errors: * emulate.h needs xen/sched.h because gdt_ldt_desc_ptr() uses v->vcpu_id. * mmconfig.h needs to forward declare acpi_table_header. * shadow.h and trace.h need to have uint*_t in scope before including the Xen public headers. For shadow.h, reorder the includes. For trace.h, include types.h Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> --- CC: Jan Beulich <JBeulich@suse.com> CC: Wei Liu <wl@xen.org> CC: Roger Pau Monné <roger.pau@citrix.com> --- xen/arch/x86/pv/callback.c | 5 ----- xen/arch/x86/pv/emul-gate-op.c | 19 ------------------- xen/arch/x86/pv/emul-inv-op.c | 18 ------------------ xen/arch/x86/pv/emul-priv-op.c | 9 +-------- xen/arch/x86/pv/emulate.h | 2 ++ xen/arch/x86/pv/ro-page-fault.c | 8 -------- xen/arch/x86/pv/shim.c | 3 --- xen/arch/x86/x86_64/mmconfig.h | 1 + xen/include/asm-x86/shadow.h | 3 ++- xen/include/xen/trace.h | 1 + 10 files changed, 7 insertions(+), 62 deletions(-)