Hi,
Looks good to me.
Acked-by: Itsuro Oda <oda(a)valinux.co.jp>
Thanks
Itsuro Oda
On Mon, 1 Dec 2008 14:17:44 -0500 (EST)
Dave Anderson <anderson(a)redhat.com> wrote:
Hi Bernhard,
Looks fine to me, although I'd prefer to continue to print
the "-1" in xen_hyper_dump_xen_hyper_offset_table(), the
same way that "help -o" does for all the Linux offsets.
CC'ing the xencrash maintainer Itsuro Oda to get his ACK.
Thanks,
Dave
----- "Bernhard Walle" <bwalle(a)suse.de> wrote:
> According to that change set in the Xen unstable branch
>
> changeset: 18428:ae9b223a675d
> user: Keir Fraser <keir.fraser(a)citrix.com>
> date: Thu Sep 04 14:38:26 2008 +0100
> files: xen/common/domain.c
> xen/common/event_channel.c
> xen/common/schedule.c
> xen/include/xen/sched.h
> description:
> More efficient implementation of SCHEDOP_poll when polling a
> single port.
> Signed-off-by: Keir Fraser <keir.fraser(a)citrix.com>
>
> the member "is_polling" of struct domain will be removed in Xen 4.4.
> This patch fixes the problem that a dump cannot be opened in
> Hypervisor mode in
> crash when produced by such a Xen version. That's the error message of
> Crash:
>
> crash: invalid structure member offset: domain_is_polling
> FILE: xen_hyper.c LINE: 1182 FUNCTION:
> xen_hyper_store_domain_context()
>
> [./crash] error trace: 52bfc2 => 52e401 => 52ee07 => 508062
>
> 508062: OFFSET_verify+168
> 52ee07: xen_hyper_store_domain_context+742
> 52e401: xen_hyper_refresh_domain_context_space+196
> 52bfc2: xen_hyper_domain_init+959
>
>
> Signed-off-by: Bernhard Walle <bwalle(a)suse.de>
>
> ---
> xen_hyper.c | 9 ++++++++-
> xen_hyper_dump_tables.c | 6 ++++--
> 2 files changed, 12 insertions(+), 3 deletions(-)
>
> --- a/xen_hyper.c
> +++ b/xen_hyper.c
> @@ -188,7 +188,13 @@ xen_hyper_domain_init(void)
> XEN_HYPER_MEMBER_OFFSET_INIT(domain_is_hvm, "domain",
"is_hvm");
> XEN_HYPER_MEMBER_OFFSET_INIT(domain_is_privileged, "domain",
> "is_privileged");
> XEN_HYPER_MEMBER_OFFSET_INIT(domain_debugger_attached, "domain",
> "debugger_attached");
> +
> + /*
> + * Will be removed in Xen 4.4 (hg ae9b223a675d),
> + * need to check that with XEN_HYPER_VALID_MEMBER() before using
> + */
> XEN_HYPER_MEMBER_OFFSET_INIT(domain_is_polling, "domain",
> "is_polling");
> +
> XEN_HYPER_MEMBER_OFFSET_INIT(domain_is_dying, "domain",
> "is_dying");
> XEN_HYPER_MEMBER_OFFSET_INIT(domain_is_paused_by_controller,
> "domain", "is_paused_by_controller");
> XEN_HYPER_MEMBER_OFFSET_INIT(domain_is_shutting_down, "domain",
> "is_shutting_down");
> @@ -1179,7 +1185,8 @@ xen_hyper_store_domain_context(struct xe
> dc->domain_flags |= XEN_HYPER_DOMS_privileged;
> } else if (*(dp + XEN_HYPER_OFFSET(domain_debugger_attached))) {
> dc->domain_flags |= XEN_HYPER_DOMS_debugging;
> - } else if (*(dp + XEN_HYPER_OFFSET(domain_is_polling))) {
> + } else if (XEN_HYPER_VALID_MEMBER(domain_is_polling) &&
> + *(dp + XEN_HYPER_OFFSET(domain_is_polling))) {
> dc->domain_flags |= XEN_HYPER_DOMS_polling;
> } else if (*(dp +
> XEN_HYPER_OFFSET(domain_is_paused_by_controller))) {
> dc->domain_flags |= XEN_HYPER_DOMS_ctrl_pause;
> --- a/xen_hyper_dump_tables.c
> +++ b/xen_hyper_dump_tables.c
> @@ -775,8 +775,10 @@ xen_hyper_dump_xen_hyper_offset_table(ch
> (buf, "%ld\n", xen_hyper_offset_table.domain_is_privileged));
> XEN_HYPER_PRI(fp, len, "domain_debugger_attached: ", buf, flag,
> (buf, "%ld\n", xen_hyper_offset_table.domain_debugger_attached));
> - XEN_HYPER_PRI(fp, len, "domain_is_polling: ", buf, flag,
> - (buf, "%ld\n", xen_hyper_offset_table.domain_is_polling));
> + if (XEN_HYPER_VALID_MEMBER(domain_is_polling)) {
> + XEN_HYPER_PRI(fp, len, "domain_is_polling: ", buf, flag,
> + (buf, "%ld\n", xen_hyper_offset_table.domain_is_polling));
> + }
> XEN_HYPER_PRI(fp, len, "domain_is_dying: ", buf, flag,
> (buf, "%ld\n", xen_hyper_offset_table.domain_is_dying));
> XEN_HYPER_PRI(fp, len, "domain_is_paused_by_controller: ", buf,
> flag,
>
> --
> Crash-utility mailing list
> Crash-utility(a)redhat.com
>
https://www.redhat.com/mailman/listinfo/crash-utility