xen: Include suitable headers to make declarations visible

A range of functions can't see their declarations, requiring the inclusion of
appropriate headers.

For pv/mm.h and pv/traps.h, this requires adjustments to become stand-alone.

In pv/mm.h, swap xen/lib.h for xen/bug.h now that ASSERT_UNREACHABLE() has
moved.  For pv/traps.h, pv_trap_callback_registered() needs to see a complete
struct vcpu, and xen/sched.h is not something appropriate to pull in
conditionally.

stack-protector.c can't see the declaration of __stack_chk_guard, and fixing
that reveals that stack-protector.h needs get_cycles() too.

No functional change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
This commit is contained in:
Andrew Cooper committed 2026-02-25 16:06:04 +00:00
1 parent 7df89867c6
commit 44416a8431
14 files changed
+27 -8

No files matched your search

+7 -1
View File
@@ -10,6 +10,12 @@
#ifndef __X86_PV_MM_H__
#define __X86_PV_MM_H__
#include <xen/stdbool.h>
struct cpu_user_regs;
struct page_info;
struct vcpu;
#ifdef CONFIG_PV
int pv_ro_page_fault(unsigned long addr, struct cpu_user_regs *regs);
@@ -26,7 +32,7 @@ int validate_segdesc_page(struct page_info *page);
#else
#include <xen/errno.h>
#include <xen/lib.h>
#include <xen/bug.h>
static inline int pv_ro_page_fault(unsigned long addr,
struct cpu_user_regs *regs)
+2 -4
View File
@@ -10,9 +10,9 @@
#ifndef __X86_PV_TRAPS_H__
#define __X86_PV_TRAPS_H__
#ifdef CONFIG_PV
#include <xen/sched.h>
#include <public/xen.h>
#ifdef CONFIG_PV
int pv_raise_nmi(struct vcpu *v);
@@ -28,8 +28,6 @@ static inline bool pv_trap_callback_registered(const struct vcpu *v,
#else /* !CONFIG_PV */
#include <xen/errno.h>
static inline int pv_raise_nmi(struct vcpu *v) { return -EOPNOTSUPP; }
static inline int pv_emulate_privileged_op(struct cpu_user_regs *regs) { return 0; }
+4 -2
View File
@@ -7,10 +7,12 @@
* Copyright (c) 2009 Citrix Systems, Inc. (Patrick Colp)
*/
#include <asm/p2m.h>
#include <xen/guest_access.h>
#include <xen/vm_event.h>
#include <asm/mem_paging.h>
#include <asm/p2m.h>
#include <xsm/xsm.h>
#include "mm-locks.h"
+2
View File
@@ -9,6 +9,8 @@
#include <xen/err.h>
#include <asm/pv/traps.h>
#include "emulate.h"
static int read_gate_descriptor(unsigned int gate_sel,
+1
View File
@@ -8,6 +8,7 @@
*/
#include <asm/pv/trace.h>
#include <asm/pv/traps.h>
#include "emulate.h"
+1
View File
@@ -21,6 +21,7 @@
#include <asm/mc146818rtc.h>
#include <asm/pv/domain.h>
#include <asm/pv/trace.h>
#include <asm/pv/traps.h>
#include <asm/shared.h>
#include <asm/stubs.h>
+1
View File
@@ -10,6 +10,7 @@
#include <xen/guest_access.h>
#include <asm/debugreg.h>
#include <asm/pv/domain.h>
#include "emulate.h"
+1
View File
@@ -12,6 +12,7 @@
#include <public/grant_table.h>
#include <asm/p2m.h>
#include <asm/pv/grant_table.h>
#include <asm/pv/mm.h>
#include "mm.h"
+1
View File
@@ -12,6 +12,7 @@
#include <asm/current.h>
#include <asm/p2m.h>
#include <asm/pv/mm.h>
#include "mm.h"
+1
View File
@@ -8,6 +8,7 @@
* Copyright (c) 2004 Christian Limpach
*/
#include <asm/pv/mm.h>
#include <asm/pv/trace.h>
#include <asm/shadow.h>
+1
View File
@@ -16,6 +16,7 @@
#include <asm/idt.h>
#include <asm/irq-vectors.h>
#include <asm/pv/trace.h>
#include <asm/pv/traps.h>
#include <asm/shared.h>
#include <asm/traps.h>
+2 -1
View File
@@ -6,8 +6,9 @@
* - Magnus Damm <magnus@valinux.co.jp>
*/
#include <xen/types.h>
#include <xen/kernel.h>
#include <xen/kexec.h>
#include <asm/page.h>
#include <public/kexec.h>
+1
View File
@@ -2,6 +2,7 @@
#include <xen/init.h>
#include <xen/lib.h>
#include <xen/random.h>
#include <xen/stack-protector.h>
#include <xen/time.h>
/*
+2
View File
@@ -1,6 +1,8 @@
#ifndef __XEN_STACK_PROTECTOR_H__
#define __XEN_STACK_PROTECTOR_H__
#include <xen/time.h>
extern unsigned long __stack_chk_guard;
/*
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.