From patchwork Fri Jun 5 11:46:58 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Laurent Vivier X-Patchwork-Id: 1304098 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=vivier.eu Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 49dh1B25XZz9sSF for ; Fri, 5 Jun 2020 21:55:42 +1000 (AEST) Received: from localhost ([::1]:37506 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jhAwm-0006zm-0a for incoming@patchwork.ozlabs.org; Fri, 05 Jun 2020 07:55:40 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54860) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jhAok-0008Jt-MY for qemu-devel@nongnu.org; Fri, 05 Jun 2020 07:47:24 -0400 Received: from mout.kundenserver.de ([212.227.17.13]:58457) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jhAoj-0006ld-Bo for qemu-devel@nongnu.org; Fri, 05 Jun 2020 07:47:22 -0400 Received: from localhost.localdomain ([82.252.135.106]) by mrelayeu.kundenserver.de (mreue106 [212.227.15.183]) with ESMTPSA (Nemesis) id 1MnItm-1jHyx51YLE-00jHXv; Fri, 05 Jun 2020 13:47:15 +0200 From: Laurent Vivier To: qemu-devel@nongnu.org Subject: [PULL 17/19] target/s390x: Restrict CpuClass::get_crash_info() to system-mode Date: Fri, 5 Jun 2020 13:46:58 +0200 Message-Id: <20200605114700.1052050-18-laurent@vivier.eu> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200605114700.1052050-1-laurent@vivier.eu> References: <20200605114700.1052050-1-laurent@vivier.eu> MIME-Version: 1.0 X-Provags-ID: V03:K1:j05KdHmdCVgMP8p1kUx62yWEaDCFPR+YNFkE+3yH5fYYGyLFBAR HuogOPZIKXX3g+D0Wlq9waEj1N2YUVqHUqMAXVhaxzOArWVe2FZh1V1yfQbRwuVimYNRF9Y NMLlDc2SlL4lossZ55UO1ML4y5gd5hzXl4yvV1KEMg36OQ0ObDvwXbtzSjqABfXmReiowV4 fcoIOoUePNLSFiu/vg8Og== X-UI-Out-Filterresults: notjunk:1;V03:K0:JB7nqQ54VMU=:tZXkYWHTfvlaC6e6UErCXs WaAeDdUtNvcHjUP5rF7Pu1AMUgP5oZyJaeVWza9DZtEfP4PGFkspv1PzVwOKyqYaq7qTNWbS7 GBSoaBKc9N4jzgLdgARXwPvY6lR/Ir/iss1jkadnQKzlMWrCvq9Pg5jbuERn+Wb4ZV6L4cVhX nBb8oOv1Mg0nSgg+4XmXRJSzIkVSvASG+zLL/hWBbo/cR6riYQaNpvuhvztrGaeinlMDaxh3g QnJNShwQ4XTIW/HvXQhFRW4DFqnb1gEp4I6oU0h2X8gcACnvhzWzqKzZvvSxigmO83o6SCFAV s+9/uZ6IzbId/U6lCO21HcTQSGi3VEUKtPsQFYCuD+rwkxXn8ELG2ZDvVuc0+TI5GJaMGPAhv hSMW8e7p0NaNiOGXTouAA1QEhdvnGZhuMxRcicWuitrxpnKAuiyr2xWh4hCaHygt93C3oVODe NguJlJbKeCQWe3DhShEHZLPXEqtnalLykDy8yrKw7jhL5p5lpudLiRr8TKgpwnVQVUj+H6aon 7QN0YKfI+2uapIX+qadYbb4BBBdfZwl5MyKhcTyPd7pRDy8BA1NgpQWYBFzpadkFBxHmeHZv3 Q5+URJqQYI9fid23QWXpDwxiumu8VWKrf/gbCQm1rG2L7SzbFApdeAXK4+LR/A/qilLl2VhC6 +81n0Cwzi+KXc7HWMvSERYOHAN8zAbTPLcYvw2Kf6nlLNyKeIiQsICxu0wHn7ptc1lIPz4/Jk OSV+Ozkj3sOJAGaW2Wk77haUaywQScCtJXdOnltbSZpemhlgx5vffl/Lp1xXBwFZWFuePxtdZ uw22/3/+qn4+o0NWbE77n3qyB75E7gib+R2hm+i2ScTTMqskKkwnDgiaocP5/WDE9DPGg7K Received-SPF: none client-ip=212.227.17.13; envelope-from=laurent@vivier.eu; helo=mout.kundenserver.de X-detected-operating-system: by eggs.gnu.org: First seen = 2020/06/05 07:47:20 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Richard Henderson , Riku Voipio , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Laurent Vivier , Cornelia Huck Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" From: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Reviewed-by: Cornelia Huck Reviewed-by: Laurent Vivier Tested-by: Laurent Vivier Signed-off-by: Philippe Mathieu-Daudé Message-Id: <20200522172510.25784-12-philmd@redhat.com> Signed-off-by: Laurent Vivier --- target/s390x/cpu.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/target/s390x/cpu.c b/target/s390x/cpu.c index ca50b7045198..08eb674d22b4 100644 --- a/target/s390x/cpu.c +++ b/target/s390x/cpu.c @@ -247,6 +247,7 @@ out: error_propagate(errp, err); } +#if !defined(CONFIG_USER_ONLY) static GuestPanicInformation *s390_cpu_get_crash_info(CPUState *cs) { GuestPanicInformation *panic_info; @@ -256,11 +257,7 @@ static GuestPanicInformation *s390_cpu_get_crash_info(CPUState *cs) panic_info = g_malloc0(sizeof(GuestPanicInformation)); panic_info->type = GUEST_PANIC_INFORMATION_TYPE_S390; -#if !defined(CONFIG_USER_ONLY) panic_info->u.s390.core = cpu->env.core_id; -#else - panic_info->u.s390.core = 0; /* sane default for non system emulation */ -#endif panic_info->u.s390.psw_mask = cpu->env.psw.mask; panic_info->u.s390.psw_addr = cpu->env.psw.addr; panic_info->u.s390.reason = cpu->env.crash_reason; @@ -286,6 +283,7 @@ static void s390_cpu_get_crash_info_qom(Object *obj, Visitor *v, errp); qapi_free_GuestPanicInformation(panic_info); } +#endif static void s390_cpu_initfn(Object *obj) { @@ -295,16 +293,16 @@ static void s390_cpu_initfn(Object *obj) cpu_set_cpustate_pointers(cpu); cs->halted = 1; cs->exception_index = EXCP_HLT; +#if !defined(CONFIG_USER_ONLY) object_property_add(obj, "crash-information", "GuestPanicInformation", s390_cpu_get_crash_info_qom, NULL, NULL, NULL); - s390_cpu_model_register_props(obj); -#if !defined(CONFIG_USER_ONLY) cpu->env.tod_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, s390x_tod_timer, cpu); cpu->env.cpu_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, s390x_cpu_timer, cpu); s390_cpu_set_state(S390_CPU_STATE_STOPPED, cpu); #endif + s390_cpu_model_register_props(obj); } static void s390_cpu_finalize(Object *obj) @@ -488,13 +486,13 @@ static void s390_cpu_class_init(ObjectClass *oc, void *data) cc->do_interrupt = s390_cpu_do_interrupt; #endif cc->dump_state = s390_cpu_dump_state; - cc->get_crash_info = s390_cpu_get_crash_info; cc->set_pc = s390_cpu_set_pc; cc->gdb_read_register = s390_cpu_gdb_read_register; cc->gdb_write_register = s390_cpu_gdb_write_register; #ifndef CONFIG_USER_ONLY cc->get_phys_page_debug = s390_cpu_get_phys_page_debug; cc->vmsd = &vmstate_s390_cpu; + cc->get_crash_info = s390_cpu_get_crash_info; cc->write_elf64_note = s390_cpu_write_elf64_note; #ifdef CONFIG_TCG cc->cpu_exec_interrupt = s390_cpu_exec_interrupt;