From patchwork Tue Jan 11 19:52:22 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Vivier X-Patchwork-Id: 531136 Delivered-To: patch@linaro.org Received: by 2002:ad5:544f:0:0:0:0:0 with SMTP id a15csp3780394imp; Tue, 11 Jan 2022 11:53:47 -0800 (PST) X-Google-Smtp-Source: ABdhPJyF6RIbLhQnO3XKzddv+Xi6PFd1rLm8TcVdIvrrS4I0fQCI4x8fKFdAaFzeRFe39Q0yr/LJ X-Received: by 2002:a25:8c86:: with SMTP id m6mr7798518ybl.506.1641930827277; Tue, 11 Jan 2022 11:53:47 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1641930827; cv=none; d=google.com; s=arc-20160816; b=S4vDqmgCjckTEUxlwBn1xJANiRBvHfoE0WN3mB1rs8a5SSzugtlgSplfH65uVBbWi9 y9gLIC32kfJFWOy0IcSKpofQS5TFnbMBeqVaS3VZrfLse25ulgfgeNbmSdFTGeMZLSEj i5JYmPd1NMSGX7IpNzjemlj8zIoryKG3tTA2uOYMh3zOVu+urQcZXJvUV5xIv9LnNm2k Q4AqNPckAJQ/YI0GQiKGl/kT0ixrxhLAPryGfmj1GvsmQ7cz2t4odRWSGLUnpwt+mdKw MwGvcf2jC/6dhzQ8zj55H4XHCfpZaY18CxPF1aUyDi2pHN2T+carYeC4utgjebe9c87+ qtNg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:to:from; bh=nO8Ceu2PV8phSbpYbbp5HHZKb8CVMkb5COGy74WYJkQ=; b=vLMKldAAdtbwgLjIXcrmYasaOMgW0iSgOL52Dc25KfDtuOp/9qg82GrlXa7qeZjTLH S4tdv8SMZF7ooJu4BrXA5vDI2vyTdUZ8w2FuCp2pH9yoElJQVjMmRxSpz/1TIxtRUgTQ KFNQsX+IXfNbh8i6hy+sWzxBKyb9mvJRDsfhBkGM7WyTahIhCO7PZYyZZTyTXPm52c5F 72cE5c7lnbPXatk2FreAhH5EM4W2FrAnk4V46HLu/OWbJm2fJ1KEApbK5O6jXQKl3RJV +zk0ResKVNhJVkRGwYkUo0ciBtYUdPwLEsfCZG3GDXIloO9d3Fj05g9yquIfq6d5fZ7N BNxQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org" Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id y15si7315913yby.185.2022.01.11.11.53.47 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Tue, 11 Jan 2022 11:53:47 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org" Received: from localhost ([::1]:47004 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n7NDG-0007nM-Pi for patch@linaro.org; Tue, 11 Jan 2022 14:53:46 -0500 Received: from eggs.gnu.org ([209.51.188.92]:44418) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n7NCR-0007jF-F9 for qemu-devel@nongnu.org; Tue, 11 Jan 2022 14:52:55 -0500 Received: from mout.kundenserver.de ([212.227.17.24]:48207) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n7NCP-0008E3-Pt for qemu-devel@nongnu.org; Tue, 11 Jan 2022 14:52:55 -0500 Received: from quad ([82.142.23.158]) by mrelayeu.kundenserver.de (mreue106 [212.227.15.183]) with ESMTPSA (Nemesis) id 1N1xdf-1mMffv2noP-012L7k; Tue, 11 Jan 2022 20:52:50 +0100 From: Laurent Vivier To: qemu-devel@nongnu.org Subject: [PULL 05/30] linux-user/hppa: Use force_sig_fault Date: Tue, 11 Jan 2022 20:52:22 +0100 Message-Id: <20220111195247.1737641-6-laurent@vivier.eu> X-Mailer: git-send-email 2.33.1 In-Reply-To: <20220111195247.1737641-1-laurent@vivier.eu> References: <20220111195247.1737641-1-laurent@vivier.eu> MIME-Version: 1.0 X-Provags-ID: V03:K1:3kPrw6jGUBZX7Pqy65rpSbTfKHtuPre6FL1MwIL1X7i8llxXhJo tRQ6bnIJu53VCnOGMHxbshXm/u6ULR9S/n718tcPLiG46J8cQKJaHrLdhuYwgff9O6ykH0k UZjnezIvEh+QdRGoe0ZufCrRLt8soFB6vYyhRmgGBp9jqZlUVz/DjfLxH81ItkjBRiXMuut q/RPAftlLyY/VrrLYtd1w== X-UI-Out-Filterresults: notjunk:1;V03:K0:BJRSUo+Vq3Q=:768JbQJibgtHcq28R7Ukre bTW9aDNPf4dWXZhyGaehwK7uh6ZzUWXpvgLarJgSf3/5LAhBkvzWyHo1j0e+v28rsszQoZMwA 4UlI60oQqCisTFAo7YLk4tmonPm7d76vlbn4CUGe5GpgkkErGKmYGdh+7rZgQr/m4drixDIhA jiDkLRfNkVlrIdGj8yWnSWqJuiFT8fiJHGt7M8v7RrnNxi/ax0OmZtG9q/Cr4q6t/22Ar5KEv eg4l0VREry45V/OPzhqoN+2Ijt9FcTsxyHbRLNvGDV2fTTy4YB0ZupJPATJrooJxgV9CeqTfm eP/iNDm+lo2owEpnLdhlWGnu32HoZPMUK/FaOPsuG1D8ITihrRg2xLoCww2NMEadpjAqjYb2e ePzR0tKyOT1Mvlb+KkGnYfD/asVnzrtA1F890J4BXsJPS5XRbzxwfA4QzN7G1B7zN0WPgYtIV h5a9My5IEufeUS1raGFbGg0fFk9izCE3HrAXJ1XdzQhwr+SdYsm1ZFiqnaKPuaM+EQ/bzx31j dpw3UECIgKRJud3bufLKmGov5kbgVFLhlzy2oLDZc+9YGhZLoeUL/sdjOmdOgJCJ2aQKaT0T5 4Oa2POk3SSALJEQQf26cTP6L5VYvqua/GpJRFr/nnHUfYtiE23cpLfEjcrdPJM8KKYnK+2zkP fWaybhpclrs2yHW6cHwbwtySBQHW7+PpAcx0KxnKLbUBg4mWiAxHKdgZZ0SOcRdqwWno= Received-SPF: none client-ip=212.227.17.24; envelope-from=laurent@vivier.eu; helo=mout.kundenserver.de 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, SPF_HELO_NONE=0.001, SPF_NONE=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: , Cc: Peter Maydell , Richard Henderson , Laurent Vivier Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" From: Richard Henderson Use the new function instead of setting up a target_siginfo_t and calling queue_signal. Fill in the missing PC for SIGTRAP and missing si_code for SIGBUS. Reviewed-by: Peter Maydell Signed-off-by: Richard Henderson Message-Id: <20220107213243.212806-6-richard.henderson@linaro.org> Signed-off-by: Laurent Vivier --- linux-user/hppa/cpu_loop.c | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/linux-user/hppa/cpu_loop.c b/linux-user/hppa/cpu_loop.c index a47a63176b26..4740da1b7a30 100644 --- a/linux-user/hppa/cpu_loop.c +++ b/linux-user/hppa/cpu_loop.c @@ -110,7 +110,6 @@ static abi_ulong hppa_lws(CPUHPPAState *env) void cpu_loop(CPUHPPAState *env) { CPUState *cs = env_cpu(env); - target_siginfo_t info; abi_ulong ret; int trapnr; @@ -147,26 +146,15 @@ void cpu_loop(CPUHPPAState *env) case EXCP_ILL: case EXCP_PRIV_OPR: case EXCP_PRIV_REG: - info.si_signo = TARGET_SIGILL; - info.si_errno = 0; - info.si_code = TARGET_ILL_ILLOPN; - info._sifields._sigfault._addr = env->iaoq_f; - queue_signal(env, info.si_signo, QEMU_SI_FAULT, &info); + force_sig_fault(TARGET_SIGILL, TARGET_ILL_ILLOPN, env->iaoq_f); break; case EXCP_OVERFLOW: case EXCP_COND: case EXCP_ASSIST: - info.si_signo = TARGET_SIGFPE; - info.si_errno = 0; - info.si_code = 0; - info._sifields._sigfault._addr = env->iaoq_f; - queue_signal(env, info.si_signo, QEMU_SI_FAULT, &info); + force_sig_fault(TARGET_SIGFPE, 0, env->iaoq_f); break; case EXCP_DEBUG: - info.si_signo = TARGET_SIGTRAP; - info.si_errno = 0; - info.si_code = TARGET_TRAP_BRKPT; - queue_signal(env, info.si_signo, QEMU_SI_FAULT, &info); + force_sig_fault(TARGET_SIGTRAP, TARGET_TRAP_BRKPT, env->iaoq_f); break; case EXCP_INTERRUPT: /* just indicate that signals should be handled asap */