From nobody Wed Nov 5 18:23:06 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; dkim=fail spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1496598600762725.0266415455111; Sun, 4 Jun 2017 10:50:00 -0700 (PDT) Received: from localhost ([::1]:57886 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dHZf5-0004BP-3m for importer@patchew.org; Sun, 04 Jun 2017 13:49:59 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50238) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dHZRP-0007dD-CQ for qemu-devel@nongnu.org; Sun, 04 Jun 2017 13:35:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dHZRO-0003FR-JQ for qemu-devel@nongnu.org; Sun, 04 Jun 2017 13:35:51 -0400 Received: from mail-pg0-x241.google.com ([2607:f8b0:400e:c05::241]:33422) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dHZRO-0003F5-DA for qemu-devel@nongnu.org; Sun, 04 Jun 2017 13:35:50 -0400 Received: by mail-pg0-x241.google.com with SMTP id s62so7256128pgc.0 for ; Sun, 04 Jun 2017 10:35:50 -0700 (PDT) Received: from bigtime.ASUS (cpe-98-155-27-246.hawaii.res.rr.com. [98.155.27.246]) by smtp.gmail.com with ESMTPSA id j191sm52854419pgc.53.2017.06.04.10.35.48 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 04 Jun 2017 10:35:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=TscVPA1Nev8UXJAIkGZGrY56ROVuphqeWPHezSE15NE=; b=aLxsc4Cn+eOx0u7cIiwjAqD3JVsApAzQQR3jX9mZU6oIbikB6AvyPL67inCHkVphtM edghUgPNDdmWaoLRMFQL7VLTve2hb9OOtlOORYBfmu+2hdxEvJvWyRVKJsP7bEamL4Dg FpzDIxUlACrH56ld6kJ+etxNq+x2zhTprA9j6XIJyRDPvWd6xie5EKgR9AJXfi8JK5IF JtrXHvkI/zziKwmFrfbuQgXoRmwZ+lHODf3KiKJ9YexMq/KlGHMgagK7sfZzb0ELD+0g 1Lbunz5FlfyNwzdlg+KOVRy5KIcrADvluuNWL978drU8yilvZX7JYUzk1k54Hx3PtwZv wprg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=TscVPA1Nev8UXJAIkGZGrY56ROVuphqeWPHezSE15NE=; b=F5N9JWkXH15ADeLuEBzZ4F79ufFCcfnYTDGLPqvh+e76YAYe6xn0RbYH/AaTM68oDE mApHvHIcYMljBpcbBW6O9iUWLh8M/2vIOIEPA102RUsfb4uXYMs0xdTCLmLKkX7mO7IR 0c7CqPW0wymgtGMPkHsFLGN9W/z7Tx0gEr3gm49FKrphUdogTpbVfM+8fEOlpOsANZIY Pira2o/Jk8DL9N4hAg/s3rosPAxLDek0054qbFJ7t6oTI+jjEcgOywbqMgrvHNhPEX7d bzDaKT2+IcJiO3LJ3AWbQHFee7HANfpV1VR4wd5bgFyctl6dU55SGgw/0RUbLJM2873N HLiw== X-Gm-Message-State: AODbwcD2ae0iyRKkBj/b+4pqFSCG6jt9zWFHQ2IrQwCgN20TAJ+B6kv5 A/t4LLV07h+h4u7VEz4= X-Received: by 10.84.177.131 with SMTP id x3mr10810009plb.39.1496597749371; Sun, 04 Jun 2017 10:35:49 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Date: Sun, 4 Jun 2017 10:34:27 -0700 Message-Id: <20170604173509.29684-28-rth@twiddle.net> X-Mailer: git-send-email 2.9.4 In-Reply-To: <20170604173509.29684-1-rth@twiddle.net> References: <20170604173509.29684-1-rth@twiddle.net> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400e:c05::241 Subject: [Qemu-devel] [PULL 27/69] target/s390x: Use unwind data for helper_testblock X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, aurelien@aurel32.net Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 3 +++ target/s390x/translate.c | 1 - 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/target/s390x/mem_helper.c b/target/s390x/mem_helper.c index b64c04e..7df2e53 100644 --- a/target/s390x/mem_helper.c +++ b/target/s390x/mem_helper.c @@ -939,6 +939,7 @@ void HELPER(stctl)(CPUS390XState *env, uint32_t r1, uin= t64_t a2, uint32_t r3) =20 uint32_t HELPER(testblock)(CPUS390XState *env, uint64_t real_addr) { + uintptr_t ra =3D GETPC(); CPUState *cs =3D CPU(s390_env_get_cpu(env)); uint64_t abs_addr; int i; @@ -947,12 +948,14 @@ uint32_t HELPER(testblock)(CPUS390XState *env, uint64= _t real_addr) abs_addr =3D mmu_real2abs(env, real_addr) & TARGET_PAGE_MASK; if (!address_space_access_valid(&address_space_memory, abs_addr, TARGET_PAGE_SIZE, true)) { + cpu_restore_state(cs, ra); program_interrupt(env, PGM_ADDRESSING, 4); return 1; } =20 /* Check low-address protection */ if ((env->cregs[0] & CR0_LOWPROT) && real_addr < 0x2000) { + cpu_restore_state(cs, ra); program_interrupt(env, PGM_PROTECTION, 4); return 1; } diff --git a/target/s390x/translate.c b/target/s390x/translate.c index 669da89..cd017ce 100644 --- a/target/s390x/translate.c +++ b/target/s390x/translate.c @@ -4042,7 +4042,6 @@ static ExitStatus op_tcxb(DisasContext *s, DisasOps *= o) static ExitStatus op_testblock(DisasContext *s, DisasOps *o) { check_privileged(s); - potential_page_fault(s); gen_helper_testblock(cc_op, cpu_env, o->in2); set_cc_static(s); return NO_EXIT; --=20 2.9.4