# HG changeset patch # User Tristan Gingold # Date 1195788978 -3600 # Node ID 7ae73883aeded690904260035663d0a88e7c91b0 # Parent dea67c1a8efa6629899e644caa1b2f97d6c391b6 Extract debug_op.h from arch-ia64.h Signed-off-by: Tristan Gingold diff -r dea67c1a8efa -r 7ae73883aede arch/ia64/xen/xcom_privcmd.c --- a/arch/ia64/xen/xcom_privcmd.c Wed Nov 21 09:12:39 2007 -0700 +++ b/arch/ia64/xen/xcom_privcmd.c Fri Nov 23 04:36:18 2007 +0100 @@ -31,6 +31,7 @@ #include #include #include +#include #include #include #include diff -r dea67c1a8efa -r 7ae73883aede include/xen/interface/arch-ia64.h --- a/include/xen/interface/arch-ia64.h Wed Nov 21 09:12:39 2007 -0700 +++ b/include/xen/interface/arch-ia64.h Fri Nov 23 04:36:18 2007 +0100 @@ -579,79 +579,6 @@ struct xen_ia64_boot_param { /* Extra debug features. */ #define __HYPERVISOR_ia64_debug_op __HYPERVISOR_arch_2 -/* Set/Get extra conditions to break. */ -#define XEN_IA64_DEBUG_OP_SET_FLAGS 1 -#define XEN_IA64_DEBUG_OP_GET_FLAGS 2 - -/* Break on kernel single step. */ -#define XEN_IA64_DEBUG_ON_KERN_SSTEP (1 << 0) - -/* Break on kernel debug (breakpoint or watch point). */ -#define XEN_IA64_DEBUG_ON_KERN_DEBUG (1 << 1) - -/* Break on kernel taken branch. */ -#define XEN_IA64_DEBUG_ON_KERN_TBRANCH (1 << 2) - -/* Break on interrupt injection. */ -#define XEN_IA64_DEBUG_ON_EXTINT (1 << 3) - -/* Break on interrupt injection. */ -#define XEN_IA64_DEBUG_ON_EXCEPT (1 << 4) - -/* Break on event injection. */ -#define XEN_IA64_DEBUG_ON_EVENT (1 << 5) - -/* Break on privop/virtualized instruction (slow path only). */ -#define XEN_IA64_DEBUG_ON_PRIVOP (1 << 6) - -/* Break on emulated PAL call (at entry). */ -#define XEN_IA64_DEBUG_ON_PAL (1 << 7) - -/* Break on emulated SAL call (at entry). */ -#define XEN_IA64_DEBUG_ON_SAL (1 << 8) - -/* Break on emulated EFI call (at entry). */ -#define XEN_IA64_DEBUG_ON_EFI (1 << 9) - -/* Break on rfi emulation (slow path only, before exec). */ -#define XEN_IA64_DEBUG_ON_RFI (1 << 10) - -/* Break on address translation switch. */ -#define XEN_IA64_DEBUG_ON_MMU (1 << 11) - -/* Break on bad guest physical address. */ -#define XEN_IA64_DEBUG_ON_BAD_MPA (1 << 12) - -/* Force psr.ss bit. */ -#define XEN_IA64_DEBUG_FORCE_SS (1 << 13) - -/* Force psr.db bit. */ -#define XEN_IA64_DEBUG_FORCE_DB (1 << 14) - -/* Break on ITR/PTR. */ -#define XEN_IA64_DEBUG_ON_TR (1 << 15) - -/* Break on ITC/PTC.L/PTC.G/PTC.GA. */ -#define XEN_IA64_DEBUG_ON_TC (1 << 16) - -/* Get translation cache. */ -#define XEN_IA64_DEBUG_OP_GET_TC 3 - -/* Translate virtual address to guest physical address. */ -#define XEN_IA64_DEBUG_OP_TRANSLATE 4 - -#ifndef __ASSEMBLY__ -union xen_ia64_debug_op { - uint64_t flags; - struct xen_ia64_debug_vtlb { - uint64_t nbr; /* IN/OUT */ - XEN_GUEST_HANDLE_64(ia64_tr_entry_t) tr; /* IN/OUT */ - } vtlb; -}; -typedef union xen_ia64_debug_op xen_ia64_debug_op_t; -DEFINE_XEN_GUEST_HANDLE(xen_ia64_debug_op_t); -#endif /* __ASSEMBLY__ */ - /* Xencomm macros. */ #define XENCOMM_INLINE_MASK 0xf800000000000000UL #define XENCOMM_INLINE_FLAG 0x8000000000000000UL diff -r dea67c1a8efa -r 7ae73883aede include/xen/interface/arch-ia64/debug_op.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/include/xen/interface/arch-ia64/debug_op.h Fri Nov 23 04:36:18 2007 +0100 @@ -0,0 +1,96 @@ +/****************************************************************************** + * debug_op.h + * + * Copyright (c) 2007 Tristan Gingold + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + +#ifndef __XEN_PUBLIC_IA64_DEBUG_OP_H__ +#define __XEN_PUBLIC_IA64_DEBUG_OP_H__ + +/* Set/Get extra conditions to break. */ +#define XEN_IA64_DEBUG_OP_SET_FLAGS 1 +#define XEN_IA64_DEBUG_OP_GET_FLAGS 2 + +/* Break on kernel single step. */ +#define XEN_IA64_DEBUG_ON_KERN_SSTEP (1 << 0) + +/* Break on kernel debug (breakpoint or watch point). */ +#define XEN_IA64_DEBUG_ON_KERN_DEBUG (1 << 1) + +/* Break on kernel taken branch. */ +#define XEN_IA64_DEBUG_ON_KERN_TBRANCH (1 << 2) + +/* Break on interrupt injection. */ +#define XEN_IA64_DEBUG_ON_EXTINT (1 << 3) + +/* Break on interrupt injection. */ +#define XEN_IA64_DEBUG_ON_EXCEPT (1 << 4) + +/* Break on event injection. */ +#define XEN_IA64_DEBUG_ON_EVENT (1 << 5) + +/* Break on privop/virtualized instruction (slow path only). */ +#define XEN_IA64_DEBUG_ON_PRIVOP (1 << 6) + +/* Break on emulated PAL call (at entry). */ +#define XEN_IA64_DEBUG_ON_PAL (1 << 7) + +/* Break on emulated SAL call (at entry). */ +#define XEN_IA64_DEBUG_ON_SAL (1 << 8) + +/* Break on emulated EFI call (at entry). */ +#define XEN_IA64_DEBUG_ON_EFI (1 << 9) + +/* Break on rfi emulation (slow path only, before exec). */ +#define XEN_IA64_DEBUG_ON_RFI (1 << 10) + +/* Break on address translation switch. */ +#define XEN_IA64_DEBUG_ON_MMU (1 << 11) + +/* Break on bad guest physical address. */ +#define XEN_IA64_DEBUG_ON_BAD_MPA (1 << 12) + +/* Force psr.ss bit. */ +#define XEN_IA64_DEBUG_FORCE_SS (1 << 13) + +/* Force psr.db bit. */ +#define XEN_IA64_DEBUG_FORCE_DB (1 << 14) + +/* Break on ITR/PTR. */ +#define XEN_IA64_DEBUG_ON_TR (1 << 15) + +/* Break on ITC/PTC.L/PTC.G/PTC.GA. */ +#define XEN_IA64_DEBUG_ON_TC (1 << 16) + +/* Get translation cache. */ +#define XEN_IA64_DEBUG_OP_GET_TC 3 + +/* Translate virtual address to guest physical address. */ +#define XEN_IA64_DEBUG_OP_TRANSLATE 4 + +union xen_ia64_debug_op { + uint64_t flags; + struct xen_ia64_debug_vtlb { + uint64_t nbr; /* IN/OUT */ + XEN_GUEST_HANDLE_64(ia64_tr_entry_t) tr; /* IN/OUT */ + } vtlb; +}; +typedef union xen_ia64_debug_op xen_ia64_debug_op_t; +DEFINE_XEN_GUEST_HANDLE(xen_ia64_debug_op_t); + +#endif /* __XEN_PUBLIC_IA64_DEBUG_OP_H__ */