diff options
author | Keir Fraser <keir.fraser@citrix.com> | 2010-08-02 11:11:53 +0100 |
---|---|---|
committer | Keir Fraser <keir.fraser@citrix.com> | 2010-08-02 11:11:53 +0100 |
commit | f187d23f35719057ebe8f788f4a12a9d13034d0b (patch) | |
tree | a52c9aea2a9b3f3bb0a30b6983a6006e7657d016 | |
parent | 470427c7d682d2229cfc11fc8e917de81ac6913f (diff) | |
download | xen-f187d23f35719057ebe8f788f4a12a9d13034d0b.tar.gz xen-f187d23f35719057ebe8f788f4a12a9d13034d0b.tar.bz2 xen-f187d23f35719057ebe8f788f4a12a9d13034d0b.zip |
gdbsx: Always build -- remove build-time config option.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset: 21702:2846fd19945c
xen-unstable date: Fri Jul 02 18:52:12 2010 +0100
tools/debugger/gdbsx: build enabled by default
Submitted-by: Bruce Edge <bruce.edge@gmail.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
xen-unstable changeset: 21752:29e545151078
xen-unstable date: Thu Jul 08 16:50:34 2010 +0100
tools/debugger/gdbsx: enabled by only x86
The changeset 21752:29e545151078 breaks ia64, since gdbsx supports
only x86.
Signed-off-by: KUWAMURA Shin'ya <kuwa@jp.fujitsu.com>
xen-unstable changeset: 21788:8429a8a23241
xen-unstable date: Tue Jul 13 19:08:48 2010 +0100
-rw-r--r-- | tools/Makefile | 12 | ||||
-rw-r--r-- | xen/Rules.mk | 2 | ||||
-rw-r--r-- | xen/arch/x86/Makefile | 2 | ||||
-rw-r--r-- | xen/arch/x86/domctl.c | 9 | ||||
-rw-r--r-- | xen/arch/x86/hvm/svm/svm.c | 2 | ||||
-rw-r--r-- | xen/arch/x86/hvm/vmx/vmx.c | 2 | ||||
-rw-r--r-- | xen/include/asm-x86/debugger.h | 2 | ||||
-rw-r--r-- | xen/include/asm-x86/domain.h | 2 |
8 files changed, 16 insertions, 17 deletions
diff --git a/tools/Makefile b/tools/Makefile index 48c98026b8..44366f0327 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -36,6 +36,7 @@ SUBDIRS-y += xenpmd SUBDIRS-y += libxl SUBDIRS-y += remus SUBDIRS-$(CONFIG_X86) += xenpaging +SUBDIRS-$(CONFIG_X86) += debugger/gdbsx # These don't cross-compile ifeq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH)) @@ -134,3 +135,14 @@ subdir-clean-ocaml-xenstored: $(MAKE) -C ocaml-xenstored clean; \ fi +subdir-clean-debugger/gdbsx subdir-distclean-debugger/gdbsx: .phony + $(MAKE) -C debugger/gdbsx clean + +subdir-install-debugger/gdbsx: .phony + $(MAKE) -C debugger/gdbsx install + +subdir-all-debugger/gdbsx: .phony + $(MAKE) -C debugger/gdbsx all + +subdir-distclean-firmware: .phony + $(MAKE) -C firmware distclean diff --git a/xen/Rules.mk b/xen/Rules.mk index 53bfab459d..d3348144c0 100644 --- a/xen/Rules.mk +++ b/xen/Rules.mk @@ -8,7 +8,6 @@ perfc ?= n perfc_arrays ?= n lock_profile ?= n crash_debug ?= n -gdbsx ?= n frame_pointer ?= n XEN_ROOT=$(BASEDIR)/.. @@ -53,7 +52,6 @@ CFLAGS-$(perfc) += -DPERF_COUNTERS CFLAGS-$(perfc_arrays) += -DPERF_ARRAYS CFLAGS-$(lock_profile) += -DLOCK_PROFILE CFLAGS-$(frame_pointer) += -fno-omit-frame-pointer -DCONFIG_FRAME_POINTER -CFLAGS-$(gdbsx) += -DXEN_GDBSX_CONFIG ifneq ($(max_phys_cpus),) CFLAGS-y += -DMAX_PHYS_CPUS=$(max_phys_cpus) diff --git a/xen/arch/x86/Makefile b/xen/arch/x86/Makefile index ba5da39e4b..3179f736e2 100644 --- a/xen/arch/x86/Makefile +++ b/xen/arch/x86/Makefile @@ -13,6 +13,7 @@ obj-y += bitops.o obj-y += clear_page.o obj-y += copy_page.o obj-y += compat.o +obj-y += debug.o obj-y += delay.o obj-y += dmi_scan.o obj-y += domctl.o @@ -56,7 +57,6 @@ obj-y += hpet.o obj-y += bzimage.o obj-$(crash_debug) += gdbstub.o -obj-$(gdbsx) += debug.o x86_emulate.o: x86_emulate/x86_emulate.c x86_emulate/x86_emulate.h diff --git a/xen/arch/x86/domctl.c b/xen/arch/x86/domctl.c index d87301b7d7..15554e26c5 100644 --- a/xen/arch/x86/domctl.c +++ b/xen/arch/x86/domctl.c @@ -34,7 +34,6 @@ #include <public/mem_event.h> #include <asm/mem_sharing.h> -#ifdef XEN_GDBSX_CONFIG #ifdef XEN_KDB_CONFIG #include "../kdb/include/kdbdefs.h" #include "../kdb/include/kdbproto.h" @@ -43,8 +42,9 @@ typedef unsigned long kdbva_t; typedef unsigned char kdbbyt_t; extern int dbg_rw_mem(kdbva_t, kdbbyt_t *, int, domid_t, int, uint64_t); #endif -static int -gdbsx_guest_mem_io(domid_t domid, struct xen_domctl_gdbsx_memio *iop) + +static int gdbsx_guest_mem_io( + domid_t domid, struct xen_domctl_gdbsx_memio *iop) { ulong l_uva = (ulong)iop->uva; iop->remain = dbg_rw_mem( @@ -52,7 +52,6 @@ gdbsx_guest_mem_io(domid_t domid, struct xen_domctl_gdbsx_memio *iop) iop->gwr, iop->pgd3val); return (iop->remain ? -EFAULT : 0); } -#endif /* XEN_GDBSX_CONFIG */ long arch_do_domctl( struct xen_domctl *domctl, @@ -1296,7 +1295,6 @@ long arch_do_domctl( } break; -#ifdef XEN_GDBSX_CONFIG case XEN_DOMCTL_gdbsx_guestmemio: { struct domain *d; @@ -1405,7 +1403,6 @@ long arch_do_domctl( rcu_unlock_domain(d); } break; -#endif /* XEN_GDBSX_CONFIG */ #ifdef __x86_64__ case XEN_DOMCTL_mem_event_op: diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c index 1b4be70dc7..723f84a071 100644 --- a/xen/arch/x86/hvm/svm/svm.c +++ b/xen/arch/x86/hvm/svm/svm.c @@ -1431,9 +1431,7 @@ asmlinkage void svm_vmexit_handler(struct cpu_user_regs *regs) if ( (inst_len = __get_instruction_length(v, INSTR_INT3)) == 0 ) break; __update_guest_eip(regs, inst_len); -#ifdef XEN_GDBSX_CONFIG current->arch.gdbsx_vcpu_event = TRAP_int3; -#endif domain_pause_for_debugger(); break; diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c index d5c8f0161a..8c510ce8e8 100644 --- a/xen/arch/x86/hvm/vmx/vmx.c +++ b/xen/arch/x86/hvm/vmx/vmx.c @@ -2421,9 +2421,7 @@ asmlinkage void vmx_vmexit_handler(struct cpu_user_regs *regs) goto exit_and_crash; inst_len = __get_instruction_length(); /* Safe: INT3 */ __update_guest_eip(inst_len); -#ifdef XEN_GDBSX_CONFIG current->arch.gdbsx_vcpu_event = TRAP_int3; -#endif domain_pause_for_debugger(); break; case TRAP_no_device: diff --git a/xen/include/asm-x86/debugger.h b/xen/include/asm-x86/debugger.h index 318b38a3e7..9fea5d64e8 100644 --- a/xen/include/asm-x86/debugger.h +++ b/xen/include/asm-x86/debugger.h @@ -68,10 +68,8 @@ static inline int debugger_trap_entry( if ( guest_kernel_mode(v, regs) && v->domain->debugger_attached && ((vector == TRAP_int3) || (vector == TRAP_debug)) ) { -#ifdef XEN_GDBSX_CONFIG if ( vector != TRAP_debug ) /* domain pause is good enough */ current->arch.gdbsx_vcpu_event = vector; -#endif domain_pause_for_debugger(); return 1; } diff --git a/xen/include/asm-x86/domain.h b/xen/include/asm-x86/domain.h index 846f281414..19461000ad 100644 --- a/xen/include/asm-x86/domain.h +++ b/xen/include/asm-x86/domain.h @@ -446,9 +446,7 @@ struct arch_vcpu struct mapcache_vcpu mapcache; #endif -#if XEN_GDBSX_CONFIG uint32_t gdbsx_vcpu_event; -#endif /* A secondary copy of the vcpu time info. */ XEN_GUEST_HANDLE(vcpu_time_info_t) time_info_guest; |