From nobody Fri Nov 14 18:21:27 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org ARC-Seal: i=1; a=rsa-sha256; t=1760887136; cv=none; d=zohomail.com; s=zohoarc; b=JkeSyp/kPP8/VW92QB3ssZ6MBLdXPnh6/GczO84uYSjiXJ/XJ3HUUTdlKxOX4/lhzL852q2F+C3Stw0Rw5v/SvHhxK1f/1p7e+m8hnxZq1NUzLf+Am2SVQ+xFg+H6lRGcJribvHdcmYgo9oJoXfmHHp+lEsxPL4NkbAgJb27wC4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1760887136; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=QP+x9q5SyUQ3FFAX+oMc++fFiFTP4Q/2GUQalA8uxG4=; b=dnfS15n8PftBvJCZ6Px06Rmq17CYS0Rw54+ADl5Ru3NJNpawzSTYYfuSExgSWaekR7JiyINEh8q53Il1gODzdGBEwnuwEaZMHPJMkggkKVv2t6VIs5y8DB0gHVq0W7p3gSp2IPQE67Rt3SASRWw8J37CUCkmYRO3Cg199xsdYG4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1760887136462938.7971375259035; Sun, 19 Oct 2025 08:18:56 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vAV9C-0001xx-M6; Sun, 19 Oct 2025 11:16:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vAV9A-0001wG-8c for qemu-devel@nongnu.org; Sun, 19 Oct 2025 11:16:36 -0400 Received: from mailgate01.uberspace.is ([2001:1a50:11:0:c83f:a8ff:fea6:c8da]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vAV98-0003BW-OT for qemu-devel@nongnu.org; Sun, 19 Oct 2025 11:16:36 -0400 Received: from skiff.uberspace.de (skiff.uberspace.de [185.26.156.131]) by mailgate01.uberspace.is (Postfix) with ESMTPS id AB24A60A75 for ; Sun, 19 Oct 2025 17:16:33 +0200 (CEST) Received: (qmail 23117 invoked by uid 990); 19 Oct 2025 15:16:33 -0000 Received: from unknown (HELO unkown) (::1) by skiff.uberspace.de (Haraka/3.0.1) with ESMTPSA; Sun, 19 Oct 2025 17:16:29 +0200 Authentication-Results: skiff.uberspace.de; auth=pass (plain) From: Julian Ganz To: qemu-devel@nongnu.org Cc: Julian Ganz , Richard Henderson , Helge Deller Subject: [PATCH v8 08/25] target/hppa: call plugin trap callbacks Date: Sun, 19 Oct 2025 17:14:57 +0200 Message-ID: X-Mailer: git-send-email 2.49.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Rspamd-Bar: ----- X-Rspamd-Report: REPLY(-4) BAYES_HAM(-2.999999) MID_CONTAINS_FROM(1) MIME_GOOD(-0.1) R_MISSING_CHARSET(0.5) X-Rspamd-Score: -5.599999 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=nut.email; s=uberspace; h=from:to:cc:subject:date; bh=PrAAKrvTEoAw77iOkjbdm6WPBb80G5xPz9yg7zljNC4=; b=FOjxn2xUeclito7V4p3KW1c0UZ8GZ6gnvSw7Z/RF1BmlD6PNGSbMP8o4UQYFci2I+oK+17GUMv s/SzAcFA02f66gSpyvietB4PMgyR0XviI6vhbovvgRal5BE3WX+lLc/HUmx7XtR1WCPDjrQgHQ6V /pOJWld+DDxJrw2/E3pCun2JWoOTKySfZjIVXvWCGzSkM7U7tv7lUob2EzRu5s/RUTHuH3X75cyy 7H930fgcsK89vpPrqdRi3iNdjwQspel2lHz239Lq0sCQEl2WhoCzGLZvzcI6yY1dfw+pfCHDlfjr VMz1U7zE2waxrV2HYE54p667sbvZzbCLMc+GP8224qsvJQf4g/wvoZBrRqse1B7/kTEmEjD8xbGN 8XOs0XE2z3C8Zloypo8nPYlmVPjHZVlPla9qJS7f6TSkFnXITwwFonH/vwfzduI8R/RA4oM2LWal F+3YE0wGKH8gGpx8DyEhy2kxfXscFl1RsSSBBmwxmSoG3PfdSO8EyYEkGCXcMoSVakvV/A5HQ8+w e7mHGgIP5DOD8+Cp03ufW3RicekKBJbyl5p22Dw1BW1E0qhV2F6Ppf55HoNouSBK5FvQwncVscUf WenvyIMypyyy5C4xBWAcMR3sQ8l/OI81jho9TUzAbwnvbfJM2cZqaW/UQCyqO95f9+86N4bAHk68 4= Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2001:1a50:11:0:c83f:a8ff:fea6:c8da; envelope-from=neither@nut.email; helo=mailgate01.uberspace.is X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @nut.email) X-ZM-MESSAGEID: 1760887144772158500 Content-Type: text/plain; charset="utf-8" We identified a number of exceptions as interrupts, and we assume every other exception is a (syncroneous) exceptions. PA-RISC appears to not have any form of host-call. This change places the hook for PA-RISC targets. Signed-off-by: Julian Ganz Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- target/hppa/int_helper.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/target/hppa/int_helper.c b/target/hppa/int_helper.c index 191ae19404..4e4869285b 100644 --- a/target/hppa/int_helper.c +++ b/target/hppa/int_helper.c @@ -24,6 +24,7 @@ #include "exec/helper-proto.h" #include "hw/core/cpu.h" #include "hw/hppa/hppa_hardware.h" +#include "qemu/plugin.h" =20 static void eval_interrupt(HPPACPU *cpu) { @@ -95,6 +96,7 @@ void hppa_cpu_do_interrupt(CPUState *cs) CPUHPPAState *env =3D &cpu->env; int i =3D cs->exception_index; uint64_t old_psw, old_gva_offset_mask; + uint64_t last_pc =3D cs->cc->get_pc(cs); =20 /* As documented in pa2.0 -- interruption handling. */ /* step 1 */ @@ -212,6 +214,21 @@ void hppa_cpu_do_interrupt(CPUState *cs) env->iasq_f =3D 0; env->iasq_b =3D 0; =20 + switch (i) { + case EXCP_HPMC: + case EXCP_POWER_FAIL: + case EXCP_RC: + case EXCP_EXT_INTERRUPT: + case EXCP_LPMC: + case EXCP_PER_INTERRUPT: + case EXCP_TOC: + qemu_plugin_vcpu_interrupt_cb(cs, last_pc); + break; + default: + qemu_plugin_vcpu_exception_cb(cs, last_pc); + break; + } + if (qemu_loglevel_mask(CPU_LOG_INT)) { static const char * const names[] =3D { [EXCP_HPMC] =3D "high priority machine check", --=20 2.49.1