From: dmkhn@proton.me
To: xen-devel@lists.xenproject.org
Cc: andrew.cooper3@citrix.com, anthony.perard@vates.tech,
jbeulich@suse.com, julien@xen.org, michal.orzel@amd.com,
roger.pau@citrix.com, sstabellini@kernel.org, dmukhin@ford.com
Subject: [PATCH v3] xen/console: print Xen version via keyhandler
Date: Thu, 13 Feb 2025 21:41:49 +0000 [thread overview]
Message-ID: <20250213214054.1745501-1-dmukhin@ford.com> (raw)
Add Xen version printout to 'h' keyhandler output.
That is useful for debugging systems that have been left intact for a long
time.
Signed-off-by: Denis Mukhin <dmukhin@ford.com>
---
Changes since v2:
- moved new function declarations to xen/lib.h
- dropped xen_ prefix in new functions
---
xen/common/keyhandler.c | 4 ++++
xen/common/version.c | 20 ++++++++++++++++++--
xen/drivers/char/console.c | 8 +++-----
xen/include/xen/lib.h | 3 +++
4 files changed, 28 insertions(+), 7 deletions(-)
diff --git a/xen/common/keyhandler.c b/xen/common/keyhandler.c
index 6ea54838d4..0bb842ec00 100644
--- a/xen/common/keyhandler.c
+++ b/xen/common/keyhandler.c
@@ -129,6 +129,10 @@ static void cf_check show_handlers(unsigned char key)
unsigned int i;
printk("'%c' pressed -> showing installed handlers\n", key);
+
+ print_version();
+ print_build_id();
+
for ( i = 0; i < ARRAY_SIZE(key_table); i++ )
if ( key_table[i].fn )
printk(" key '%c' (ascii '%02x') => %s\n",
diff --git a/xen/common/version.c b/xen/common/version.c
index bc3714b45f..8672d5544e 100644
--- a/xen/common/version.c
+++ b/xen/common/version.c
@@ -210,9 +210,25 @@ void __init xen_build_init(void)
}
}
#endif /* CONFIG_X86 */
- if ( !rc )
- printk(XENLOG_INFO "build-id: %*phN\n", build_id_len, build_id_p);
}
+
+void print_version(void)
+{
+ printk("Xen version %d.%d%s (%s@%s) (%s) %s %s\n",
+ xen_major_version(), xen_minor_version(), xen_extra_version(),
+ xen_compile_by(), xen_compile_domain(), xen_compiler(),
+ xen_build_info(), xen_compile_date());
+
+ printk("Latest ChangeSet: %s\n", xen_changeset());
+}
+
+void print_build_id(void)
+{
+ BUG_ON(!build_id_p);
+ BUG_ON(!build_id_len);
+ printk(XENLOG_INFO "build-id: %*phN\n", build_id_len, build_id_p);
+}
+
#endif /* BUILD_ID */
/*
* Local variables:
diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c
index 73d24a7821..235d55bbff 100644
--- a/xen/drivers/char/console.c
+++ b/xen/drivers/char/console.c
@@ -1024,14 +1024,12 @@ void __init console_init_preirq(void)
nrspin_lock(&console_lock);
__putstr(xen_banner());
nrspin_unlock(&console_lock);
- printk("Xen version %d.%d%s (%s@%s) (%s) %s %s\n",
- xen_major_version(), xen_minor_version(), xen_extra_version(),
- xen_compile_by(), xen_compile_domain(), xen_compiler(),
- xen_build_info(), xen_compile_date());
- printk("Latest ChangeSet: %s\n", xen_changeset());
+
+ print_version();
/* Locate and print the buildid, if applicable. */
xen_build_init();
+ print_build_id();
if ( opt_sync_console )
{
diff --git a/xen/include/xen/lib.h b/xen/include/xen/lib.h
index 81b722ea3e..686899a63e 100644
--- a/xen/include/xen/lib.h
+++ b/xen/include/xen/lib.h
@@ -47,6 +47,9 @@ int parse_signed_integer(const char *name, const char *s, const char *e,
*/
int cmdline_strcmp(const char *frag, const char *name);
+void print_version(void);
+void print_build_id(void);
+
#ifdef CONFIG_DEBUG_TRACE
extern void debugtrace_dump(void);
extern void debugtrace_printk(const char *fmt, ...)
--
2.34.1
next reply other threads:[~2025-02-13 21:42 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-13 21:41 dmkhn [this message]
2025-02-14 7:54 ` [PATCH v3] xen/console: print Xen version via keyhandler Jan Beulich
2025-02-14 20:07 ` Denis Mukhin
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=20250213214054.1745501-1-dmukhin@ford.com \
--to=dmkhn@proton.me \
--cc=andrew.cooper3@citrix.com \
--cc=anthony.perard@vates.tech \
--cc=dmukhin@ford.com \
--cc=jbeulich@suse.com \
--cc=julien@xen.org \
--cc=michal.orzel@amd.com \
--cc=roger.pau@citrix.com \
--cc=sstabellini@kernel.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.