From: Bobby Eshleman <bobby.eshleman@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: "Bobby Eshleman" <bobby.eshleman@gmail.com>,
"Stefano Stabellini" <sstabellini@kernel.org>,
"Julien Grall" <julien@xen.org>,
"Volodymyr Babchuk" <Volodymyr_Babchuk@epam.com>,
"Andrew Cooper" <andrew.cooper3@citrix.com>,
"George Dunlap" <george.dunlap@citrix.com>,
"Ian Jackson" <iwj@xenproject.org>,
"Jan Beulich" <jbeulich@suse.com>, "Wei Liu" <wl@xen.org>,
"Elena Ufimtseva" <elena.ufimtseva@oracle.com>,
"Roger Pau Monné" <roger.pau@citrix.com>,
"Jun Nakajima" <jun.nakajima@intel.com>,
"Kevin Tian" <kevin.tian@intel.com>
Subject: [PATCH 0/4] Remove unconditional arch dependency on asm/debugger.h
Date: Mon, 12 Jul 2021 18:59:52 -0700 [thread overview]
Message-ID: <cover.1626134829.git.bobby.eshleman@gmail.com> (raw)
Currently, any architecture wishing to use common/ is likely
to be required to implement the functions found in "asm/debugger.h".
Some architectures, however, do not have an actual use for these
functions and so are forced to implement stubs. This patch does the
following:
* Supplies common stubs if !CONFIG_CRASH_DEBUG for any architecture,
removing the need for all new architectures to have "asm/debugger.h".
* Moves the x86 implementation to "arch/x86/debugger.c".
* Removes the ARM calls to its stubs.
* Centralizes x86 code conditionally compiled by CONFIG_CRASH_DEBUG
into arch/x86/debugger.c, which is now conditionally built for
CONFIG_CRASH_DEBUG via Kbuild (i.e., obj-$(CONFIG_CRASH_DEBUG)).
* Tries to improve the x86 implementation by not inlining large
functions (but preserving inlining for those that seemed "small").
Bobby Eshleman (4):
build: use common stubs for debugger_trap_* functions if
!CONFIG_CRASH_DEBUG
arm/traps: remove debugger_trap_fatal() calls
x86/debug: move debugger_trap_entry into debugger.c not inlined
x86/debug: move domain_pause_for_debugger to debugger.c
xen/arch/arm/traps.c | 8 +--
xen/arch/x86/Makefile | 1 +
xen/arch/x86/debug.c | 2 +-
xen/arch/x86/debugger.c | 53 ++++++++++++++++++++
xen/arch/x86/domain.c | 15 +-----
xen/arch/x86/domctl.c | 2 +-
xen/arch/x86/gdbstub.c | 4 +-
xen/arch/x86/hvm/svm/svm.c | 2 +-
xen/arch/x86/hvm/vmx/realmode.c | 2 +-
xen/arch/x86/hvm/vmx/vmx.c | 2 +-
xen/arch/x86/nmi.c | 2 +-
xen/arch/x86/traps.c | 2 +-
xen/arch/x86/x86_64/gdbstub.c | 3 +-
xen/common/domain.c | 2 +-
xen/common/gdbstub.c | 3 +-
xen/common/keyhandler.c | 2 +-
xen/common/shutdown.c | 2 +-
xen/drivers/char/console.c | 2 +-
xen/include/asm-arm/debugger.h | 15 ------
xen/include/asm-x86/debugger.h | 89 ++++-----------------------------
xen/include/xen/debugger.h | 81 ++++++++++++++++++++++++++++++
21 files changed, 166 insertions(+), 128 deletions(-)
create mode 100644 xen/arch/x86/debugger.c
delete mode 100644 xen/include/asm-arm/debugger.h
create mode 100644 xen/include/xen/debugger.h
--
2.30.0
reply other threads:[~2021-07-13 2:01 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1626134829.git.bobby.eshleman@gmail.com \
--to=bobby.eshleman@gmail.com \
--cc=Volodymyr_Babchuk@epam.com \
--cc=andrew.cooper3@citrix.com \
--cc=elena.ufimtseva@oracle.com \
--cc=george.dunlap@citrix.com \
--cc=iwj@xenproject.org \
--cc=jbeulich@suse.com \
--cc=julien@xen.org \
--cc=jun.nakajima@intel.com \
--cc=kevin.tian@intel.com \
--cc=roger.pau@citrix.com \
--cc=sstabellini@kernel.org \
--cc=wl@xen.org \
--cc=xen-devel@lists.xenproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.