From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404410; cv=none; d=zohomail.com; s=zohoarc; b=gGyfPu1W98BAjaDL8oI3Vy9jrJXpH9VdBU/sIlhcThR58jMnGLSbRUxrDN13S7E4EaSLysvOcmHMiscxiPtCLMG/2toXaiHPLOlZCNNe4YqHQGSc31pLcdfb9Y+3fx0xzPyXf0C4Vr8Dq1FS1QFYf2NSp3rmsJEzCN8XLS/Kzjw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404410; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=OmR0h6/YvxlicyT6sKm9gabjuCHgBWHDRClts4Pnvbk=; b=mWV1YNkRsc4PKfvvpJsrjgbocOatwJXI32Qj5TPNaf3LmQHNu8m+ICbJc0uqY7wsEBGbpA75RffLhtGpdgmDYQe10UCPFw+i4c/zk7MP1kIeMxh8LPl5wDe6BfyA8lqDodZFFjE3wgbvCWnJEdmu4HVk4Vdt9nMpsQc3Cw+K5rk= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404410922816.3447445443072; Sat, 10 Jun 2023 06:40:10 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yh7-0004NB-PQ; Sat, 10 Jun 2023 09:31:53 -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 1q7yh2-0004MV-1l; Sat, 10 Jun 2023 09:31:48 -0400 Received: from mail-oi1-x235.google.com ([2607:f8b0:4864:20::235]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yh0-0007Yg-5Y; Sat, 10 Jun 2023 09:31:47 -0400 Received: by mail-oi1-x235.google.com with SMTP id 5614622812f47-38ede2e0e69so1287802b6e.2; Sat, 10 Jun 2023 06:31:45 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.31.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:31:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403904; x=1688995904; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=OmR0h6/YvxlicyT6sKm9gabjuCHgBWHDRClts4Pnvbk=; b=DRR+SWKxLcn6pPUx7e0fOlXQN4y/w37mcf2gFiXHg2jrelvfLvjXRAU4lUSHUHjNwc Qx8UCSpFZdmHTiVWNSLmnXB01HQ/7RB8BIHBL/rwxbtqZ6qSx6T9FL9WydvCOJHFDgS7 3sGuxB0qYrJWC1HXgiQu0RqR8Pb+zRvGKXyt+kvqJa2CIuQlSzA9+NsOkPYu58nKgbpM YYPC+tHxViFT4vG3yNhxvxgCWudWbYcJIZ46s43tN8aPiJSvBKjZZF4TfAMbKBMi4ssB D07JMBY94re1fgJ7p4dBF5tI84HXU3WVSa8d6eQ/FLGPB44Zeh9NCKZCje9f2yLlcf3r 0ofg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403904; x=1688995904; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OmR0h6/YvxlicyT6sKm9gabjuCHgBWHDRClts4Pnvbk=; b=G6HYkzLbfW+F4wgroo1wLXdriGZg2habA8E4UaYqkZL+o6f53RWKFWrjsbXmWQr5sd VMy5stewnqdFD8jVcfCeBx9ZmlLiz0oSjLAGXwTFekan9TpMBQl+uHtW5d8TSERxJD9t gSkg4ih/nezn4m6Gm6WVShqlYFHDkVI2PFxt+TQspS2vw+h2SXVN6bRyVZRZGQTsH7CU WXKjvKK4UkSM6YB+JSHIlCz/UxucueiV09fH2O+XSKZ8Ib2qze48eDGXTZXXtXVlJhdl 1E1I5kEGB6Mp+EowRwWm1HV0yTGuCF3brYO5gEnyC61v3B46a7Vz7bJwzt3RJ1Ox5mia n90g== X-Gm-Message-State: AC+VfDwBuEIl50RdlH10W15wNlTuEQu6bHlxX0QasgogedWl8j7VMXUc CDfc+tN5DjpBzVwll6JddKp4pGIgsek= X-Google-Smtp-Source: ACHHUZ7hEs4IEc0F3CEpjOQRzndWQc05m8tWTvTR5xK+qcJyHPYTzdrC48zXoj2/9XrnFDM0H88eow== X-Received: by 2002:a05:6808:1249:b0:39a:5e92:2b45 with SMTP id o9-20020a056808124900b0039a5e922b45mr1196193oiv.10.1686403904214; Sat, 10 Jun 2023 06:31:44 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Frederic Barrat , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PULL 01/29] pnv/xive2: Add definition for TCTXT Config register Date: Sat, 10 Jun 2023 10:31:04 -0300 Message-Id: <20230610133132.290703-2-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::235; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x235.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404412248100003 From: Frederic Barrat Add basic read/write support for the TCTXT Config register on P10. qemu doesn't do anything with it yet, but it avoids logging a guest error when skiboot configures the fused-core state: qemu-system-ppc64 -machine powernv10 ... -d guest_errors ... [ 0.131670000,5] XIVE: [ IC 00 ] Initializing XIVE block ID 0... XIVE[0] - TCTXT: invalid read @140 XIVE[0] - TCTXT: invalid write @140 Signed-off-by: Frederic Barrat Reviewed-by: C=C3=A9dric Le Goater Message-Id: <20230601121331.487207-2-fbarrat@linux.ibm.com> Signed-off-by: Daniel Henrique Barboza --- hw/intc/pnv_xive2.c | 8 +++++++- hw/intc/pnv_xive2_regs.h | 4 ++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/hw/intc/pnv_xive2.c b/hw/intc/pnv_xive2.c index 7176d70234..889e409929 100644 --- a/hw/intc/pnv_xive2.c +++ b/hw/intc/pnv_xive2.c @@ -1265,6 +1265,9 @@ static uint64_t pnv_xive2_ic_tctxt_read(void *opaque,= hwaddr offset, case TCTXT_EN1_RESET: val =3D xive->tctxt_regs[TCTXT_EN1 >> 3]; break; + case TCTXT_CFG: + val =3D xive->tctxt_regs[reg]; + break; default: xive2_error(xive, "TCTXT: invalid read @%"HWADDR_PRIx, offset); } @@ -1276,6 +1279,7 @@ static void pnv_xive2_ic_tctxt_write(void *opaque, hw= addr offset, uint64_t val, unsigned size) { PnvXive2 *xive =3D PNV_XIVE2(opaque); + uint32_t reg =3D offset >> 3; =20 switch (offset) { /* @@ -1297,7 +1301,9 @@ static void pnv_xive2_ic_tctxt_write(void *opaque, hw= addr offset, case TCTXT_EN1_RESET: xive->tctxt_regs[TCTXT_EN1 >> 3] &=3D ~val; break; - + case TCTXT_CFG: + xive->tctxt_regs[reg] =3D val; + break; default: xive2_error(xive, "TCTXT: invalid write @%"HWADDR_PRIx, offset); return; diff --git a/hw/intc/pnv_xive2_regs.h b/hw/intc/pnv_xive2_regs.h index 0c096e4adb..8f1e0a1fde 100644 --- a/hw/intc/pnv_xive2_regs.h +++ b/hw/intc/pnv_xive2_regs.h @@ -405,6 +405,10 @@ #define X_TCTXT_EN1_RESET 0x307 #define TCTXT_EN1_RESET 0x038 =20 +/* TCTXT Config register */ +#define X_TCTXT_CFG 0x328 +#define TCTXT_CFG 0x140 + /* * VSD Tables */ --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404101; cv=none; d=zohomail.com; s=zohoarc; b=Ja3OsaGyr2cTJklckXJ9eiVVvCrRwEtmEcyMpGFoG1JTe4Ss4eUmuq7AYBeWPxppYY2E7CHtCRFGQ1bTqN2A7IHxJVPdxSNxjxd2uyp9Ff0T8wZs3ySHdoaVjm8Byu4oxK4oe+I9V4HhVhzsharhgc4g6QDKYVQTXf2y3sUhHts= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404101; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=8K9gkgRuPeOTJgcGGyxmloyD4HVqDlOxJ75tqz+86oQ=; b=OzpMv5KfX5WV1WlJtpjtsbNChfRRneHzBq6lSJdrmeUD/pGCuMZvEwocrpjfPtWy0wsNpgBIn4x82heNHF959RYyWIcDMBkD86aWCAJKQM4i4poaVvGSpSXrHrD2FCqs2RJi/IfoRk3ounOUPWQqRy9XV2kLrBYJjzRnE+SMc0k= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404101623548.0113381360683; Sat, 10 Jun 2023 06:35:01 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhC-0004Qj-DA; Sat, 10 Jun 2023 09:31:58 -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 1q7yh5-0004NR-5f; Sat, 10 Jun 2023 09:31:53 -0400 Received: from mail-oi1-x236.google.com ([2607:f8b0:4864:20::236]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yh2-0007Yy-85; Sat, 10 Jun 2023 09:31:49 -0400 Received: by mail-oi1-x236.google.com with SMTP id 5614622812f47-392116b8f31so1084047b6e.2; Sat, 10 Jun 2023 06:31:47 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.31.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:31:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403906; x=1688995906; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=8K9gkgRuPeOTJgcGGyxmloyD4HVqDlOxJ75tqz+86oQ=; b=rX/pZ4c2Bryk/BJFNiDEfcNQNa1yLjGY/0jVJcLJNshW+Hmvu095O6A9EC9Zk0ABMi m3lR3Ye5Y2U611p2E/vvA94W/9vOQ14+lUmRO6K3HNRR82dlsgS0e+i/1zz4ATYh7UjJ zGxQtR4ZsUS3iv87PVXCnDJCGy/dWqQBiLF2vCJ4UeT4YFfUzOPnbt6V+1tRJWn37ZXV Lxr/qxBl5I4ThHpbijmfO4s8EwSAVEed4fGEc7Q3OoHz/T/jVycgDYWINNjSduMQtj8L QmAdams6fu80ERGu8saEza0iTf9MlyQBYBjMkMUXWKFhPLbQ5jvXdtnqWv+RH2R2aSJR LGfA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403906; x=1688995906; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8K9gkgRuPeOTJgcGGyxmloyD4HVqDlOxJ75tqz+86oQ=; b=aAjp2UpbWlWaNbXMbYA2/cVedl/uYv18o6vqCRVdpHWZ+XFSD7+2L/mgMos+yxUnSM BJgT8NZZvXzQ9EPkzDCjCWIUFGUs9D7F5/Ro1zMUjoTWqlOdBcYcL8EBL7++w6SPnkMF /66yMo8wnyHlhF1sotO8/Ng7ukSH7soA+/woMCa3e+gMYQ5YHcXcpiBKXZ1HbUpfsWkL tHv1qXijvdNLxo5UkakLG6soe1kVwTujsCa5tyTKbuSGGY1h81o/laeN/0DlVGt4dLRV p7uO8xGVPOYejrRLUjtbpuDfp/PCDZE4hkjGtKCbYWrJkCZmUblKxmmYn9wGvrJUfsap wK5w== X-Gm-Message-State: AC+VfDyVLgMQrDkXWqd6DKqdj8hrbHtTJtMasvc9KZOnYNNSo6XhJxfq sme0KoF7Caq085UL95hkV/lXqA0TjWI= X-Google-Smtp-Source: ACHHUZ504rufp5hIwdYRoPL92soaKZ6J3IVNX8jGOhiShgYzT5kOeG8SYpQxwidH9Kjqn/96Cul52Q== X-Received: by 2002:a05:6808:3087:b0:39c:785a:9751 with SMTP id bl7-20020a056808308700b0039c785a9751mr1075483oib.32.1686403906519; Sat, 10 Jun 2023 06:31:46 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Frederic Barrat , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PULL 02/29] pnv/xive2: Add definition for the ESB cache configuration register Date: Sat, 10 Jun 2023 10:31:05 -0300 Message-Id: <20230610133132.290703-3-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::236; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x236.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404102924100001 From: Frederic Barrat Add basic read/write support for the ESB cache configuration register on P10. We don't model the ESB cache in qemu so reading/writing the register won't do anything, but it avoids logging a guest error when skiboot configures it: qemu-system-ppc64 -machine powernv10 ... -d guest_errors ... XIVE[0] - VC: invalid read @240 XIVE[0] - VC: invalid write @240 Signed-off-by: Frederic Barrat Reviewed-by: C=C3=A9dric Le Goater Message-Id: <20230601121331.487207-3-fbarrat@linux.ibm.com> Signed-off-by: Daniel Henrique Barboza --- hw/intc/pnv_xive2.c | 7 +++++++ hw/intc/pnv_xive2_regs.h | 4 ++++ 2 files changed, 11 insertions(+) diff --git a/hw/intc/pnv_xive2.c b/hw/intc/pnv_xive2.c index 889e409929..a75ff270ac 100644 --- a/hw/intc/pnv_xive2.c +++ b/hw/intc/pnv_xive2.c @@ -955,6 +955,10 @@ static uint64_t pnv_xive2_ic_vc_read(void *opaque, hwa= ddr offset, val =3D xive->vc_regs[reg]; break; =20 + case VC_ESBC_CFG: + val =3D xive->vc_regs[reg]; + break; + /* * EAS cache updates (not modeled) */ @@ -1046,6 +1050,9 @@ static void pnv_xive2_ic_vc_write(void *opaque, hwadd= r offset, /* ESB update */ break; =20 + case VC_ESBC_CFG: + break; + /* * EAS cache updates (not modeled) */ diff --git a/hw/intc/pnv_xive2_regs.h b/hw/intc/pnv_xive2_regs.h index 8f1e0a1fde..7165dc8704 100644 --- a/hw/intc/pnv_xive2_regs.h +++ b/hw/intc/pnv_xive2_regs.h @@ -232,6 +232,10 @@ #define VC_ESBC_FLUSH_POLL_BLOCK_ID_MASK PPC_BITMASK(32, 35) #define VC_ESBC_FLUSH_POLL_OFFSET_MASK PPC_BITMASK(36, 63) /* 28-= bit */ =20 +/* ESBC configuration */ +#define X_VC_ESBC_CFG 0x148 +#define VC_ESBC_CFG 0x240 + /* EASC flush control register */ #define X_VC_EASC_FLUSH_CTRL 0x160 #define VC_EASC_FLUSH_CTRL 0x300 --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404176; cv=none; d=zohomail.com; s=zohoarc; b=U5a17PDQ9mHu/tY3hq/AmSVOVttjWHK7qAEN0HYC4tIwicLqwU5G7efgkXhlYeYvzpRG8j4jdPRmc3faP36w5g9lH/NmOXcTXnm9hF0ezpnDcqGQXw5YOpPu1ROK5lfjqlNQqR6Hz8XlYb6oO9SqBlXV8nVqSAOQYj/kaNQtabQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404176; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=05MVwC+qKRZY2wPKCClkEX8ATHFeJQo5bXxiDjV+tc0=; b=ekNPSWOBlEliZWJofbe3pXCP1b4+NTcYPgfBZ4oyAuAwjaJchfKopJq2zTVuzhwCb2bWfwvd8WeO/AxvP+gML5ZjvNZFjsNh1IZGObj8FqF8T7Kd8DEdv7zbuoajMYpKi67UmMN8FNhFLUMUWAtCQ2wuHGifRWSnCNkEscd1yZ8= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404176755528.701679368995; Sat, 10 Jun 2023 06:36:16 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhA-0004Po-J8; Sat, 10 Jun 2023 09:31:56 -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 1q7yh7-0004Nf-0e; Sat, 10 Jun 2023 09:31:53 -0400 Received: from mail-ot1-x335.google.com ([2607:f8b0:4864:20::335]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yh5-0007Zc-5m; Sat, 10 Jun 2023 09:31:52 -0400 Received: by mail-ot1-x335.google.com with SMTP id 46e09a7af769-6b2c3ec38f0so1117298a34.1; Sat, 10 Jun 2023 06:31:49 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.31.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:31:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403909; x=1688995909; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=05MVwC+qKRZY2wPKCClkEX8ATHFeJQo5bXxiDjV+tc0=; b=OcQ68xXiY9bfH2QIxcTLHncwSQ6ol6qYheNSUsLG2zkgfpCpOnTSh7zWektcokWMTD rIjM2s9Li6pTsPsgDTv2/d47n7fNxcNvNr+DwwFeaKcpkkrB403LKNyLsb5dm3VAAwyn 2mgjQvcuFWm0GKAk7wbnkKhL8rHFg6piphHbnKQBxMDASa+fflBMs6RsxZ81UhbJfCXL kkPLj6AYdxmuVaYSVLi4BNvgClyfnrau5AK0IudscwkjR+bFmb4/2dxJb/nlZ1kDZkJ9 3UeEkT9T+VIfx7GQitM5SCWYCP36g+zLTL+E+sXtbC14Zr3eSia14XR2d4UBIRGavIas SIEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403909; x=1688995909; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=05MVwC+qKRZY2wPKCClkEX8ATHFeJQo5bXxiDjV+tc0=; b=MyMeccOIoTD8jKo0ZstCcjOzefal6amoK3PZgvgKHUleFdVd5K839w6Ee4TJm0zdRn JQiJ33kkPYVyKzP+OAb1UfT4pIdTQzN7MtuTXxb5g6opnuGeviwxiHaWtr50dIXOMJQ8 s7dZ8VNC5oh2Bc8PeJZxYfh0vSzzcHWD4fwdAz5VWZYDBihUpCF2omlCVmt/2FUc6mOV 7LBMOsrX++k5Ntzi5MWtv9djRaU4UCAiRVinFKdcV7ShbKucm67BU34Zu6GMoLCvkcMs OmZrbw1j7h4YRWl8I9wYHMq3lrgzYEqzH2qq5fpCBOnnLUwzbAWtWkFA5DQa048PtQBi dD3g== X-Gm-Message-State: AC+VfDzVeKsZp0uyfjcv3vyAParB7Hk5aI8G+ri1dno/PBNY//TT82pc nvPgkLiqQRflYTW/RnbjgbTbhfpJoyc= X-Google-Smtp-Source: ACHHUZ5hEqohMQrEv0DteTlO4jm4q2OXsXNTdXtyFsvjKeWA7f407UaK7zRnW56QIMUr81zwbg1AoQ== X-Received: by 2002:a05:6808:1382:b0:396:4bbc:9a36 with SMTP id c2-20020a056808138200b003964bbc9a36mr1164153oiw.19.1686403908931; Sat, 10 Jun 2023 06:31:48 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Frederic Barrat , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PULL 03/29] pnv/xive2: Allow writes to the Physical Thread Enable registers Date: Sat, 10 Jun 2023 10:31:06 -0300 Message-Id: <20230610133132.290703-4-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::335; envelope-from=danielhb413@gmail.com; helo=mail-ot1-x335.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404177203100004 From: Frederic Barrat Fix what was probably a silly mistake and allow to write the Physical Thread enable registers 0 and 1. Skiboot prefers to use the ENx_SET variant so it went unnoticed, but there's no reason to discard a write to the full register, it is Read-Write. Fixes: da71b7e3ed45 ("ppc/pnv: Add a XIVE2 controller to the POWER10 chip") Signed-off-by: Frederic Barrat Reviewed-by: C=C3=A9dric Le Goater Message-Id: <20230601121331.487207-4-fbarrat@linux.ibm.com> Signed-off-by: Daniel Henrique Barboza --- hw/intc/pnv_xive2.c | 1 + 1 file changed, 1 insertion(+) diff --git a/hw/intc/pnv_xive2.c b/hw/intc/pnv_xive2.c index a75ff270ac..132f82a035 100644 --- a/hw/intc/pnv_xive2.c +++ b/hw/intc/pnv_xive2.c @@ -1294,6 +1294,7 @@ static void pnv_xive2_ic_tctxt_write(void *opaque, hw= addr offset, */ case TCTXT_EN0: /* Physical Thread Enable */ case TCTXT_EN1: /* Physical Thread Enable (fused core) */ + xive->tctxt_regs[reg] =3D val; break; =20 case TCTXT_EN0_SET: --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686403975; cv=none; d=zohomail.com; s=zohoarc; b=a0qNsDuZ6feMSv1PPQyS6GT4QuA7EMjtomAh6Cp+9d+8piJvYVOnih6T9JDbFdMukSU2O2nHCpQuP81WMKqvU8aR1VLDt7iQk68Ewr8fm9J+p2sxDYyftQo2jFJbkU0OpVvs5ixYogmdGehYiBE5gn8vEawsK2348k8ZPtqOfLI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686403975; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=5Wv2lJl9XQMjK/lPdzQ4H7KJOOhr+EUzvQOo1A9aJdM=; b=oCZVxJQr8vUxeyFqbzzDHqLbemYbH6JFfqxm/EwFVTgvN0mC0Fltklwx5XkMLo7qIaswm2iGlEuUkis//lpEVzujTzcQfMFppMp2Fl2KS1wQkh48CFyJNAanwImfrXpj2H7dIecuzWuSuLwu+hGRv5VuFy9ELBZI89aKQ3HRhSc= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686403975151596.8214155310977; Sat, 10 Jun 2023 06:32:55 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhA-0004Pt-WD; Sat, 10 Jun 2023 09:31:57 -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 1q7yh9-0004P0-Kb; Sat, 10 Jun 2023 09:31:55 -0400 Received: from mail-oi1-x22c.google.com ([2607:f8b0:4864:20::22c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yh7-0007Zq-9k; Sat, 10 Jun 2023 09:31:55 -0400 Received: by mail-oi1-x22c.google.com with SMTP id 5614622812f47-3942c6584f0so970058b6e.3; Sat, 10 Jun 2023 06:31:52 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.31.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:31:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403911; x=1688995911; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=5Wv2lJl9XQMjK/lPdzQ4H7KJOOhr+EUzvQOo1A9aJdM=; b=nAfUAv474jh520DSlV31qK90QlqezaKv1cA5aZfiUT18BlNvrkDk7R7qEkGOzYJUan sk1uIHO6gNYSMBJrVLou9TJhYqjo22MAAP2V16HmJQFKklMOEfImwpGK831yRT67FYKQ 13629Z4eR50j9SLEI0j6Qfw6lzxRSCZIEqMu4l+OntT8mvmIlpq1aCZL1OzZQnWp/39U gH6luqN5s6y1w9zPXdlUV+w74lphWjjYbBllF5XB9uZXtuwkv3MbhrE8sNubx0CnF8oo LSSYABk1Fe09C9lrwZiVvpOOm49ANF0PEgai9p+Vdwi6aarzgz0UbgXEtmc18FkACbto mtnQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403911; x=1688995911; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5Wv2lJl9XQMjK/lPdzQ4H7KJOOhr+EUzvQOo1A9aJdM=; b=CGPM5IlWNAoM5vRVo/w1r7gTt/t5qoQ+0OmFrkRNVYLwYgY3rg6Qbn+f0GZHnvd1wU zdsLEMNpqy4DOG+ITWweBZTK7FKJXkbK0EmVBrBbMYVwhe3h6jV84ixwyxKYI7fEhK8X chKcMA5piJPgVnDjahOXpY+A0OWHU7r/xN4viLadIE0J7yrbyon/C9bpFm2JxJjmA/bJ dhtsnEULiw56Rg0dmdxILhhP8KWemXIZBEEUUssOpqpoqRXNS3WnDPM1jt/vTcNLL8xO AnJ73/4KsoH9e2u5Lh/W9+HrHlt4aVjrVNCLi1wxIBEVgdNLilxQ4Bo9HsWdBIq6nwNY WzTw== X-Gm-Message-State: AC+VfDzAJ5cyTXU4Lq4NUGxI4KfNnP0gYxR8eneq4a/e+X3g71RpIjDN ImU/8kBRDGAxUPVNB0wrpDXT4GIma9I= X-Google-Smtp-Source: ACHHUZ6L6Ef2NRaVUz+QMykOfIr9Zff76LbP7Z26rYYSGMk9xooQC8mEtuhB7MbenDwlfq4GqMogPw== X-Received: by 2002:a05:6808:211d:b0:394:24a6:baab with SMTP id r29-20020a056808211d00b0039424a6baabmr1087949oiw.8.1686403911287; Sat, 10 Jun 2023 06:31:51 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Frederic Barrat , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PULL 04/29] pnv/xive2: Introduce macros to manipulate TIMA addresses Date: Sat, 10 Jun 2023 10:31:07 -0300 Message-Id: <20230610133132.290703-5-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::22c; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x22c.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686403977298100003 From: Frederic Barrat TIMA addresses are somewhat special and are split in several bit fields with different meanings. This patch describes it and introduce macros to more easily access the various fields. Signed-off-by: Frederic Barrat Reviewed-by: C=C3=A9dric Le Goater Message-Id: <20230601121331.487207-5-fbarrat@linux.ibm.com> Signed-off-by: Daniel Henrique Barboza --- hw/intc/xive.c | 14 +++++++------- include/hw/ppc/xive_regs.h | 16 ++++++++++++++++ 2 files changed, 23 insertions(+), 7 deletions(-) diff --git a/hw/intc/xive.c b/hw/intc/xive.c index a986b96843..ebe399bc09 100644 --- a/hw/intc/xive.c +++ b/hw/intc/xive.c @@ -249,7 +249,7 @@ static const uint8_t *xive_tm_views[] =3D { static uint64_t xive_tm_mask(hwaddr offset, unsigned size, bool write) { uint8_t page_offset =3D (offset >> TM_SHIFT) & 0x3; - uint8_t reg_offset =3D offset & 0x3F; + uint8_t reg_offset =3D offset & TM_REG_OFFSET; uint8_t reg_mask =3D write ? 0x1 : 0x2; uint64_t mask =3D 0x0; int i; @@ -266,8 +266,8 @@ static uint64_t xive_tm_mask(hwaddr offset, unsigned si= ze, bool write) static void xive_tm_raw_write(XiveTCTX *tctx, hwaddr offset, uint64_t valu= e, unsigned size) { - uint8_t ring_offset =3D offset & 0x30; - uint8_t reg_offset =3D offset & 0x3F; + uint8_t ring_offset =3D offset & TM_RING_OFFSET; + uint8_t reg_offset =3D offset & TM_REG_OFFSET; uint64_t mask =3D xive_tm_mask(offset, size, true); int i; =20 @@ -296,8 +296,8 @@ static void xive_tm_raw_write(XiveTCTX *tctx, hwaddr of= fset, uint64_t value, =20 static uint64_t xive_tm_raw_read(XiveTCTX *tctx, hwaddr offset, unsigned s= ize) { - uint8_t ring_offset =3D offset & 0x30; - uint8_t reg_offset =3D offset & 0x3F; + uint8_t ring_offset =3D offset & TM_RING_OFFSET; + uint8_t reg_offset =3D offset & TM_REG_OFFSET; uint64_t mask =3D xive_tm_mask(offset, size, false); uint64_t ret; int i; @@ -534,7 +534,7 @@ void xive_tctx_tm_write(XivePresenter *xptr, XiveTCTX *= tctx, hwaddr offset, /* * First, check for special operations in the 2K region */ - if (offset & 0x800) { + if (offset & TM_SPECIAL_OP) { xto =3D xive_tm_find_op(offset, size, true); if (!xto) { qemu_log_mask(LOG_GUEST_ERROR, "XIVE: invalid write access at = TIMA " @@ -573,7 +573,7 @@ uint64_t xive_tctx_tm_read(XivePresenter *xptr, XiveTCT= X *tctx, hwaddr offset, /* * First, check for special operations in the 2K region */ - if (offset & 0x800) { + if (offset & TM_SPECIAL_OP) { xto =3D xive_tm_find_op(offset, size, false); if (!xto) { qemu_log_mask(LOG_GUEST_ERROR, "XIVE: invalid read access to T= IMA" diff --git a/include/hw/ppc/xive_regs.h b/include/hw/ppc/xive_regs.h index b7fde2354e..4a3c9badd3 100644 --- a/include/hw/ppc/xive_regs.h +++ b/include/hw/ppc/xive_regs.h @@ -48,6 +48,22 @@ =20 #define TM_SHIFT 16 =20 +/* + * TIMA addresses are 12-bits (4k page). + * The MSB indicates a special op with side effect, which can be + * refined with bit 10 (see below). + * The registers, logically grouped in 4 rings (a quad-word each), are + * defined on the 6 LSBs (offset below 0x40) + * In between, we can add a cache line index from 0...3 (ie, 0, 0x80, + * 0x100, 0x180) to select a specific snooper. Those 'snoop port + * address' bits should be dropped when processing the operations as + * they are all equivalent. + */ +#define TM_ADDRESS_MASK 0xC3F +#define TM_SPECIAL_OP 0x800 +#define TM_RING_OFFSET 0x30 +#define TM_REG_OFFSET 0x3F + /* TM register offsets */ #define TM_QW0_USER 0x000 /* All rings */ #define TM_QW1_OS 0x010 /* Ring 0..2 */ --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404119; cv=none; d=zohomail.com; s=zohoarc; b=Fy5pc6kUYBB/pZvlmyfT8qKRzTH3jrUDOP6mTlj65D/lS6oKucGmF6wz0s7jWZqfTlIKEmbH3WwtRZ+4BkkdZM+uC+8RDfC6uwOTegMhb7z1CVBShZJtz+9610l4dhXqe9H6/W6K0b6wgzg271BGqWBCfmwpZ7WAfYytup7rUrQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404119; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=dJA42PKMV5DCxoTW+swU3bkKFLofsw1iAtmb+IC54bs=; b=TdqJehx7iu7MLhaarI1Hxew3wEN5i+aNOzPo/RyjFICatYDg5xURfsORwOguz7lIUNGOZX3UkB4Fw4RsrXtE39T5d2vjDq1NHMBdnSnnhhI0X5AHloYKw6nmGOSW/fTpwrrCor348weRj0LV9MTHOfxBFBoBxHzPi6woJak1u6Q= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404119184570.376878063662; Sat, 10 Jun 2023 06:35:19 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhC-0004Qr-WE; Sat, 10 Jun 2023 09:31:59 -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 1q7yhB-0004Q5-1r; Sat, 10 Jun 2023 09:31:57 -0400 Received: from mail-oi1-x230.google.com ([2607:f8b0:4864:20::230]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yh9-0007aD-Ds; Sat, 10 Jun 2023 09:31:56 -0400 Received: by mail-oi1-x230.google.com with SMTP id 5614622812f47-38c35975545so1272323b6e.1; Sat, 10 Jun 2023 06:31:54 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.31.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:31:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403913; x=1688995913; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=dJA42PKMV5DCxoTW+swU3bkKFLofsw1iAtmb+IC54bs=; b=dO+CwLVvALxOVUpdzCfnplyK6DyB3PSWTzGhI8/0zRaCA7QehI/2w8BXUPCdGQlOub 5Zrsci7YRRdbBdQ25J5Xm9BC84AE6KaJG0b1soZEvPuaiWWun7fHzPO3TjVECp0FAK0a fanjvyfWmzC3ZLfgRSXRC+n7MEI/ZYWxj3k1D3jQimZCHAjKkjWkGwC654wummwFnjBq P5lm2IXCo5JPl04fANZ+X0F+bisNdV0/Q7OkGI22CdnFYJl9nxFZxqC2qytges4dSwER jkfH503YykD/DVx6TBo8Rj4gfpQrG1Qmm0t/ldqLzpBhOGAsPCAw/CdSYdwJxVImNSZH c6jQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403913; x=1688995913; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dJA42PKMV5DCxoTW+swU3bkKFLofsw1iAtmb+IC54bs=; b=MY3fZCDiykSvj1v7PRe+kvuUZuUcPlZ6HT2Y3pkekga7Mm4ZiplFqdpwjWCwXuQ7Ld dH07HQ3Mf2ilvjaN08TfiAQwvxvLgvjrtIQuG6L5jk9l5UwJtNjsL1QPoMrF3LFg0GIp 45KaldRlEC3ie6eXH6BlsBO++dDmxexDt8HCSC4Ikj1erv6xx2wePYx2VF2A8Bq4LcQP 9qTDhL6r6mTDS681ZlaI2q0hJ46tJWiRn/R7jCIQuXNkv3WgF/elPlTby5kbWeGp8zQn +JoACYKFKcgmM21IX4EhqM/tqaUJ7eIYQ5M/Alv7CRrtseEckPgH54cfqHplsmbYMoI+ eZzA== X-Gm-Message-State: AC+VfDzpyPC1GfE24+X/4iWAKsCRYYEY6egOX+kMXQHo9D3b9x4cDpAU s2b3F3MFOBBv0ws3Cvr6B5rRHhqFiUs= X-Google-Smtp-Source: ACHHUZ7L/vOP0Qi337ra/k0o+81FnncGWSfj1Xq0L8Q6HMUGSWHHO7jl7OmyZ8JV8z6aJ1NycCDV5A== X-Received: by 2002:a05:6808:1b11:b0:398:1104:ef6c with SMTP id bx17-20020a0568081b1100b003981104ef6cmr957546oib.43.1686403913589; Sat, 10 Jun 2023 06:31:53 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Frederic Barrat , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PULL 05/29] pnv/xive2: Handle TIMA access through all ports Date: Sat, 10 Jun 2023 10:31:08 -0300 Message-Id: <20230610133132.290703-6-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::230; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x230.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404120962100001 From: Frederic Barrat The Thread Interrupt Management Area (TIMA) can be accessed through 4 ports, targeted by the address. The base address of a TIMA is using port 0 and the other ports are 0x80 apart. Using one port or another can be useful to balance the load on the snoop buses. With skiboot and linux, we currently use port 0, but as it tends to be busy, another hypervisor is using port 1 for TIMA access. The port address bits fall in between the special op indication bits (the 2 MSBs) and the register offset bits (the 6 LSBs). They are "don't care" for the hardware when processing a TIMA operation. This patch filters out those port address bits so that a TIMA operation can be triggered using any port. It is also true for indirect access (through the IC BAR) and it's actually nothing new, it was already the case on P9. Which helps here, as the TIMA handling code is common between P9 (xive) and P10 (xive2). Signed-off-by: Frederic Barrat Reviewed-by: C=C3=A9dric Le Goater Message-Id: <20230601121331.487207-6-fbarrat@linux.ibm.com> Signed-off-by: Daniel Henrique Barboza --- hw/intc/pnv_xive2.c | 4 ++++ hw/intc/xive.c | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/hw/intc/pnv_xive2.c b/hw/intc/pnv_xive2.c index 132f82a035..e5a028c1e6 100644 --- a/hw/intc/pnv_xive2.c +++ b/hw/intc/pnv_xive2.c @@ -1662,6 +1662,8 @@ static void pnv_xive2_tm_write(void *opaque, hwaddr o= ffset, bool gen1_tima_os =3D xive->cq_regs[CQ_XIVE_CFG >> 3] & CQ_XIVE_CFG_GEN1_TIMA_OS; =20 + offset &=3D TM_ADDRESS_MASK; + /* TODO: should we switch the TM ops table instead ? */ if (!gen1_tima_os && offset =3D=3D HV_PUSH_OS_CTX_OFFSET) { xive2_tm_push_os_ctx(xptr, tctx, offset, value, size); @@ -1681,6 +1683,8 @@ static uint64_t pnv_xive2_tm_read(void *opaque, hwadd= r offset, unsigned size) bool gen1_tima_os =3D xive->cq_regs[CQ_XIVE_CFG >> 3] & CQ_XIVE_CFG_GEN1_TIMA_OS; =20 + offset &=3D TM_ADDRESS_MASK; + /* TODO: should we switch the TM ops table instead ? */ if (!gen1_tima_os && offset =3D=3D HV_PULL_OS_CTX_OFFSET) { return xive2_tm_pull_os_ctx(xptr, tctx, offset, size); diff --git a/hw/intc/xive.c b/hw/intc/xive.c index ebe399bc09..5204c14b87 100644 --- a/hw/intc/xive.c +++ b/hw/intc/xive.c @@ -500,7 +500,7 @@ static const XiveTmOp xive_tm_operations[] =3D { static const XiveTmOp *xive_tm_find_op(hwaddr offset, unsigned size, bool = write) { uint8_t page_offset =3D (offset >> TM_SHIFT) & 0x3; - uint32_t op_offset =3D offset & 0xFFF; + uint32_t op_offset =3D offset & TM_ADDRESS_MASK; int i; =20 for (i =3D 0; i < ARRAY_SIZE(xive_tm_operations); i++) { --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404176; cv=none; d=zohomail.com; s=zohoarc; b=VUV4SIHDLUAtrR/qUuTMcDOxwLZuE/MEI5pwqb6nYFIAWDY/ZUeM3kE1bha545hrQKN033XyGlNikaxR4m3XNYBlqBQ4iW/1YemAiG4WyWZMgg1hgoOfwfv8VhPr8yp1VoGpRs39Rh3CISSXz/W+89BexK+tLPqkKlmXx9vn0UI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404176; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=fOEa2w/fkURRqcuIxb/Ag8RczwbXIRPEzS5xPskCu5Y=; b=WSCNuC8m4cw7iyIqpU3P/Un6pEYN2PqIiEt9cobHlYQHgaM5TDKWtneUMxqaFNsLXlb3FacqJiNMY1pUvA/Ki7gfA6l+j4+de6CM8ZkCpIkIrNgsPf5jjaifX2Dy174dtQaOOQApQ4Kv2K8wl+2eC3suBcAj1+5ExmRIPiAC4k8= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404176712492.1616052400393; Sat, 10 Jun 2023 06:36:16 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhE-0004S9-Po; Sat, 10 Jun 2023 09:32:00 -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 1q7yhD-0004Rk-I2; Sat, 10 Jun 2023 09:31:59 -0400 Received: from mail-oi1-x22b.google.com ([2607:f8b0:4864:20::22b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhB-0007ag-VD; Sat, 10 Jun 2023 09:31:59 -0400 Received: by mail-oi1-x22b.google.com with SMTP id 5614622812f47-392116b8f31so1084076b6e.2; Sat, 10 Jun 2023 06:31:57 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.31.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:31:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403916; x=1688995916; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=fOEa2w/fkURRqcuIxb/Ag8RczwbXIRPEzS5xPskCu5Y=; b=pZiaOOX384qzwVHzT6m7sdIMsyfNjDSVzGUW6PyMsfW2iRJt6syixSyJs4vxbYuzDc /Id/8rYMLeEGCDVzC5rNLtI+GEVtAkqb8MokFyHj7Medbw94/vLfwF6x4DPMueb0KcXa DeWdxd+xKkx34NTa9XEElzIf0KmU2YIXb6U3+nvqymOthj2xwRlJc6/RrlmbH/i1u37+ gLcFPYQwMtO7a0ypldC4rpYk5sIobMYgtQXCHNcOlVSy/M6VgjDz2nxI8hnmxUFQaHoL zpYJbfn3hgQ7rjib//rGhf1g/7U2VfNNxGNMGXfZkKzOe+kC0gmV3vW4wZu8ZQ8cGSlu Oy8A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403916; x=1688995916; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=fOEa2w/fkURRqcuIxb/Ag8RczwbXIRPEzS5xPskCu5Y=; b=Mv1vWUMBFTYkLaXj46DOY4Iyag9tkN6LMsFn2GWQkEAxzcGjJlN2iDyWA9OSksk5UY WlkDOYKXePQjUm9lS8XIoPyROjboneSChhORCzagLaja8vx0JCg8Uu9pb9qYbUkBNy4b PD9FbevSUSFjUdBOVgJ7urMmJkTmAfCRgnc4ke3YmXoujLPhTutmCmUa1hktuxFbWB/n QQA1fu4Xz0o+nVXjW0JuoYA6UWnhEvJMuZWLJ8w6tHol+xt4xVd3359XYZ2fGeK5e8dq 4Ul6DtpzByrdA50dRrL+RKL/uVRKwe6MkunFKhUI82lByyrX8UEInYtXVRrwA392sTy2 U4Kg== X-Gm-Message-State: AC+VfDyXWUHj32cloBFH4DR6Y6GOlPhIiS0T4vWmiB752H6U1v+nNVVi EBL9KhkSqh/zn+g220e/CjBZ7o8I/H4= X-Google-Smtp-Source: ACHHUZ41CkjvoOOtDDqL/U0nfY4HbEJve5cr6sM9eQGF070eWdWuk4qbpehcNslVVYqlB0Kx3ozYkA== X-Received: by 2002:a05:6808:3087:b0:39c:785a:9751 with SMTP id bl7-20020a056808308700b0039c785a9751mr1075816oib.32.1686403916046; Sat, 10 Jun 2023 06:31:56 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Nicholas Piggin , balaton@eik.bme.hu, Fabiano Rosas Subject: [PULL 06/29] target/ppc: Fix nested-hv HEAI delivery Date: Sat, 10 Jun 2023 10:31:09 -0300 Message-Id: <20230610133132.290703-7-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::22b; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x22b.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404178102100011 Content-Type: text/plain; charset="utf-8" From: Nicholas Piggin ppc hypervisors turn HEAI interrupts into program interrupts injected into the guest that executed the illegal instruction, if the hypervisor doesn't handle it some other way. The nested-hv implementation failed to account for this HEAI->program conversion. The virtual hypervisor wants to see the HEAI when running a nested guest, so that interrupt type can be returned to its KVM caller. Fixes: 7cebc5db2eba6 ("target/ppc: Introduce a vhyp framework for nested HV= support") Cc: balaton@eik.bme.hu Reviewed-by: Fabiano Rosas Signed-off-by: Nicholas Piggin Message-Id: <20230530132127.385001-1-npiggin@gmail.com> Signed-off-by: Daniel Henrique Barboza --- target/ppc/excp_helper.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c index fea9221501..9ffcfe788a 100644 --- a/target/ppc/excp_helper.c +++ b/target/ppc/excp_helper.c @@ -1358,9 +1358,12 @@ static void powerpc_excp_books(PowerPCCPU *cpu, int = excp) =20 /* * We don't want to generate a Hypervisor Emulation Assistance - * Interrupt if we don't have HVB in msr_mask (PAPR mode). + * Interrupt if we don't have HVB in msr_mask (PAPR mode), + * unless running a nested-hv guest, in which case the L1 + * kernel wants the interrupt. */ - if (excp =3D=3D POWERPC_EXCP_HV_EMU && !(env->msr_mask & MSR_HVB)) { + if (excp =3D=3D POWERPC_EXCP_HV_EMU && !(env->msr_mask & MSR_HVB) && + !books_vhyp_handles_hv_excp(cpu)) { excp =3D POWERPC_EXCP_PROGRAM; } =20 --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404491; cv=none; d=zohomail.com; s=zohoarc; b=M7DVQTpOtl1kHuBDD0JqbYnTP1GkO+9ft8agNEVxJzxuAiRgn7el6NZCU4Gl/WL1sG72Low4mc1oN9s3G7ZrbulB+3w30xi+i/eedQVhDVSjzaH2gJgBFFog5UkBKmc6tw2+ZPiumCqi3MwYpvA47DN4Ubm/AgftCWJnG5NpdaE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404491; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=HpVKM5ZS+L3DRrs4U+nZbX0qDPmKbeyqLUjQBiUiYd4=; b=AjyCkwMkbIh63QnBOstLRnawYPDpmPV8HwAxBjO/A0GhrHtfvDEipFbIcD9gkMdMrXCBwbarZGs8cjboGM1PXWYVT9vYSwtmbqbQ9LexEIEN2UN7W8H0ld8wSa1NdNXfFT7FeJNGd3eRo9jAkfl/d1kwEsocAcgtBmHq9nLMDmQ= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404491119731.9028478939387; Sat, 10 Jun 2023 06:41:31 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhI-0004TT-6t; Sat, 10 Jun 2023 09:32:04 -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 1q7yhF-0004SU-MW; Sat, 10 Jun 2023 09:32:02 -0400 Received: from mail-oi1-x22c.google.com ([2607:f8b0:4864:20::22c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhE-0007b4-4u; Sat, 10 Jun 2023 09:32:01 -0400 Received: by mail-oi1-x22c.google.com with SMTP id 5614622812f47-39c7f5706f0so1293768b6e.3; Sat, 10 Jun 2023 06:31:59 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.31.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:31:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403918; x=1688995918; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=HpVKM5ZS+L3DRrs4U+nZbX0qDPmKbeyqLUjQBiUiYd4=; b=fZiSccjKz6qNwDmN+7xJyYyZ6PD5KNUHONoK4XWdcKOdv/VXP0UnFPUufUwn/0qoWY ko9WyNBtUxlBTuh/hEleC4JBIGwjMKZu+J2jMALaXDvoW12a0rhTMiD9HJPI7BCjpgxc jR5UiORl5oG3XfaUjidNWahnvDEpX5qMNWrcLrBwSPsqFMjbuepw6ln3ZDqJEmZiBUSI qlNgbwx5v1Z8Ty7dvt0wJjUtxxDHdNa8kCRYTpjUR7BBPYHeJQrbOwAWHUY4OPOu4MW3 GgSqoOb/C6jYofiCGMS7zhiHJZkm734Vy65kJKSoOixjCHkyiNx2Tn/8CwrmqpKFoCbO Z7cA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403918; x=1688995918; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HpVKM5ZS+L3DRrs4U+nZbX0qDPmKbeyqLUjQBiUiYd4=; b=I7pyh8sCjzqbUCxHNxEx5CWtfLem0ECER9xSzmHbwvkOw35M6iS8ZJ4q40HSLW+zlw x2Bol/JNZQGPfzjh03mCCVbb6vpMfSwxrXoQ+IGFrehktPg52VMeFCIo0Zh0QMWDGSWS sABHEUuJrcJGO1VLTqMt3B2YI1nzxcpn2j398uRkPdtZxasgcLb0Qqt/gi6CL9dbVV++ JykPNY6i5wIPouJNqeqroOipXbG3PgJWtOulofRelQTNUDlFoa+OEIRMxb30QMzMQjFi P8JwAb1wAvgL2oiSKWC32QkvjJEd4t9llqQ4wH16gR4vKG+gRbxJU0FvhkPMZatvCMnP OIaw== X-Gm-Message-State: AC+VfDySMKHUQs/TUsfOlft7bkt/t7KWVjwVJKA2JS9H0a4dT17rODM1 SK3gpLwdXFiJnC+xDYSsiy1JZQ7iVcQ= X-Google-Smtp-Source: ACHHUZ67vdSTOs+z054c5bf4PoLSHU3WRRb5bSGMcS/Iiof/CwWiWySbmsYQ7LefhpGS89zskp8G2w== X-Received: by 2002:a05:6808:1414:b0:39a:98ea:43c9 with SMTP id w20-20020a056808141400b0039a98ea43c9mr1434272oiv.20.1686403918381; Sat, 10 Jun 2023 06:31:58 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Frederic Barrat , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PULL 07/29] pnv/xive2: Quiet down some error messages Date: Sat, 10 Jun 2023 10:31:10 -0300 Message-Id: <20230610133132.290703-8-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::22c; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x22c.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404492695100003 From: Frederic Barrat When dumping the END and NVP tables ("info pic" from the HMP) on the P10 model, we're likely to be flooded with error messages such as: XIVE[0] - VST: invalid NVPT entry f33800 !? The error is printed when finding an empty VSD in an indirect table (thus END and NVP tables with skiboot), which is going to happen when dumping the xive state. So let's tune down those messages. They can be re-enabled easily with a macro if needed. Those errors were already hidden on xive/P9, for the same reason. Signed-off-by: Frederic Barrat Reviewed-by: C=C3=A9dric Le Goater Message-Id: <20230531150537.369350-1-fbarrat@linux.ibm.com> Signed-off-by: Daniel Henrique Barboza --- hw/intc/pnv_xive2.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hw/intc/pnv_xive2.c b/hw/intc/pnv_xive2.c index e5a028c1e6..ec1edeb385 100644 --- a/hw/intc/pnv_xive2.c +++ b/hw/intc/pnv_xive2.c @@ -163,7 +163,9 @@ static uint64_t pnv_xive2_vst_addr_indirect(PnvXive2 *x= ive, uint32_t type, ldq_be_dma(&address_space_memory, vsd_addr, &vsd, MEMTXATTRS_UNSPECIFI= ED); =20 if (!(vsd & VSD_ADDRESS_MASK)) { +#ifdef XIVE2_DEBUG xive2_error(xive, "VST: invalid %s entry %x !?", info->name, idx); +#endif return 0; } =20 @@ -185,7 +187,9 @@ static uint64_t pnv_xive2_vst_addr_indirect(PnvXive2 *x= ive, uint32_t type, MEMTXATTRS_UNSPECIFIED); =20 if (!(vsd & VSD_ADDRESS_MASK)) { +#ifdef XIVE2_DEBUG xive2_error(xive, "VST: invalid %s entry %x !?", info->name, i= dx); +#endif return 0; } =20 --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404042; cv=none; d=zohomail.com; s=zohoarc; b=KbFJxw+4iEQTnBUZJdv++avAQkO6dviwHm9OZoGk7dpqiLaXSgqx9hi/vrQ50Rr1iYxk25Q1rHVrpowxM/h6mhT74w5SGAuofNf6/fjLhBQU4DSaefXOg8vWFR8uCgoHPO9PQ8xBn4JOSjxpFFruBbmtJ6tCS9S7gCGrnGFjutU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404042; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=jjtQnJcQJNJ0PzzHn8tpsMJQ4l9i6VhHUPSL/2buDwU=; b=FKZeKtw8Uup83oPyWnd2xZYqZkASe64BuFXyH+ogxKf/DHW1l/UXiF1oQ4qJc588pZx/r1hpRA9nqtZXEmImTCVwD3yiIclXKUvbmHsceut/TyTnAkKnHReIfl+czyDpk/qn7KKpWD6r1kaW6o2ZsTz2b4tTyAiG5ssobrVzH+Q= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404042554612.979670582635; Sat, 10 Jun 2023 06:34:02 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhJ-0004UK-CW; Sat, 10 Jun 2023 09:32:05 -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 1q7yhI-0004TU-DD; Sat, 10 Jun 2023 09:32:04 -0400 Received: from mail-oi1-x22d.google.com ([2607:f8b0:4864:20::22d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhG-0007bP-Dr; Sat, 10 Jun 2023 09:32:04 -0400 Received: by mail-oi1-x22d.google.com with SMTP id 5614622812f47-39cc64e4a22so24206b6e.3; Sat, 10 Jun 2023 06:32:01 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.31.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403920; x=1688995920; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=jjtQnJcQJNJ0PzzHn8tpsMJQ4l9i6VhHUPSL/2buDwU=; b=pX0UZh88gNkHFGsmauRIN0/7iNTdqJhAFuJLwkspf0BJ3OKj9MjP8Z1HzcLaXFph4f ZGc4iGkfIqmrXN/N7QZklr8zl/06KrgwD7MQUK1vTJ4UW4I0hPgA+tGt9pWPeojYS00c B91bVmh5kebloN+L28mAKvMzvYUxS4N6meT/SUbFnMKSWMRnQgIpFPZRdlG4gKjml9oh 0xlSAXCzG5LlaEeHmn8oXrVmJV8UcUEPhSIScTMEZOtzjfZznF+WsmAlco1JRFRVBRAH pkeAwCIt/OO0jnW0D3eBtUBtkeSLpUhP8EghRt8lAAZA7JIvdPyTYrAOe/kt8TuQ08qk 8wrA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403920; x=1688995920; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=jjtQnJcQJNJ0PzzHn8tpsMJQ4l9i6VhHUPSL/2buDwU=; b=Z1boqBo8AGq/BzoxM/5yHf/A3+ePxcM8R0pKc7xtu4c9BajJpp2+ucVsV4MRVziKIt V58fx4PQDmEKxPVAJIB2Fzr/W0QMaWZ7C0PMY3mQ6CUlgIXlGZpM5iAhug0uuOVob0h7 +3TY2wCySfxjfmavyCLe3b0hD9wnaj/lx/u0J2OAl+e+4vFyvpahDJE99tZKfIeeyisq ZE0VkCk/kNHTuRTsQKl2iyJUOTGx59Vw96WnQ8j9B1Jrtp8q8VjpYy4pryEpIrYtY9+7 ru62oFkhiqaB1JHT4fGehCqCipNmckpK8vzY1LyYDNyNBacNAHP/aNLQKQ1Y1OCggOQz dYzg== X-Gm-Message-State: AC+VfDwNjpV1BPQ+cbdAr2x6iTkfebQoc/xC+UGVl339KHSnVD+MC9Az HfPEPkGjhB3mlogCt9mQWTy1qbRA84E= X-Google-Smtp-Source: ACHHUZ5L1k+vjZS5Dboq01KY65f0aU8TcXLytb+mM5jT2GP8YVYiCU2piUYAoJBKnrVtpzEuATvZBQ== X-Received: by 2002:a05:6808:208b:b0:39a:b0a:db35 with SMTP id s11-20020a056808208b00b0039a0b0adb35mr1039169oiw.25.1686403920499; Sat, 10 Jun 2023 06:32:00 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Nicholas Piggin Subject: [PULL 08/29] target/ppc: Fix PMU hflags calculation Date: Sat, 10 Jun 2023 10:31:11 -0300 Message-Id: <20230610133132.290703-9-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::22d; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x22d.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404044732100007 Content-Type: text/plain; charset="utf-8" From: Nicholas Piggin Some of the PMU hflags bits can go out of synch, for example a store to MMCR0 with PMCjCE=3D1 fails to update hflags correctly and results in hflags mismatch: qemu: fatal: TCG hflags mismatch (current:0x2408003d rebuilt:0x240a003d) This can be reproduced by running perf on a recent machine. Some of the fragility here is the duplication of PMU hflags calculations. This change consolidates that in a single place to update pmu-related hflags, to be called after a well defined state changes. The post-load PMU update is pulled out of the MSR update because it does not depend on the MSR value. Fixes: 8b3d1c49a9f0 ("target/ppc: Add new PMC HFLAGS") Signed-off-by: Nicholas Piggin Reviewed-by: Daniel Henrique Barboza Message-Id: <20230530130447.372617-1-npiggin@gmail.com> Signed-off-by: Daniel Henrique Barboza --- target/ppc/cpu_init.c | 2 +- target/ppc/helper_regs.c | 73 ++++++++++++++++++++++++++++++---------- target/ppc/helper_regs.h | 1 + target/ppc/machine.c | 8 ++--- target/ppc/power8-pmu.c | 38 ++++++++++++--------- target/ppc/power8-pmu.h | 4 +-- 6 files changed, 85 insertions(+), 41 deletions(-) diff --git a/target/ppc/cpu_init.c b/target/ppc/cpu_init.c index 05bf73296b..398f2d9966 100644 --- a/target/ppc/cpu_init.c +++ b/target/ppc/cpu_init.c @@ -7083,7 +7083,7 @@ static void ppc_cpu_reset_hold(Object *obj) if (env->mmu_model !=3D POWERPC_MMU_REAL) { ppc_tlb_invalidate_all(env); } - pmu_update_summaries(env); + pmu_mmcr01_updated(env); } =20 /* clean any pending stop state */ diff --git a/target/ppc/helper_regs.c b/target/ppc/helper_regs.c index fb351c303f..bc7e9d7eda 100644 --- a/target/ppc/helper_regs.c +++ b/target/ppc/helper_regs.c @@ -47,6 +47,48 @@ void hreg_swap_gpr_tgpr(CPUPPCState *env) env->tgpr[3] =3D tmp; } =20 +static uint32_t hreg_compute_pmu_hflags_value(CPUPPCState *env) +{ + uint32_t hflags =3D 0; + +#if defined(TARGET_PPC64) + if (env->spr[SPR_POWER_MMCR0] & MMCR0_PMCC0) { + hflags |=3D 1 << HFLAGS_PMCC0; + } + if (env->spr[SPR_POWER_MMCR0] & MMCR0_PMCC1) { + hflags |=3D 1 << HFLAGS_PMCC1; + } + if (env->spr[SPR_POWER_MMCR0] & MMCR0_PMCjCE) { + hflags |=3D 1 << HFLAGS_PMCJCE; + } + +#ifndef CONFIG_USER_ONLY + if (env->pmc_ins_cnt) { + hflags |=3D 1 << HFLAGS_INSN_CNT; + } + if (env->pmc_ins_cnt & 0x1e) { + hflags |=3D 1 << HFLAGS_PMC_OTHER; + } +#endif +#endif + + return hflags; +} + +/* Mask of all PMU hflags */ +static uint32_t hreg_compute_pmu_hflags_mask(CPUPPCState *env) +{ + uint32_t hflags_mask =3D 0; +#if defined(TARGET_PPC64) + hflags_mask |=3D 1 << HFLAGS_PMCC0; + hflags_mask |=3D 1 << HFLAGS_PMCC1; + hflags_mask |=3D 1 << HFLAGS_PMCJCE; + hflags_mask |=3D 1 << HFLAGS_INSN_CNT; + hflags_mask |=3D 1 << HFLAGS_PMC_OTHER; +#endif + return hflags_mask; +} + static uint32_t hreg_compute_hflags_value(CPUPPCState *env) { target_ulong msr =3D env->msr; @@ -104,30 +146,12 @@ static uint32_t hreg_compute_hflags_value(CPUPPCState= *env) if (env->spr[SPR_LPCR] & LPCR_HR) { hflags |=3D 1 << HFLAGS_HR; } - if (env->spr[SPR_POWER_MMCR0] & MMCR0_PMCC0) { - hflags |=3D 1 << HFLAGS_PMCC0; - } - if (env->spr[SPR_POWER_MMCR0] & MMCR0_PMCC1) { - hflags |=3D 1 << HFLAGS_PMCC1; - } - if (env->spr[SPR_POWER_MMCR0] & MMCR0_PMCjCE) { - hflags |=3D 1 << HFLAGS_PMCJCE; - } =20 #ifndef CONFIG_USER_ONLY if (!env->has_hv_mode || (msr & (1ull << MSR_HV))) { hflags |=3D 1 << HFLAGS_HV; } =20 -#if defined(TARGET_PPC64) - if (env->pmc_ins_cnt) { - hflags |=3D 1 << HFLAGS_INSN_CNT; - } - if (env->pmc_ins_cnt & 0x1e) { - hflags |=3D 1 << HFLAGS_PMC_OTHER; - } -#endif - /* * This is our encoding for server processors. The architecture * specifies that there is no such thing as userspace with @@ -172,6 +196,8 @@ static uint32_t hreg_compute_hflags_value(CPUPPCState *= env) hflags |=3D dmmu_idx << HFLAGS_DMMU_IDX; #endif =20 + hflags |=3D hreg_compute_pmu_hflags_value(env); + return hflags | (msr & msr_mask); } =20 @@ -180,6 +206,17 @@ void hreg_compute_hflags(CPUPPCState *env) env->hflags =3D hreg_compute_hflags_value(env); } =20 +/* + * This can be used as a lighter-weight alternative to hreg_compute_hflags + * when PMU MMCR0 or pmc_ins_cnt changes. pmc_ins_cnt is changed by + * pmu_update_summaries. + */ +void hreg_update_pmu_hflags(CPUPPCState *env) +{ + env->hflags &=3D ~hreg_compute_pmu_hflags_mask(env); + env->hflags |=3D hreg_compute_pmu_hflags_value(env); +} + #ifdef CONFIG_DEBUG_TCG void cpu_get_tb_cpu_state(CPUPPCState *env, target_ulong *pc, target_ulong *cs_base, uint32_t *flags) diff --git a/target/ppc/helper_regs.h b/target/ppc/helper_regs.h index 42f26870b9..8196c1346d 100644 --- a/target/ppc/helper_regs.h +++ b/target/ppc/helper_regs.h @@ -22,6 +22,7 @@ =20 void hreg_swap_gpr_tgpr(CPUPPCState *env); void hreg_compute_hflags(CPUPPCState *env); +void hreg_update_pmu_hflags(CPUPPCState *env); void cpu_interrupt_exittb(CPUState *cs); int hreg_store_msr(CPUPPCState *env, target_ulong value, int alter_hv); =20 diff --git a/target/ppc/machine.c b/target/ppc/machine.c index be6eb3d968..134b16c625 100644 --- a/target/ppc/machine.c +++ b/target/ppc/machine.c @@ -21,10 +21,6 @@ static void post_load_update_msr(CPUPPCState *env) */ env->msr ^=3D env->msr_mask & ~((1ULL << MSR_TGPR) | MSR_HVB); ppc_store_msr(env, msr); - - if (tcg_enabled()) { - pmu_update_summaries(env); - } } =20 static int get_avr(QEMUFile *f, void *pv, size_t size, @@ -317,6 +313,10 @@ static int cpu_post_load(void *opaque, int version_id) =20 post_load_update_msr(env); =20 + if (tcg_enabled()) { + pmu_mmcr01_updated(env); + } + return 0; } =20 diff --git a/target/ppc/power8-pmu.c b/target/ppc/power8-pmu.c index 64a64865d7..c4c331c6b5 100644 --- a/target/ppc/power8-pmu.c +++ b/target/ppc/power8-pmu.c @@ -31,7 +31,11 @@ static bool pmc_has_overflow_enabled(CPUPPCState *env, i= nt sprn) return env->spr[SPR_POWER_MMCR0] & MMCR0_PMCjCE; } =20 -void pmu_update_summaries(CPUPPCState *env) +/* + * Called after MMCR0 or MMCR1 changes to update pmc_ins_cnt and pmc_cyc_c= nt. + * hflags must subsequently be updated. + */ +static void pmu_update_summaries(CPUPPCState *env) { target_ulong mmcr0 =3D env->spr[SPR_POWER_MMCR0]; target_ulong mmcr1 =3D env->spr[SPR_POWER_MMCR1]; @@ -39,7 +43,7 @@ void pmu_update_summaries(CPUPPCState *env) int cyc_cnt =3D 0; =20 if (mmcr0 & MMCR0_FC) { - goto hflags_calc; + goto out; } =20 if (!(mmcr0 & MMCR0_FC14) && mmcr1 !=3D 0) { @@ -73,10 +77,19 @@ void pmu_update_summaries(CPUPPCState *env) ins_cnt |=3D !(mmcr0 & MMCR0_FC56) << 5; cyc_cnt |=3D !(mmcr0 & MMCR0_FC56) << 6; =20 - hflags_calc: + out: env->pmc_ins_cnt =3D ins_cnt; env->pmc_cyc_cnt =3D cyc_cnt; - env->hflags =3D deposit32(env->hflags, HFLAGS_INSN_CNT, 1, ins_cnt != =3D 0); +} + +void pmu_mmcr01_updated(CPUPPCState *env) +{ + pmu_update_summaries(env); + hreg_update_pmu_hflags(env); + /* + * Should this update overflow timers (if mmcr0 is updated) so they + * get set in cpu_post_load? + */ } =20 static bool pmu_increment_insns(CPUPPCState *env, uint32_t num_insns) @@ -234,18 +247,11 @@ static void pmu_delete_timers(CPUPPCState *env) =20 void helper_store_mmcr0(CPUPPCState *env, target_ulong value) { - bool hflags_pmcc0 =3D (value & MMCR0_PMCC0) !=3D 0; - bool hflags_pmcc1 =3D (value & MMCR0_PMCC1) !=3D 0; - pmu_update_cycles(env); =20 env->spr[SPR_POWER_MMCR0] =3D value; =20 - /* MMCR0 writes can change HFLAGS_PMCC[01] and HFLAGS_INSN_CNT */ - env->hflags =3D deposit32(env->hflags, HFLAGS_PMCC0, 1, hflags_pmcc0); - env->hflags =3D deposit32(env->hflags, HFLAGS_PMCC1, 1, hflags_pmcc1); - - pmu_update_summaries(env); + pmu_mmcr01_updated(env); =20 /* Update cycle overflow timers with the current MMCR0 state */ pmu_update_overflow_timers(env); @@ -257,8 +263,7 @@ void helper_store_mmcr1(CPUPPCState *env, uint64_t valu= e) =20 env->spr[SPR_POWER_MMCR1] =3D value; =20 - /* MMCR1 writes can change HFLAGS_INSN_CNT */ - pmu_update_summaries(env); + pmu_mmcr01_updated(env); } =20 target_ulong helper_read_pmc(CPUPPCState *env, uint32_t sprn) @@ -287,8 +292,8 @@ static void fire_PMC_interrupt(PowerPCCPU *cpu) env->spr[SPR_POWER_MMCR0] &=3D ~MMCR0_FCECE; env->spr[SPR_POWER_MMCR0] |=3D MMCR0_FC; =20 - /* Changing MMCR0_FC requires a new HFLAGS_INSN_CNT calc */ - pmu_update_summaries(env); + /* Changing MMCR0_FC requires summaries and hflags update */ + pmu_mmcr01_updated(env); =20 /* * Delete all pending timers if we need to freeze @@ -299,6 +304,7 @@ static void fire_PMC_interrupt(PowerPCCPU *cpu) } =20 if (env->spr[SPR_POWER_MMCR0] & MMCR0_PMAE) { + /* These MMCR0 bits do not require summaries or hflags update. */ env->spr[SPR_POWER_MMCR0] &=3D ~MMCR0_PMAE; env->spr[SPR_POWER_MMCR0] |=3D MMCR0_PMAO; } diff --git a/target/ppc/power8-pmu.h b/target/ppc/power8-pmu.h index c0093e2219..775e640053 100644 --- a/target/ppc/power8-pmu.h +++ b/target/ppc/power8-pmu.h @@ -18,10 +18,10 @@ #define PMC_COUNTER_NEGATIVE_VAL 0x80000000UL =20 void cpu_ppc_pmu_init(CPUPPCState *env); -void pmu_update_summaries(CPUPPCState *env); +void pmu_mmcr01_updated(CPUPPCState *env); #else static inline void cpu_ppc_pmu_init(CPUPPCState *env) { } -static inline void pmu_update_summaries(CPUPPCState *env) { } +static inline void pmu_mmcr01_updated(CPUPPCState *env) { } #endif =20 #endif --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404037; cv=none; d=zohomail.com; s=zohoarc; b=QA+JZB4edv4NZzIbTjtZEd8HAEUFj0tfF7NSRzjBrTlE9ShJEwRmmAlt0VipRFPUaVLY0L/rDvrgufZBmoRdC7Hd2WBa5fIOj8tPoWdhNweAlEaDtIj3lzbr+fef5FlKPRu3WCGB8CmAeXtXcT+meo5fsm7/+ByzRtqy1gVz3TU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404037; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=+Sl2e5J2P7CzzTWV/I2GqoPnpdspAWC5r5JbZ8SpEyc=; b=fdRYGypOTgbuDqpSx9+064ucaamIIdscQF9jkun/uNuN6zfNkwHG4dLzfSP2dEMqt0eEMxc04j/ozQaiIPmDc+N0jViyQfIx9Q4Pj2x+EXjsEfqX+OPG/yadXIC0q0hkPfFEpJ5BkxI9aubYk5iw97kxDptZWDlMP7vDVu9Skk4= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 168640403708822.490944894513177; Sat, 10 Jun 2023 06:33:57 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhM-0004XQ-KR; Sat, 10 Jun 2023 09:32:08 -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 1q7yhJ-0004US-Se; Sat, 10 Jun 2023 09:32:05 -0400 Received: from mail-oo1-xc29.google.com ([2607:f8b0:4864:20::c29]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhI-0007bo-8w; Sat, 10 Jun 2023 09:32:05 -0400 Received: by mail-oo1-xc29.google.com with SMTP id 006d021491bc7-558c8a109bdso2384982eaf.1; Sat, 10 Jun 2023 06:32:03 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403922; x=1688995922; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+Sl2e5J2P7CzzTWV/I2GqoPnpdspAWC5r5JbZ8SpEyc=; b=GGqyjDpetbxEeK/vivmcGrNU5L+tfDocrc4T+vJ4WpApfNfzHOkG/ZInB8+QpZHQnd bMvqWBW4RahB0bvdE0BqzkCy/JONr/iO1LjfoQrKGJOIv8xvvH1Smvs3wzJb9D2gJqrV sc1Z1fziLvSF/J9tgQxScSa2XRm2X7J2tWBm5Y6gIZ18pVKyIsvDwcjmNPcgXgOILu9B XUoVBhsucoI2eNqThOihANTJ9Sy0CK5I/UzhS3HrL1eLBxTMOS/q46GrnmY+VKorsF4p tfZRJ+s8KqDA4DJk0zOrf9ktflAt1ONNAUa+ShMuxhHWispHBexOovcQorXVyE7yovzz mk3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403922; x=1688995922; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+Sl2e5J2P7CzzTWV/I2GqoPnpdspAWC5r5JbZ8SpEyc=; b=TpwifWTtdkgy4FZKBmayOeLUbuItZdzgoxYJsr2Lix7Up5TqNZi4eteF2HZwmHHKEw mevMHxKLtmW0Eagasx/TGq9/RLBAN8s1J6+up6npv4QbpQOcAOk1B0v0dJ9PEdPb8L5m SW0jC9uJ/kp+SiB1OfxN89TgWLSh3JBE5l4E8BMQ/QVseA3H9DifxTOLLso8o5mPWCU8 VfNlHGKeccIcl7QAWapUtWvR4I+7NgmgP0579tykse4q6b+JPnYYfnDhZ/WZSK9uKhUq kexFr95n4Y/H6XFt3XRqgC5xdRu7lCKx+MNZaNB3Mk/0viMr9nm/DAzTxKTVjzgVF5tp cu9Q== X-Gm-Message-State: AC+VfDyz8d/9QgmfMXTa4NCDFF2StZr53MPj8zMzFq35iSwlUy8Jq9QU 7l9THt0/I8xPgagNMeThtBH7xwX/WFY= X-Google-Smtp-Source: ACHHUZ52cLmSs/LdFv3BKYwDk7AYx4TyP88ZpUE8U6hZOzOIiInSf9eEn0MQ3Z7VXQF8eu3brIVMcg== X-Received: by 2002:a05:6808:1287:b0:397:ee9d:7d42 with SMTP id a7-20020a056808128700b00397ee9d7d42mr794377oiw.22.1686403922624; Sat, 10 Jun 2023 06:32:02 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Nicholas Piggin Subject: [PULL 09/29] target/ppc: PMU do not clear MMCR0[FCECE] on performance monitor alert Date: Sat, 10 Jun 2023 10:31:12 -0300 Message-Id: <20230610133132.290703-10-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::c29; envelope-from=danielhb413@gmail.com; helo=mail-oo1-xc29.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404038650100003 Content-Type: text/plain; charset="utf-8" From: Nicholas Piggin FCECE does not get cleared according to the ISA v3.1B. Signed-off-by: Nicholas Piggin Reviewed-by: Daniel Henrique Barboza Message-Id: <20230530134313.387252-1-npiggin@gmail.com> Signed-off-by: Daniel Henrique Barboza --- target/ppc/power8-pmu.c | 1 - 1 file changed, 1 deletion(-) diff --git a/target/ppc/power8-pmu.c b/target/ppc/power8-pmu.c index c4c331c6b5..af065115f2 100644 --- a/target/ppc/power8-pmu.c +++ b/target/ppc/power8-pmu.c @@ -289,7 +289,6 @@ static void fire_PMC_interrupt(PowerPCCPU *cpu) pmu_update_cycles(env); =20 if (env->spr[SPR_POWER_MMCR0] & MMCR0_FCECE) { - env->spr[SPR_POWER_MMCR0] &=3D ~MMCR0_FCECE; env->spr[SPR_POWER_MMCR0] |=3D MMCR0_FC; =20 /* Changing MMCR0_FC requires summaries and hflags update */ --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404089; cv=none; d=zohomail.com; s=zohoarc; b=TrPFYRNhYg571R5xcLGYOHZpoCfx9DKJfJeUkzHxEYJ4+QYk9Z7WD/dX6ss0NVA4MuaQ9gPScKOXO7rmf7Z7hw1FZeLH5VXRi4OnQvnEApYiEDPc7eQknyH35hSTNkns/3BwZuZWfya8TNqnYcxr/zXgTXynze+3ytVBrm0fVkI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404089; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Y+ql3NleTmGh5ru6d/kV6UNZGKrMKMoBAs/SS/6QPzo=; b=Njt0OajnvR0CZ7Rzl/Pr1Zx2jzWTob6BXM24y8IFKFuipdnCnUxZ0l6TH3EKqOMiPkvzlghZ5RhrvUiQN2lrez6ojGcyiGp8MVBuBtcXV6h4uNhKFdB+PIqyer4MxNI3ngbwmleLbVa8Uuu7LOkZE5vnX4gHH0tPYK8QZcqybwQ= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404089640844.7539490527537; Sat, 10 Jun 2023 06:34:49 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhR-0004Z6-7E; Sat, 10 Jun 2023 09:32:13 -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 1q7yhM-0004XB-0o; Sat, 10 Jun 2023 09:32:08 -0400 Received: from mail-oi1-x22c.google.com ([2607:f8b0:4864:20::22c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhK-0007c5-Js; Sat, 10 Jun 2023 09:32:07 -0400 Received: by mail-oi1-x22c.google.com with SMTP id 5614622812f47-39a3f26688bso1143535b6e.2; Sat, 10 Jun 2023 06:32:05 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403925; x=1688995925; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Y+ql3NleTmGh5ru6d/kV6UNZGKrMKMoBAs/SS/6QPzo=; b=ct/K0nGdCEncRR3uTYTZaaxDVdm9dyyuhCWL98dBcgvrs9u5IACU7LXs82qc4Kbzf5 PWVOv7OO286OO8S0MCCxAZ39tzDEhQ6lh9+kG0So5XcjFpwwa+KguXDscM/LE9FHEKF8 QTrefBoRNMDs7lXVbknA1qq70rewZ7KuK9hLahfCsecWCPlyO749QwoFeQ+3IcqMdakU rJfY0afcb7y2NBlKjXez687hpKTw7IxJaOQ+gn8HZY/ztjcvu7ECt+Ra/L2Qyjy07j1g bhiGpnIXPlU2kdoxiXS6Dzoj4C9PBGCjacYXqRyAxcLjh8oE5tLDcnSeFaM0RcekxU2W OKZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403925; x=1688995925; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Y+ql3NleTmGh5ru6d/kV6UNZGKrMKMoBAs/SS/6QPzo=; b=PjdZwxo/Fh6QeQ9byUYN8+1l1d7H+F048tJmmLi0cLJXYpg2H8nKp4PWHp0bCklTse 6T/+ERpnpkuYtzAbAJ3ccP+LjC3Y9f42R2Wts6DW/beJTnvYsftSzlJSFhUOJQLrVMEH eQSI3mq+SNewD/BroE5f5yT1wdet5GwmmpD5i01+/P1U9K5FIDa69XnECgXy2iysEquV soHd3jkHENDpTycJcigWz4LTwdnKG/4kr402ZL/mowQjWGb1th4+5rbcVKTjJUAwM96E Y+KKkKtY4vsFRgyi86kd6ff4+knVz+ifm4AY8PBbXtImVkqgMMJPbhRbsJI+Hb1kQSD2 HEUw== X-Gm-Message-State: AC+VfDzDqpt9nrAZ+LSnUOXoIktFTwxqBNn9ndgc7TMVuEAGuSB0vP2u Zeoj3PhUXa38jSdyih8KX5otudJ4/UE= X-Google-Smtp-Source: ACHHUZ5Tc+z64hAef5c+PpUXm1cUh56ZRezzhqKfBxV1soGqtN7mb9C/jvJGCyTuULvZvBXwjDILmA== X-Received: by 2002:a05:6808:1523:b0:39a:a146:8bf1 with SMTP id u35-20020a056808152300b0039aa1468bf1mr1113723oiw.3.1686403925030; Sat, 10 Jun 2023 06:32:05 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Nicholas Piggin , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PULL 10/29] target/ppc: Fix msgclrp interrupt type Date: Sat, 10 Jun 2023 10:31:13 -0300 Message-Id: <20230610133132.290703-11-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::22c; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x22c.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404091582100003 From: Nicholas Piggin msgclrp matches msgsndp and should clear PPC_INTERRUPT_DOORBELL. Signed-off-by: Nicholas Piggin Reviewed-by: C=C3=A9dric Le Goater Message-Id: <20230530130714.373215-1-npiggin@gmail.com> Signed-off-by: Daniel Henrique Barboza --- target/ppc/excp_helper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c index 9ffcfe788a..de6ad121d2 100644 --- a/target/ppc/excp_helper.c +++ b/target/ppc/excp_helper.c @@ -3071,7 +3071,7 @@ void helper_book3s_msgclrp(CPUPPCState *env, target_u= long rb) return; } =20 - ppc_set_irq(env_archcpu(env), PPC_INTERRUPT_HDOORBELL, 0); + ppc_set_irq(env_archcpu(env), PPC_INTERRUPT_DOORBELL, 0); } =20 /* --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404469; cv=none; d=zohomail.com; s=zohoarc; b=ZMzwolta0utS90kf/ufhLvELi0NHwYe+7pNO5tKnFs1j9ReTKvq8Q/JgzQgx/nCcQleF8Euv61tjuk4DfoQhFWDE322I4a/2h1LgoathjHUuNa0YUVgcQtEOl+3Wv3/858P9pwKoVGdKYdhUgSU0Cr2SXs1sToqf/5yDZ6bk91U= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404469; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Lj1sYz6UyTBYonEWD+OX/F0myjoaI+MWBXnyK3Q9CWI=; b=RsEaTu7OX6lXONjoadS+GF2fmiqMQRiqewPDb8QlOieuQJkG03zCogBjLC5LzcwnShsEkJgkeKsNnRj092LSTgc2lNfnl6CaiHP0aKOpIDvlL48emdUaL31ZAni+GcOZ1eSpHblt/3t7IJjcUddHFbihaEzMJLAS5Ax82J5TopA= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404469205303.1229606464393; Sat, 10 Jun 2023 06:41:09 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhT-0004d5-On; Sat, 10 Jun 2023 09:32:15 -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 1q7yhR-0004Zq-AA; Sat, 10 Jun 2023 09:32:13 -0400 Received: from mail-oi1-x236.google.com ([2607:f8b0:4864:20::236]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhN-0007cS-02; Sat, 10 Jun 2023 09:32:10 -0400 Received: by mail-oi1-x236.google.com with SMTP id 5614622812f47-39c4c3da9cbso1232282b6e.2; Sat, 10 Jun 2023 06:32:08 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403927; x=1688995927; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Lj1sYz6UyTBYonEWD+OX/F0myjoaI+MWBXnyK3Q9CWI=; b=XPa75vjFgQieNI6x067QaaE+ojotc8iRcIczjAM/nMpqv4Mm14IvejtJSyID+nkfp6 ALntSjP54S467lOST7MUu3cq91YNrYYOakS4cqEC0B6+3XqJrtPI5mBEMS1sExsLCc/R SX4lRgr0epuPOrwRBoqDRf69CQEir49kWLG3iI9m5y6tW5ooicDL0JjljlWrQOwXmbu8 LLXuu/hY9oxXp0wzElBmbvYXHW6jAASlcc+UUvVhx+ESY2orvvuHm7fTrpjVeFhsDjhs 30g3kHqdAnoUTrU0QUcVdBkv0S0FuCe69zyLp+XBXCVLeFvJR0GmG3Dg1MdEyFXo5OQ1 sb9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403927; x=1688995927; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Lj1sYz6UyTBYonEWD+OX/F0myjoaI+MWBXnyK3Q9CWI=; b=CoZinNivPverQ3j5jt+EQTl0khEhUev4hyD3mh83Ife+qj3cRCeBS5h5zJxRUXbsRM b5t7D9FkZ6NcZVdKAHCQJ93xU9Y5dlOCIZUp7KlJUxYoPr8F382+jv3TRtRZ7krsTwDT TzFBG/kOwgEt6pbAwBort9gK9Q2NV4euPUuEYslFCbH1FxgTGglO29orqKdWwdM/Wr/a ceQpyJLDGh42eXyoh9RcZ9Ca4gCe1z6PNEokYldfDP1TBQmElfMEeDhn00/RVLRT6WrD V9zC4pt2gRuC+gHVSMZs8bBsLwCFIvup/+rttzWzK7XdPLDRMOtJjE6/tpHt+Jg+0AdK 6f/A== X-Gm-Message-State: AC+VfDyrL90/bnUvrDxMpsI9w9G3uqaKoPtjq9+uQQXWCg6L1uvxSrTh nKoP1fLIKyGLOG5SKKggU8INm/kjmP8= X-Google-Smtp-Source: ACHHUZ5OB1tBU15Jz5SecZgGGd9s1nVC282du/Fq4SsVD2UMkvCyWzKTZ5IOTeHiNHmu8U+50kLLeg== X-Received: by 2002:a05:6808:2203:b0:398:1047:9e3a with SMTP id bd3-20020a056808220300b0039810479e3amr1134709oib.25.1686403927467; Sat, 10 Jun 2023 06:32:07 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Nicholas Piggin , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PULL 11/29] target/ppc: Support directed privileged doorbell interrupt (SDOOR) Date: Sat, 10 Jun 2023 10:31:14 -0300 Message-Id: <20230610133132.290703-12-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::236; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x236.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404469679100001 From: Nicholas Piggin BookS msgsndp instruction to self or DPDES register can cause SDOOR interrupts which crash QEMU with exception not implemented. Linux does not use msgsndp in SMT1, and KVM only uses DPDES to cause doorbells when emulating a SMT guest (which is not the default), so this has gone unnoticed. Signed-off-by: Nicholas Piggin Reviewed-by: C=C3=A9dric Le Goater Message-Id: <20230530130526.372701-1-npiggin@gmail.com> Signed-off-by: Daniel Henrique Barboza --- target/ppc/excp_helper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c index de6ad121d2..befa9aab7f 100644 --- a/target/ppc/excp_helper.c +++ b/target/ppc/excp_helper.c @@ -1542,6 +1542,7 @@ static void powerpc_excp_books(PowerPCCPU *cpu, int e= xcp) case POWERPC_EXCP_DSEG: /* Data segment exception = */ case POWERPC_EXCP_ISEG: /* Instruction segment exception = */ case POWERPC_EXCP_TRACE: /* Trace exception = */ + case POWERPC_EXCP_SDOOR: /* Doorbell interrupt = */ break; case POWERPC_EXCP_HISI: /* Hypervisor instruction storage excepti= on */ msr |=3D env->error_code; @@ -1587,7 +1588,6 @@ static void powerpc_excp_books(PowerPCCPU *cpu, int e= xcp) case POWERPC_EXCP_PERFM: /* Embedded performance monitor interrupt= */ case POWERPC_EXCP_VPUA: /* Vector assist exception = */ case POWERPC_EXCP_MAINT: /* Maintenance exception = */ - case POWERPC_EXCP_SDOOR: /* Doorbell interrupt = */ case POWERPC_EXCP_HV_MAINT: /* Hypervisor Maintenance exception = */ cpu_abort(cs, "%s exception not implemented\n", powerpc_excp_name(excp)); --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404190; cv=none; d=zohomail.com; s=zohoarc; b=KiQrwNbkF5u1UBVAR9vHauJzg7sEGYmeWu9d0AiAfIiNgGBAQrC6UbAj/etF9gJ8JwDcnhFp1LH0iady89jHFaAfdmfPB5GmHMAY8nkUsCTcFUHipIuGyYkkHqUnxJnJyjEpasuDk1EcXbkqA+wduXJv2+ASVMyd7CtOg67YoHc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404190; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=5vP1rEWXoGwg1otjRX1PAqUYXnIyUL9RzcsP74e8n3w=; b=S4UwqNECTewgeoU1pK6kb+87XF8yvCOlq1rWHXufIcms62VmDabFkVVuzMoeF+xyMkBjvsJ8wevZVzhEMc1y1rGPeiZpFr6THaWrMyMSuSEfOdxO11Uh4qMJ4FSEvmtSWcOs246pZF18sk5NIo1nE6ZAPigfqrWsXkQfVDRVN9g= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 16864041901761019.1027193732579; Sat, 10 Jun 2023 06:36:30 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhW-0004eJ-1l; Sat, 10 Jun 2023 09:32:18 -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 1q7yhT-0004cv-LA; Sat, 10 Jun 2023 09:32:15 -0400 Received: from mail-oi1-x22a.google.com ([2607:f8b0:4864:20::22a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhR-0007cg-Ik; Sat, 10 Jun 2023 09:32:14 -0400 Received: by mail-oi1-x22a.google.com with SMTP id 5614622812f47-39c4c3da9cbso1232298b6e.2; Sat, 10 Jun 2023 06:32:10 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403929; x=1688995929; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=5vP1rEWXoGwg1otjRX1PAqUYXnIyUL9RzcsP74e8n3w=; b=pU20ulP+1duUTX6g/e1yIOKZQ6esFZ4pY8QJu98Uor6Jtg/SaQvgnaljQ8TZPHB1sw iA/J0Rdsmi1/IzWVBdPdRnQl+0rKRRWADpi3d4cYmJ4aCmzes0QABdNHF4BxmhApGiYM YSppcWmoO1EhUXTpLWY9tlDMwFCVgd3WmlDaQPULJ9Nf7UgJMKahG6U2971vHJGW0svS XDtDixYlIGQFnqWrBdVkZ7bUUS9B51VIs+gW21boIHk8iW6bv1mIpgqLnxhxuHfJXgSX 0UMrydigEHi8sctAaOSSAqrk36QO1PwgZoqkRgE7whuQyUPmc6890+tQcUhAd3aW8Nzt h/zg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403929; x=1688995929; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5vP1rEWXoGwg1otjRX1PAqUYXnIyUL9RzcsP74e8n3w=; b=fYmSeKVyY14X1iyKBhTqZi65HhOgTZkKIqlERvaB+H+ZBYSt+WV/YFIprudFA1Xm21 FC1RgOn1dVsLzMQ1Ha+aKlVUpMnd8DqYOjRfk8YpRwm1X91vsHGjUfOVtjkk1moTbaZD 9AIZG2WQP9msMDFbKQGawYVhknsAkykFUvftzXbarrxXZ3luFkEhJczPRTfskMg08SAY eSkLE6dwCvS+vAWcFxdutI/9VsZxP9rNShw5sIacfsZ6elY36TRdKBQSF+FBo7Jj5d5Z jTYXmcNRxV7LR1BA08geRJRbLy9i6FvA/HEU3gma328PSS2sZlGE6ejpH80awCkSLpao Oydg== X-Gm-Message-State: AC+VfDx3hChVdUHCblhKhCa1B3U+LePdZqaPwpZllcU0cbtFrtMsmonG EbIIaVbjBBguqghoEPCo7JImFdmn8a4= X-Google-Smtp-Source: ACHHUZ7++0KuaVxAmXZ1HBZSGDJ1+yCrnuzjQFbgDr5naBH1cVGFhdMQNl2B72wWuVU9/z3W8lk/7g== X-Received: by 2002:a05:6808:189e:b0:39a:ba2f:6ea6 with SMTP id bi30-20020a056808189e00b0039aba2f6ea6mr1045418oib.11.1686403929726; Sat, 10 Jun 2023 06:32:09 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Nicholas Piggin Subject: [PULL 12/29] target/ppc: PMU implement PERFM interrupts Date: Sat, 10 Jun 2023 10:31:15 -0300 Message-Id: <20230610133132.290703-13-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::22a; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x22a.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404190454100005 Content-Type: text/plain; charset="utf-8" From: Nicholas Piggin The PMU raises a performance monitor exception (causing an interrupt when MSR[EE]=3D1) when MMCR0[PMAO] is set, and lowers it when clear. Wire this up and implement the interrupt delivery for books. Linux perf record can now collect PMI-driven samples. fire_PMC_interrupt is renamed to perfm_alert, which matches a bit closer to the new terminology used in the ISA and distinguishes the alert condition (e.g., counter overflow) from the PERFM (or EBB) interrupts. Signed-off-by: Nicholas Piggin Reviewed-by: Daniel Henrique Barboza Message-Id: <20230530134313.387252-2-npiggin@gmail.com> Signed-off-by: Daniel Henrique Barboza --- target/ppc/excp_helper.c | 2 +- target/ppc/power8-pmu.c | 21 ++++++++++++++------- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c index befa9aab7f..8b95410c36 100644 --- a/target/ppc/excp_helper.c +++ b/target/ppc/excp_helper.c @@ -1543,6 +1543,7 @@ static void powerpc_excp_books(PowerPCCPU *cpu, int e= xcp) case POWERPC_EXCP_ISEG: /* Instruction segment exception = */ case POWERPC_EXCP_TRACE: /* Trace exception = */ case POWERPC_EXCP_SDOOR: /* Doorbell interrupt = */ + case POWERPC_EXCP_PERFM: /* Performance monitor interrupt = */ break; case POWERPC_EXCP_HISI: /* Hypervisor instruction storage excepti= on */ msr |=3D env->error_code; @@ -1585,7 +1586,6 @@ static void powerpc_excp_books(PowerPCCPU *cpu, int e= xcp) */ return; case POWERPC_EXCP_THERM: /* Thermal interrupt = */ - case POWERPC_EXCP_PERFM: /* Embedded performance monitor interrupt= */ case POWERPC_EXCP_VPUA: /* Vector assist exception = */ case POWERPC_EXCP_MAINT: /* Maintenance exception = */ case POWERPC_EXCP_HV_MAINT: /* Hypervisor Maintenance exception = */ diff --git a/target/ppc/power8-pmu.c b/target/ppc/power8-pmu.c index af065115f2..7bb4bf81f7 100644 --- a/target/ppc/power8-pmu.c +++ b/target/ppc/power8-pmu.c @@ -84,8 +84,17 @@ static void pmu_update_summaries(CPUPPCState *env) =20 void pmu_mmcr01_updated(CPUPPCState *env) { + PowerPCCPU *cpu =3D env_archcpu(env); + pmu_update_summaries(env); hreg_update_pmu_hflags(env); + + if (env->spr[SPR_POWER_MMCR0] & MMCR0_PMAO) { + ppc_set_irq(cpu, PPC_INTERRUPT_PERFM, 1); + } else { + ppc_set_irq(cpu, PPC_INTERRUPT_PERFM, 0); + } + /* * Should this update overflow timers (if mmcr0 is updated) so they * get set in cpu_post_load? @@ -282,7 +291,7 @@ void helper_store_pmc(CPUPPCState *env, uint32_t sprn, = uint64_t value) pmc_update_overflow_timer(env, sprn); } =20 -static void fire_PMC_interrupt(PowerPCCPU *cpu) +static void perfm_alert(PowerPCCPU *cpu) { CPUPPCState *env =3D &cpu->env; =20 @@ -306,6 +315,7 @@ static void fire_PMC_interrupt(PowerPCCPU *cpu) /* These MMCR0 bits do not require summaries or hflags update. */ env->spr[SPR_POWER_MMCR0] &=3D ~MMCR0_PMAE; env->spr[SPR_POWER_MMCR0] |=3D MMCR0_PMAO; + ppc_set_irq(cpu, PPC_INTERRUPT_PERFM, 1); } =20 raise_ebb_perfm_exception(env); @@ -314,20 +324,17 @@ static void fire_PMC_interrupt(PowerPCCPU *cpu) void helper_handle_pmc5_overflow(CPUPPCState *env) { env->spr[SPR_POWER_PMC5] =3D PMC_COUNTER_NEGATIVE_VAL; - fire_PMC_interrupt(env_archcpu(env)); + perfm_alert(env_archcpu(env)); } =20 /* This helper assumes that the PMC is running. */ void helper_insns_inc(CPUPPCState *env, uint32_t num_insns) { bool overflow_triggered; - PowerPCCPU *cpu; =20 overflow_triggered =3D pmu_increment_insns(env, num_insns); - if (overflow_triggered) { - cpu =3D env_archcpu(env); - fire_PMC_interrupt(cpu); + perfm_alert(env_archcpu(env)); } } =20 @@ -335,7 +342,7 @@ static void cpu_ppc_pmu_timer_cb(void *opaque) { PowerPCCPU *cpu =3D opaque; =20 - fire_PMC_interrupt(cpu); + perfm_alert(cpu); } =20 void cpu_ppc_pmu_init(CPUPPCState *env) --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404483; cv=none; d=zohomail.com; s=zohoarc; b=mRQge/WgJu/mD5JtbsI5jTfzzMrtAQm9HabGTnNz4uldZqGj6bv5SuOncPgQeaLnRMP+Cj79Qs6Hsb6CukD9h8P+4PJPTnVkk8K26DUs+UUL1npQvU8snt33IouLKM9YDsp6BtSE0ZOKlOIUI/SZd5n0K3rA4hh3FMSS97L7ebc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404483; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=SU3cVAlEC5V+AeaChUUtygS0wbuAbiA+fnpYCqFmsbo=; b=i2jomG2bJxdOD7MUIIhi6BGePPn0Miq9G7o0pBNqwzMWMcFwLs/bxd0lEiPe5rsLLPoSyjtQ25mb6IDKMU9cEFm1fSNTrOezLHRLTTAIKtlaubQZp8Daz2KJ82NsAdBowb8Z9wohBm919A55WlSLjzFa6kaqSl6DO66hxhrcTiQ= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404483844483.7948924142495; Sat, 10 Jun 2023 06:41:23 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhX-0004fs-O1; Sat, 10 Jun 2023 09:32:19 -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 1q7yhU-0004e8-SU; Sat, 10 Jun 2023 09:32:17 -0400 Received: from mail-oi1-x233.google.com ([2607:f8b0:4864:20::233]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhR-0007d6-V9; Sat, 10 Jun 2023 09:32:15 -0400 Received: by mail-oi1-x233.google.com with SMTP id 5614622812f47-39ca120c103so700617b6e.2; Sat, 10 Jun 2023 06:32:13 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403932; x=1688995932; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=SU3cVAlEC5V+AeaChUUtygS0wbuAbiA+fnpYCqFmsbo=; b=dLOW/rtRNCHEif60jq1rZRJ9+Zb3dczMk9xJQbI90jJv3wrtG8aeY9FuNH8SmRHKg9 Nb6wj7A/KSJK+pcTovgFt1w0a1Wu+sa4P3uqGhpBohqOeaXvpmASZ48mD4MEielmoo0n ttyhNLlX8J00c2AtG9F/QexcWC13U6RFsj2rXsS8nZRgfOOK6vqBE1SKEvfEOOZ8GWbL 2PFT2V5q8X2lBkT72iGodFMZADEqiPLibnPWIlf1fxZv1g/D5w0Dq0UimhlZXYdCx9kU FzHf+rLQY3PIUfz6m7cL8f81l9/ROFJRuj3btEyTnVGr8UmdP0F4X5JmhDEy37GG0Qe9 lXzA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403932; x=1688995932; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SU3cVAlEC5V+AeaChUUtygS0wbuAbiA+fnpYCqFmsbo=; b=Xa97AxTkOqo9UkXjPYkyF7oR/OM7rI5j2pyhTImrUqWFiVKSyXbHkIugwpWfdHF+VA iq6AEnHJNHNATFvhJocIm4DnCuhaBUaP++nP2pFYLLW23oXgXpgRqAT15A1YKLk5OtRr wEb8IFrdhvAIPuj8k4SWI9wb8sBcJoHAvrEDlme+zu1Y4AV/LkS9k6pIQlm8LZrFZwVB Z0RcHng4oQahNk9lrTjtnYgaLWuLRtGhx0c6i9PaMtgTKb2AaZ8DxpH4BnS51f+IGJMy s/pJbYC7cjXk/hDVmQqUfAQyht/cBbWNIkJos64ovRXJm+LRZ14ZCfILE7fTPCu6ve7E m07g== X-Gm-Message-State: AC+VfDw0W/TlS9sBcJaaDcHqZ72JgOPXmxOwYY7i115okbXy5xwn9Hm7 zl/hFAsHRjczIEdYIKXBvY6A4E39Dmc= X-Google-Smtp-Source: ACHHUZ4tx6jNlMzyiq5U2nX/333TkEhfP1g9p3ueg1IOS9MCU4aAfNIarYFZdxD32csw05re4L3Qfg== X-Received: by 2002:a05:6808:1155:b0:383:e7c8:4000 with SMTP id u21-20020a056808115500b00383e7c84000mr1206181oiu.13.1686403932054; Sat, 10 Jun 2023 06:32:12 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, BALATON Zoltan , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PULL 13/29] target/ppc: Remove single use function Date: Sat, 10 Jun 2023 10:31:16 -0300 Message-Id: <20230610133132.290703-14-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::233; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x233.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404484649100003 From: BALATON Zoltan The get_physical_address() function is a trivial wrapper of get_physical_address_wtlb() that is only used once. Remove it and call get_physical_address_wtlb() directly instead. Signed-off-by: BALATON Zoltan Reviewed-by: C=C3=A9dric Le Goater Message-Id: <302697d63d26caebefaeee1e45352145ebd0318a.1685448535.git.balato= n@eik.bme.hu> Signed-off-by: Daniel Henrique Barboza --- target/ppc/mmu_helper.c | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/target/ppc/mmu_helper.c b/target/ppc/mmu_helper.c index 64e30435f5..c0c71a68ff 100644 --- a/target/ppc/mmu_helper.c +++ b/target/ppc/mmu_helper.c @@ -168,15 +168,6 @@ static void booke206_flush_tlb(CPUPPCState *env, int f= lags, tlb_flush(env_cpu(env)); } =20 -static int get_physical_address(CPUPPCState *env, mmu_ctx_t *ctx, - target_ulong eaddr, MMUAccessType access_t= ype, - int type) -{ - return get_physical_address_wtlb(env, ctx, eaddr, access_type, type, 0= ); -} - - - /*************************************************************************= ****/ /* BATs management */ #if !defined(FLUSH_ALL_TLBS) @@ -643,7 +634,7 @@ target_ulong helper_rac(CPUPPCState *env, target_ulong = addr) */ nb_BATs =3D env->nb_BATs; env->nb_BATs =3D 0; - if (get_physical_address(env, &ctx, addr, 0, ACCESS_INT) =3D=3D 0) { + if (get_physical_address_wtlb(env, &ctx, addr, 0, ACCESS_INT, 0) =3D= =3D 0) { ret =3D ctx.raddr; } env->nb_BATs =3D nb_BATs; --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686403967; cv=none; d=zohomail.com; s=zohoarc; b=MQ17R/fNH3KwTNXpE+3CjvpKcNU62n+cfU53iexTlEsr6RacBJm1eCW1k1GLH6YfZyRowxQK0DiF1vM7gnac5Lqh60nUut0R3f1UdFSehfYItnpdZxjTNKu5vPu6Ql4knFRk5EMg5mmyH9fII27RsoqTwZh0648gYB8guRIYW5o= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686403967; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=ThMh6llT32g9rSMGS7qb8vHGAY5K0tlxJ7yUX4mE0qQ=; b=W9S/6XxkcoU3f0F9CNJuUC4zrxzgrwRzDoFS29CrHFOmwAJtBJD3mLNf9rDm9Czz8vksFdcEhnzQvs4BSfQZzaDawhylq31KdkQPssMcqf+1fz7An7plJja8Me/4ucispuQ+Id1QLFSp18CS/kfioR0bhceaxtNYA/WOeLXqd9c= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686403967096310.27533386871744; Sat, 10 Jun 2023 06:32:47 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhY-0004iD-Qr; Sat, 10 Jun 2023 09:32:20 -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 1q7yhW-0004eW-O5; Sat, 10 Jun 2023 09:32:18 -0400 Received: from mail-oo1-xc32.google.com ([2607:f8b0:4864:20::c32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhU-0007dQ-Uo; Sat, 10 Jun 2023 09:32:18 -0400 Received: by mail-oo1-xc32.google.com with SMTP id 006d021491bc7-55af55a0fdaso1777442eaf.2; Sat, 10 Jun 2023 06:32:15 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403934; x=1688995934; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ThMh6llT32g9rSMGS7qb8vHGAY5K0tlxJ7yUX4mE0qQ=; b=RSXCrko1xDhgfK9w7KqSadH/NLQcQt1yyrJ+O3aHvvu5Hs7y43ZdV/tGBaj59p7D2O ICWFhBKLP8EP0cekFMObrRvDxVj6GjDqpnAXr7JEpk2ICHNTvH1NzkEm85Oy0wnq7KX7 tvXGWLr7KLCI19vP7ySZZLrOLDKvhs04t1yUHUH2hg6zisL5PpS0fvnhBqBk7jZ9aWiP HW0pEeAB2VVMw4VXB6fjv6vJNodXOta9oZcfsxim1Ydvy8LAjnVQV7ITLIPZ0uDwVIjz I371mc1F5LTT4A3rGNqZggZh8csh4C70bsch6NLG/R1mpxCOANSnUtrkodFtVNADZ2mP m3CA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403934; x=1688995934; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ThMh6llT32g9rSMGS7qb8vHGAY5K0tlxJ7yUX4mE0qQ=; b=fSmeTrsFWGDDbbdZSWO+g/M0bunWfTVDEjzCyPYCn12db61rtt+68PKgL8C/m2guJI euiMlWM08yeUU5rYLduoWoSuz+zQtJ9BDekxDQB3ZQa7PTPLgg5CVe0FkrlhFyHlF43L bs2PMGIew37b0ay9lpgbG/jqFpR/w37qcN96Mgo96CKC+kEWmMdzvXGrDN+w5v8UCdg2 l7Iogif6C0AWosP8E5JDsThHuKNefV0NDDQrhClkfN+ueHW3CA+T/x/YFeostX1hLchL JimC3i2Pte3JQCODfCPCJ2EdpxbA46633V+dJWNq/lzLgaxcfQu0HWYzt/PNma3buJSZ FPEA== X-Gm-Message-State: AC+VfDxNJpCMbQAwM61VCeHifOuRNwVOxA3LfL+z/17mS7jzoZTH5ktN M2seO73yKFFcEAsbG1nZ7hdLirZ/EOA= X-Google-Smtp-Source: ACHHUZ53w7CJEndXazMxZ0zU+XmO2qMscoxrGZvq0Lf8tjDBpTJ6njUSiTTDjwAPXuOtbmgbCiqCgw== X-Received: by 2002:a4a:b6c1:0:b0:558:b7e5:1dd0 with SMTP id w1-20020a4ab6c1000000b00558b7e51dd0mr2552224ooo.3.1686403934418; Sat, 10 Jun 2023 06:32:14 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, BALATON Zoltan , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PULL 14/29] target/ppc: Remove "ext" parameter of ppcemb_tlb_check() Date: Sat, 10 Jun 2023 10:31:17 -0300 Message-Id: <20230610133132.290703-15-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::c32; envelope-from=danielhb413@gmail.com; helo=mail-oo1-xc32.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686403967963100001 From: BALATON Zoltan This is only used by one caller so simplify function by removing this parameter and move the operation to the single place where it's used. Signed-off-by: BALATON Zoltan Reviewed-by: C=C3=A9dric Le Goater Message-Id: Signed-off-by: Daniel Henrique Barboza --- target/ppc/cpu.h | 3 +-- target/ppc/mmu_common.c | 21 +++++++++------------ target/ppc/mmu_helper.c | 2 +- 3 files changed, 11 insertions(+), 15 deletions(-) diff --git a/target/ppc/cpu.h b/target/ppc/cpu.h index 10c4ffa148..557e02e697 100644 --- a/target/ppc/cpu.h +++ b/target/ppc/cpu.h @@ -1429,8 +1429,7 @@ int ppcmas_tlb_check(CPUPPCState *env, ppcmas_tlb_t *= tlb, uint32_t pid); int ppcemb_tlb_check(CPUPPCState *env, ppcemb_tlb_t *tlb, hwaddr *raddrp, - target_ulong address, uint32_t pid, int ext, - int i); + target_ulong address, uint32_t pid, int i); hwaddr booke206_tlb_to_page_size(CPUPPCState *env, ppcmas_tlb_t *tlb); #endif diff --git a/target/ppc/mmu_common.c b/target/ppc/mmu_common.c index 7235a4befe..21a353c51a 100644 --- a/target/ppc/mmu_common.c +++ b/target/ppc/mmu_common.c @@ -491,8 +491,7 @@ static int get_segment_6xx_tlb(CPUPPCState *env, mmu_ct= x_t *ctx, /* Generic TLB check function for embedded PowerPC implementations */ int ppcemb_tlb_check(CPUPPCState *env, ppcemb_tlb_t *tlb, hwaddr *raddrp, - target_ulong address, uint32_t pid, int ext, - int i) + target_ulong address, uint32_t pid, int i) { target_ulong mask; =20 @@ -514,11 +513,6 @@ int ppcemb_tlb_check(CPUPPCState *env, ppcemb_tlb_t *t= lb, return -1; } *raddrp =3D (tlb->RPN & mask) | (address & ~mask); - if (ext) { - /* Extend the physical address to 36 bits */ - *raddrp |=3D (uint64_t)(tlb->RPN & 0xF) << 32; - } - return 0; } =20 @@ -536,7 +530,7 @@ static int mmu40x_get_physical_address(CPUPPCState *env= , mmu_ctx_t *ctx, for (i =3D 0; i < env->nb_tlb; i++) { tlb =3D &env->tlb.tlbe[i]; if (ppcemb_tlb_check(env, tlb, &raddr, address, - env->spr[SPR_40x_PID], 0, i) < 0) { + env->spr[SPR_40x_PID], i) < 0) { continue; } zsel =3D (tlb->attr >> 4) & 0xF; @@ -598,20 +592,23 @@ static int mmubooke_check_tlb(CPUPPCState *env, ppcem= b_tlb_t *tlb, int prot2; =20 if (ppcemb_tlb_check(env, tlb, raddr, address, - env->spr[SPR_BOOKE_PID], - !env->nb_pids, i) >=3D 0) { + env->spr[SPR_BOOKE_PID], i) >=3D 0) { + if (!env->nb_pids) { + /* Extend the physical address to 36 bits */ + *raddr |=3D (uint64_t)(tlb->RPN & 0xF) << 32; + } goto found_tlb; } =20 if (env->spr[SPR_BOOKE_PID1] && ppcemb_tlb_check(env, tlb, raddr, address, - env->spr[SPR_BOOKE_PID1], 0, i) >=3D 0) { + env->spr[SPR_BOOKE_PID1], i) >=3D 0) { goto found_tlb; } =20 if (env->spr[SPR_BOOKE_PID2] && ppcemb_tlb_check(env, tlb, raddr, address, - env->spr[SPR_BOOKE_PID2], 0, i) >=3D 0) { + env->spr[SPR_BOOKE_PID2], i) >=3D 0) { goto found_tlb; } =20 diff --git a/target/ppc/mmu_helper.c b/target/ppc/mmu_helper.c index c0c71a68ff..e7275eaec1 100644 --- a/target/ppc/mmu_helper.c +++ b/target/ppc/mmu_helper.c @@ -124,7 +124,7 @@ static int ppcemb_tlb_search(CPUPPCState *env, target_u= long address, ret =3D -1; for (i =3D 0; i < env->nb_tlb; i++) { tlb =3D &env->tlb.tlbe[i]; - if (ppcemb_tlb_check(env, tlb, &raddr, address, pid, 0, i) =3D=3D = 0) { + if (ppcemb_tlb_check(env, tlb, &raddr, address, pid, i) =3D=3D 0) { ret =3D i; break; } --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404449; cv=none; d=zohomail.com; s=zohoarc; b=lEBNllcIxWB093epSmhR6uo6qptPJLXhFfMR4J9Uut+chDxriKIA0OTCwDTJ8QWXcpmpqYeUW5YCfUYERQIZ6mXgwHddyDWgauPdDVcgtEI4vSL2b6m0yVp1NgbRXSDn2kpeaYYjWxLgFRwAOH4DgjDQA0kp8dDDIWwmn9F40OI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404449; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Ivav2ycIvnakR2ciKDG+0QBgSTpSm1FFjGE6ZxOkydU=; b=Ay+n240ern0cQ0MAvZVpwzi8Pzz++faBLkZeAXsT/49WWhjIwbsGeYf9drzWPsERKiNJZCBoR6AONVG63G98MSH50w09T9THY2h3u1ca6dMJXytr21E8bPLWYUQ0oTqYRgeiCOphLgEJvQyJBu72iyi3TTpEH79771NdZd3odcU= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404449319549.7300874354265; Sat, 10 Jun 2023 06:40:49 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhZ-0004ij-2F; Sat, 10 Jun 2023 09:32:21 -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 1q7yhX-0004g9-UO; Sat, 10 Jun 2023 09:32:20 -0400 Received: from mail-oi1-x235.google.com ([2607:f8b0:4864:20::235]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhW-0007dh-64; Sat, 10 Jun 2023 09:32:19 -0400 Received: by mail-oi1-x235.google.com with SMTP id 5614622812f47-39c7f5706f0so1293921b6e.3; Sat, 10 Jun 2023 06:32:17 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403936; x=1688995936; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Ivav2ycIvnakR2ciKDG+0QBgSTpSm1FFjGE6ZxOkydU=; b=HWIha1pMgg3qaDIkX9W5bH3J4Ejn+4ele3/4XNHGGRRalurKRLyJTda+Gz51CSobCa iIHsXGUs+i6WhzRYUCplxa/uvt4vttz4778dHo6NbfrYpnOo1Dxb/YfmTY9vzkd9YbQX hoZcLN43hDSu40kta/Ni6m/KGF7V6e9c2rT2/US0lqoWbSZcH8L+g4oO8PDrU15+8Efz TB92zuUPg9j3LOJzT8Umu270UjDEBskH2DQpSNLwQRlo4M54s4SP/lSad/C0dVvsmbBb K2cqGseK5pzZcVt7ka/7NdKD3MReUz6N92IJYqDsILXlABFoDfGoLwqY80d4i+V5k4qW TTHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403936; x=1688995936; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Ivav2ycIvnakR2ciKDG+0QBgSTpSm1FFjGE6ZxOkydU=; b=gaqNijClTDScHzgvb3MwhnJEnzCMH0x++2CBA2nden8eRIvcxBcpN/rLRrtWINjAty 15fwVX2WJrXxKGb0ZsrqIB0QHM4x5MozET/0CoZ4MTj3pn4nxo22xhePXOkLcxMzZaKz 4sPOVJUrL7EaS8946DCLu8XaQ/uzwo4d6fMWlqsh+k5YO9MX7c3GQAa/xpN0t+/0C3mO vdHqAVoyY9qH5JhfKv3dWzJUGNKerIAoah4ZyfckSMEx0i+Lf0dN+sM4iLY/E4crpmXx eDLt3yNeJywIioKzuH6TrcyoLDPgZlf8kScs77ZT506wDyU9MpBPJJGsiIQXIT/+hpdx X3Lg== X-Gm-Message-State: AC+VfDx87CNGCQzNUC78Bmgnub65ngIB/dgLXs251SSmd91nNdRKdIdM GLrAksDv9g5Hw94e540h0fc7EAg5mc8= X-Google-Smtp-Source: ACHHUZ42kLmON6mz3KvuqWD4GtxsK3us+Zra2I24EaEgltAIYBpT0FLKfeBSESU0q3pERzpvjRtBzQ== X-Received: by 2002:a05:6808:150d:b0:398:57fe:5fa with SMTP id u13-20020a056808150d00b0039857fe05famr1184716oiw.29.1686403936700; Sat, 10 Jun 2023 06:32:16 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, BALATON Zoltan , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PULL 15/29] target/ppc: Move ppcemb_tlb_search() to mmu_common.c Date: Sat, 10 Jun 2023 10:31:18 -0300 Message-Id: <20230610133132.290703-16-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::235; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x235.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404451559100001 From: BALATON Zoltan This function is the only reason why ppcemb_tlb_check() is not static to mmu_common.c but it also better fits in mmu_common.c so move it there. Signed-off-by: BALATON Zoltan Reviewed-by: C=C3=A9dric Le Goater Message-Id: Signed-off-by: Daniel Henrique Barboza --- target/ppc/cpu.h | 4 +--- target/ppc/mmu_common.c | 22 +++++++++++++++++++++- target/ppc/mmu_helper.c | 21 --------------------- 3 files changed, 22 insertions(+), 25 deletions(-) diff --git a/target/ppc/cpu.h b/target/ppc/cpu.h index 557e02e697..8001582d52 100644 --- a/target/ppc/cpu.h +++ b/target/ppc/cpu.h @@ -1427,9 +1427,7 @@ void cpu_ppc_set_vhyp(PowerPCCPU *cpu, PPCVirtualHype= rvisor *vhyp); int ppcmas_tlb_check(CPUPPCState *env, ppcmas_tlb_t *tlb, hwaddr *raddrp, target_ulong address, uint32_t pid); -int ppcemb_tlb_check(CPUPPCState *env, ppcemb_tlb_t *tlb, - hwaddr *raddrp, - target_ulong address, uint32_t pid, int i); +int ppcemb_tlb_search(CPUPPCState *env, target_ulong address, uint32_t pid= ); hwaddr booke206_tlb_to_page_size(CPUPPCState *env, ppcmas_tlb_t *tlb); #endif diff --git a/target/ppc/mmu_common.c b/target/ppc/mmu_common.c index 21a353c51a..845eee4c6f 100644 --- a/target/ppc/mmu_common.c +++ b/target/ppc/mmu_common.c @@ -489,7 +489,7 @@ static int get_segment_6xx_tlb(CPUPPCState *env, mmu_ct= x_t *ctx, } =20 /* Generic TLB check function for embedded PowerPC implementations */ -int ppcemb_tlb_check(CPUPPCState *env, ppcemb_tlb_t *tlb, +static int ppcemb_tlb_check(CPUPPCState *env, ppcemb_tlb_t *tlb, hwaddr *raddrp, target_ulong address, uint32_t pid, int i) { @@ -516,6 +516,26 @@ int ppcemb_tlb_check(CPUPPCState *env, ppcemb_tlb_t *t= lb, return 0; } =20 +/* Generic TLB search function for PowerPC embedded implementations */ +int ppcemb_tlb_search(CPUPPCState *env, target_ulong address, uint32_t pid) +{ + ppcemb_tlb_t *tlb; + hwaddr raddr; + int i, ret; + + /* Default return value is no match */ + ret =3D -1; + for (i =3D 0; i < env->nb_tlb; i++) { + tlb =3D &env->tlb.tlbe[i]; + if (ppcemb_tlb_check(env, tlb, &raddr, address, pid, i) =3D=3D 0) { + ret =3D i; + break; + } + } + + return ret; +} + static int mmu40x_get_physical_address(CPUPPCState *env, mmu_ctx_t *ctx, target_ulong address, MMUAccessType access_type) diff --git a/target/ppc/mmu_helper.c b/target/ppc/mmu_helper.c index e7275eaec1..d3ea7588f9 100644 --- a/target/ppc/mmu_helper.c +++ b/target/ppc/mmu_helper.c @@ -112,27 +112,6 @@ static void ppc6xx_tlb_store(CPUPPCState *env, target_= ulong EPN, int way, env->last_way =3D way; } =20 -/* Generic TLB search function for PowerPC embedded implementations */ -static int ppcemb_tlb_search(CPUPPCState *env, target_ulong address, - uint32_t pid) -{ - ppcemb_tlb_t *tlb; - hwaddr raddr; - int i, ret; - - /* Default return value is no match */ - ret =3D -1; - for (i =3D 0; i < env->nb_tlb; i++) { - tlb =3D &env->tlb.tlbe[i]; - if (ppcemb_tlb_check(env, tlb, &raddr, address, pid, i) =3D=3D 0) { - ret =3D i; - break; - } - } - - return ret; -} - /* Helpers specific to PowerPC 40x implementations */ static inline void ppc4xx_tlb_invalidate_all(CPUPPCState *env) { --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404190; cv=none; d=zohomail.com; s=zohoarc; b=lyXYzoAt9nRu/KCMoJySZDlr58BSlzZD/5zPQixJqBDXANUderh4psWHtetoX5UzPw7WtG0FLnqeey+ynYc3Odxca7+zzoogERFTVAJapEhZQieTuCSWINloXAiD/Co7h9Gv90C4OLXXKDdrfrD+yTClT8PWaa5NAkw76vQ07a8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404190; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=qhjrjAHVfDmMP6keqerIsH20Muxa9kDhjH4N6Qa7GQQ=; b=A75ogzJFEyFQu9GhG7d+NqZIwMYuE32434DUkbtLydNqUdZs8jD2t/3xE6My4a/UCESPbEhEvsH6arAuF3Z6C1PF+3NcNGYJJS+nucMy/JkMdX/nXzxceDRAUVdDOTDCga+4C0nREAmqOfnRwCj+1P2zlk1baHpzAwbiLjYz/5k= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 168640419016411.09020311284246; Sat, 10 Jun 2023 06:36:30 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhd-0004kR-LM; Sat, 10 Jun 2023 09:32:25 -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 1q7yha-0004jn-7f; Sat, 10 Jun 2023 09:32:22 -0400 Received: from mail-oo1-xc30.google.com ([2607:f8b0:4864:20::c30]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhY-0007eE-K8; Sat, 10 Jun 2023 09:32:21 -0400 Received: by mail-oo1-xc30.google.com with SMTP id 006d021491bc7-55b77d50465so93865eaf.0; Sat, 10 Jun 2023 06:32:19 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403939; x=1688995939; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=qhjrjAHVfDmMP6keqerIsH20Muxa9kDhjH4N6Qa7GQQ=; b=n0qzAksFXImeqbALnp4yBMtBIgMevm+g3+SmiuwZyZdbV0+0UBUL2Q1lSR339aL4+U F4/44VYsFx7O+eyli5y7pmK8AFDfyYdW2RdWsH4BZGgIgqcfYKn2C+JRuCg4TQ3rniXG iU3po+D61EXWjmsXTDZpdQ9/oJaqQQE5gsGcYCHjJfESZfKraYWwMZDNp5zP19Gw8uFf kJdQ4jPD6cN6DYZbeg/iyLnvAGhs4fBoz0L+wszUyLzSGvTn5Aqgb6Mr6Rdp4sGlKbrV TtyaZM4E+RsFMoNLeRbF7yDmsPJlenMnY6ygcjuTzhusjxEGI6eB0hO5y1He6e3Vws20 Kjkw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403939; x=1688995939; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qhjrjAHVfDmMP6keqerIsH20Muxa9kDhjH4N6Qa7GQQ=; b=EgXOHla301EJP0cO33gLjRDlfLdYI/FC4Ygwg0BmYeTS4O+IsgtPC13zjXA3xpiDgq 7RSAczsI6X64/FUkUNg88ScFrmuPklwe2k3occJ9U/rV+y71lNWgEE7vj5ZUiVG2BEAC rIE38y8xOHkuIpm070O+BVSINAHkZLwcvwp3aaRwrbEXPlJBCyrpxgo5JUvBGaN14TET ShQLSUAfh+bJF5c01irTJizkDqwG+mekSevilZ30XaDEW8xPjT5X7o8LF61+ZQ+1b+78 LPtpOGkOilgLQvhWdbU/VNld0sk6PV33g5gVjLtlvpFMrg20XLu5i2uStkcTXS6fcdR5 8SMQ== X-Gm-Message-State: AC+VfDx7Nxtgq0eV6Dp82D55MNmiIm72MFSOx3r6pErNBfMiLIjzfHno 04NxPdT7FQDvsTBDzW/hnHjme5FwxHg= X-Google-Smtp-Source: ACHHUZ4nvLdqyuu7rj82pK8pTZDK7K3mT/LqfU6eECIBVW8pqBBH4rqHfrCG+Q5+VkKnES4e6GwCZQ== X-Received: by 2002:a05:6808:1598:b0:39a:bde6:3eed with SMTP id t24-20020a056808159800b0039abde63eedmr855886oiw.10.1686403938955; Sat, 10 Jun 2023 06:32:18 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, BALATON Zoltan , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PULL 16/29] target/ppc: Remove some unneded line breaks Date: Sat, 10 Jun 2023 10:31:19 -0300 Message-Id: <20230610133132.290703-17-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::c30; envelope-from=danielhb413@gmail.com; helo=mail-oo1-xc30.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404190428100002 From: BALATON Zoltan Make lines shorter and fix indentation in some functions prototypes. Signed-off-by: BALATON Zoltan Reviewed-by: C=C3=A9dric Le Goater Message-Id: <70952ba2d82141db1cf5cfcf4b227402be575874.1685448535.git.balato= n@eik.bme.hu> Signed-off-by: Daniel Henrique Barboza --- target/ppc/cpu.h | 8 +++----- target/ppc/mmu_common.c | 8 +++----- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/target/ppc/cpu.h b/target/ppc/cpu.h index 8001582d52..c7c2a5534c 100644 --- a/target/ppc/cpu.h +++ b/target/ppc/cpu.h @@ -1424,12 +1424,10 @@ void store_booke_tsr(CPUPPCState *env, target_ulong= val); void ppc_tlb_invalidate_all(CPUPPCState *env); void ppc_tlb_invalidate_one(CPUPPCState *env, target_ulong addr); void cpu_ppc_set_vhyp(PowerPCCPU *cpu, PPCVirtualHypervisor *vhyp); -int ppcmas_tlb_check(CPUPPCState *env, ppcmas_tlb_t *tlb, - hwaddr *raddrp, target_ulong address, - uint32_t pid); +int ppcmas_tlb_check(CPUPPCState *env, ppcmas_tlb_t *tlb, hwaddr *raddrp, + target_ulong address, uint32_t pid); int ppcemb_tlb_search(CPUPPCState *env, target_ulong address, uint32_t pid= ); -hwaddr booke206_tlb_to_page_size(CPUPPCState *env, - ppcmas_tlb_t *tlb); +hwaddr booke206_tlb_to_page_size(CPUPPCState *env, ppcmas_tlb_t *tlb); #endif =20 void ppc_store_fpscr(CPUPPCState *env, target_ulong val); diff --git a/target/ppc/mmu_common.c b/target/ppc/mmu_common.c index 845eee4c6f..a84bc7de88 100644 --- a/target/ppc/mmu_common.c +++ b/target/ppc/mmu_common.c @@ -694,8 +694,7 @@ static int mmubooke_get_physical_address(CPUPPCState *e= nv, mmu_ctx_t *ctx, return ret; } =20 -hwaddr booke206_tlb_to_page_size(CPUPPCState *env, - ppcmas_tlb_t *tlb) +hwaddr booke206_tlb_to_page_size(CPUPPCState *env, ppcmas_tlb_t *tlb) { int tlbm_size; =20 @@ -705,9 +704,8 @@ hwaddr booke206_tlb_to_page_size(CPUPPCState *env, } =20 /* TLB check function for MAS based SoftTLBs */ -int ppcmas_tlb_check(CPUPPCState *env, ppcmas_tlb_t *tlb, - hwaddr *raddrp, target_ulong address, - uint32_t pid) +int ppcmas_tlb_check(CPUPPCState *env, ppcmas_tlb_t *tlb, hwaddr *raddrp, + target_ulong address, uint32_t pid) { hwaddr mask; uint32_t tlb_pid; --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404071; cv=none; d=zohomail.com; s=zohoarc; b=ktlkUNJCwNpreEJqgYIpPiS/IYZ8IAWPemNaXrrLJTiTpubu0CY2vYxCXw6FvGS+8A7mACgwGNvh2pVWMi461T5BHU6usMXg+8upkUehQC9yC/3918vsfoOCOjlnOeI2X0UdPE/CmCzZJgk7vwRLC0cgjT7Y9WwW7Oa1IZvSrqI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404071; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Orw+2LbKsD6HmacNy0CIx7cAvO9Sr9R07DsvrLPcJaY=; b=MqndSIMVQRGlI9Q0Cld1IfpEw+h40ylyJEDrWjJLWa24bC/BHtM3PlQb9M9tX3ESIBNy3jNZypFEKNbfS5K1bOUeu/QhRcNgFz2O57gSdSM4Vb/o4EvdiEyQWKXZNnw2uFq2WRW4N+EeMppQWhT9N8OvLPsZPqgmoLnrSY+lEq8= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404071325531.5773763845652; Sat, 10 Jun 2023 06:34:31 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhf-0004mZ-G9; Sat, 10 Jun 2023 09:32:27 -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 1q7yhc-0004kP-T9; Sat, 10 Jun 2023 09:32:25 -0400 Received: from mail-oo1-xc29.google.com ([2607:f8b0:4864:20::c29]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhb-0007ec-AF; Sat, 10 Jun 2023 09:32:24 -0400 Received: by mail-oo1-xc29.google.com with SMTP id 006d021491bc7-55af44f442dso1789453eaf.1; Sat, 10 Jun 2023 06:32:22 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403941; x=1688995941; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Orw+2LbKsD6HmacNy0CIx7cAvO9Sr9R07DsvrLPcJaY=; b=H2SviYwMnX9mvit/ctdhFKBJ0vFwVbeKEoBNTdZxNeHaXAwHBFpNpN4g8z3bhr2jxm JvQ3hlqw3TcWp0uwf7/E1sXxpJrGnu80Kcq5P+YOyLF4H3kVw4agYjLuYDeboBhMT3D8 9vjnDqqvIhLpjHKvaC1YPke64KJSp2eAmpDm0WvhTMxHDOco4NMe84VmzNx83EALLM5Z PznBUltqsMBgxn/zSAk2AfXUcSxcnbafkYcXcmgYIjlKhn5i28GDP+9tP1kxJnqEC8AI 5K8thcpS9nu8/hTFENFBPgp3AYdy0LOA5Ihv231wb9bGor1YfQpQ9OL3+b/y0xgAuyUG eIlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403941; x=1688995941; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Orw+2LbKsD6HmacNy0CIx7cAvO9Sr9R07DsvrLPcJaY=; b=lBTtZiQFL4cYY6KJ+k+MeI2XcCtwGdeolGjnUOjUtJwOEbzRGHF2HAvi6lkRw7MzBN NL/STFMPf7szE4NhWA/yIjEylEdMF89YR9BUU9NKw6jzFFAPhXZD2Tyuv3kzyCsfsrmJ sW7b0ck4CA/fVtQ/j+HB59Jluik6MNwen5xM37n7mQeHoj/GyrVkmACePBiNqLBtSMbG miKN2aE5D9Ta7BaZ8+t6bUGvc+Gh992T4fl18T1JLU0+FAkI6LSHEbXeXIWm+IiLKNEQ DknPv+s1smD7LuSpmK0rYTAIfrSCg6eqi6xasWUKRNvND6olCHeULJRwv9kocCazg3iX claQ== X-Gm-Message-State: AC+VfDzFnErEXZAmNx4JdipT0p+L8K2YXa/k/Svf4W2u+iRKdWYDyNbb uNb32VmBPjfqFA9FEeaoEHDEVFujiGc= X-Google-Smtp-Source: ACHHUZ4YSSNHdmWULAIS17Ub420BLyn/CCcWf2awvHAjXIMjmgVvQJ6uNg+/H1RU+tk1RQYveq3cyg== X-Received: by 2002:a4a:4307:0:b0:555:82b7:6021 with SMTP id k7-20020a4a4307000000b0055582b76021mr2201346ooj.2.1686403941255; Sat, 10 Jun 2023 06:32:21 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, BALATON Zoltan , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PULL 17/29] target/ppc: Simplify ppcemb_tlb_search() Date: Sat, 10 Jun 2023 10:31:20 -0300 Message-Id: <20230610133132.290703-18-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::c29; envelope-from=danielhb413@gmail.com; helo=mail-oo1-xc29.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404072766100003 From: BALATON Zoltan No nead to store return value and break from loop when we can return directly. Signed-off-by: BALATON Zoltan Reviewed-by: C=C3=A9dric Le Goater Message-Id: Signed-off-by: Daniel Henrique Barboza --- target/ppc/mmu_common.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/target/ppc/mmu_common.c b/target/ppc/mmu_common.c index a84bc7de88..ff7f987546 100644 --- a/target/ppc/mmu_common.c +++ b/target/ppc/mmu_common.c @@ -521,19 +521,15 @@ int ppcemb_tlb_search(CPUPPCState *env, target_ulong = address, uint32_t pid) { ppcemb_tlb_t *tlb; hwaddr raddr; - int i, ret; + int i; =20 - /* Default return value is no match */ - ret =3D -1; for (i =3D 0; i < env->nb_tlb; i++) { tlb =3D &env->tlb.tlbe[i]; if (ppcemb_tlb_check(env, tlb, &raddr, address, pid, i) =3D=3D 0) { - ret =3D i; - break; + return i; } } - - return ret; + return -1; } =20 static int mmu40x_get_physical_address(CPUPPCState *env, mmu_ctx_t *ctx, --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404162; cv=none; d=zohomail.com; s=zohoarc; b=jyT8xAQ6EOell+q48p0EtCgyasWmGUAFbYarPAXnyCGBVlzQvPj+oLCgmQrj3jgnqBndyh01ylBtd6xRN5ZtIK1Kc9Zyn3u2oB1/yJhrhigSCQWDzVRINVImPMwDbQwVJZI/F7kwXzgcPvpW9zPsM0VZofwrPd75dYRGTYyfvF0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404162; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=S3DY05uzPRXUwH2framOi4921lYLe/N/xjiE9DXGWT8=; b=TQNR8rVvMxO27Qf/xNoZzjkLug5T1r1gjgTuf/JkBzrjqFZ81l/gI2gInBjmEpQfaikZnXnbmAiX5jY6LQYvqGFm+GvdpIx91UXlf30fEEXbBGaiLsJPcIT08ei8d7THAYZkLj+oUkxRNy+9aR7T+lmxXnGnsRUy1Yr0+k+VBNA= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404162646498.21487239349085; Sat, 10 Jun 2023 06:36:02 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhj-0004t3-BS; Sat, 10 Jun 2023 09:32:31 -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 1q7yhf-0004mc-1k; Sat, 10 Jun 2023 09:32:27 -0400 Received: from mail-ot1-x336.google.com ([2607:f8b0:4864:20::336]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhd-0007et-9C; Sat, 10 Jun 2023 09:32:26 -0400 Received: by mail-ot1-x336.google.com with SMTP id 46e09a7af769-6b2d356530eso626170a34.0; Sat, 10 Jun 2023 06:32:24 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403943; x=1688995943; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=S3DY05uzPRXUwH2framOi4921lYLe/N/xjiE9DXGWT8=; b=rVKhF/Qpvpo4YiRTz2f0pWtCMagbiw4j30iwkHWUY9a56ir92MKYm2kN/Io2kmIjYn ytPbvkE1frnFnqgk92ysDmoYSiG9Uj90jMZPF9UhShA/owSegxCnAYVpmhW2mQWOJPDm uFG4iQ1QdGG3AH8adSfO8vpl09q4CCvIYvokZDNTDeCrs1HWs85SUN9ZzdZc02ssRfjr aykFtlTxrWfgHYFq+FlMZ98oA0MobI1lW95nkXS+iumTnmhHOWpuojDdaiMsv7BdAikj zoBz13l8h1RmtWfnkLPY8ahsQR42C/rvZJVmeQmkzSFa7WG1wh0sIeGNckQ9uvI25j+N H6sQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403943; x=1688995943; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=S3DY05uzPRXUwH2framOi4921lYLe/N/xjiE9DXGWT8=; b=AffsNQCudEXsUwlnJpbTxkCoz4Gcw5g+XhhV6PNfoVd7SCSYrbcY2BqG4hdNXFPV8d lUKBYd6JcVkz3FLjuHo82npyyVxd50Kr2W1LJJOPNKLqn6OFeWM0n8uWzlpT1VDrkXdC zQBy07YnIilhCGYEHL/yl+8lQn5pNeYapJ+5XmD28+Kbd8LjRShQLO5iQ3wXpMtyP/JE 50uXHs1WOFHFTT9/y+yg9k62m/fTWda5XGkBFk30kp8UIToP27rJ8+tiMGmDHPYyY61Y m6sE2ndApksu1ZmYgUv+PgjbkNbmbo4DtraazoTf/pJbpkbcrfLcqN0u1Q5ACVyEQZS8 BCaw== X-Gm-Message-State: AC+VfDwD8VY2ij0azkAINQWyvYEjkxib7vFLa0Qk/fEWX6/Q5naOyPeo s3Luuo394hh+Po+O3T4qrZgZ+qP5yEI= X-Google-Smtp-Source: ACHHUZ7sWfFkoZ7u7ou9upWytqhSH6XmqbP0D7Lo5Y1twYCtJ6UK+mEfgpCAvP0X2x6YZ0z/01aMnw== X-Received: by 2002:a05:6870:e144:b0:1a3:100f:bf41 with SMTP id z4-20020a056870e14400b001a3100fbf41mr2489160oaa.23.1686403943593; Sat, 10 Jun 2023 06:32:23 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, BALATON Zoltan , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Subject: [PULL 18/29] target/ppc: Change ppcemb_tlb_check() to return bool Date: Sat, 10 Jun 2023 10:31:21 -0300 Message-Id: <20230610133132.290703-19-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::336; envelope-from=danielhb413@gmail.com; helo=mail-ot1-x336.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404163211100001 From: BALATON Zoltan Signed-off-by: BALATON Zoltan Reviewed-by: C=C3=A9dric Le Goater Message-Id: Signed-off-by: Daniel Henrique Barboza --- target/ppc/mmu_common.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/target/ppc/mmu_common.c b/target/ppc/mmu_common.c index ff7f987546..bd7d7d5257 100644 --- a/target/ppc/mmu_common.c +++ b/target/ppc/mmu_common.c @@ -489,15 +489,15 @@ static int get_segment_6xx_tlb(CPUPPCState *env, mmu_= ctx_t *ctx, } =20 /* Generic TLB check function for embedded PowerPC implementations */ -static int ppcemb_tlb_check(CPUPPCState *env, ppcemb_tlb_t *tlb, - hwaddr *raddrp, - target_ulong address, uint32_t pid, int i) +static bool ppcemb_tlb_check(CPUPPCState *env, ppcemb_tlb_t *tlb, + hwaddr *raddrp, + target_ulong address, uint32_t pid, int i) { target_ulong mask; =20 /* Check valid flag */ if (!(tlb->prot & PAGE_VALID)) { - return -1; + return false; } mask =3D ~(tlb->size - 1); qemu_log_mask(CPU_LOG_MMU, "%s: TLB %d address " TARGET_FMT_lx @@ -506,14 +506,14 @@ static int ppcemb_tlb_check(CPUPPCState *env, ppcemb_= tlb_t *tlb, mask, (uint32_t)tlb->PID, tlb->prot); /* Check PID */ if (tlb->PID !=3D 0 && tlb->PID !=3D pid) { - return -1; + return false; } /* Check effective address */ if ((address & mask) !=3D tlb->EPN) { - return -1; + return false; } *raddrp =3D (tlb->RPN & mask) | (address & ~mask); - return 0; + return true; } =20 /* Generic TLB search function for PowerPC embedded implementations */ @@ -525,7 +525,7 @@ int ppcemb_tlb_search(CPUPPCState *env, target_ulong ad= dress, uint32_t pid) =20 for (i =3D 0; i < env->nb_tlb; i++) { tlb =3D &env->tlb.tlbe[i]; - if (ppcemb_tlb_check(env, tlb, &raddr, address, pid, i) =3D=3D 0) { + if (ppcemb_tlb_check(env, tlb, &raddr, address, pid, i)) { return i; } } @@ -545,8 +545,8 @@ static int mmu40x_get_physical_address(CPUPPCState *env= , mmu_ctx_t *ctx, pr =3D FIELD_EX64(env->msr, MSR, PR); for (i =3D 0; i < env->nb_tlb; i++) { tlb =3D &env->tlb.tlbe[i]; - if (ppcemb_tlb_check(env, tlb, &raddr, address, - env->spr[SPR_40x_PID], i) < 0) { + if (!ppcemb_tlb_check(env, tlb, &raddr, address, + env->spr[SPR_40x_PID], i)) { continue; } zsel =3D (tlb->attr >> 4) & 0xF; @@ -608,7 +608,7 @@ static int mmubooke_check_tlb(CPUPPCState *env, ppcemb_= tlb_t *tlb, int prot2; =20 if (ppcemb_tlb_check(env, tlb, raddr, address, - env->spr[SPR_BOOKE_PID], i) >=3D 0) { + env->spr[SPR_BOOKE_PID], i)) { if (!env->nb_pids) { /* Extend the physical address to 36 bits */ *raddr |=3D (uint64_t)(tlb->RPN & 0xF) << 32; @@ -618,13 +618,13 @@ static int mmubooke_check_tlb(CPUPPCState *env, ppcem= b_tlb_t *tlb, =20 if (env->spr[SPR_BOOKE_PID1] && ppcemb_tlb_check(env, tlb, raddr, address, - env->spr[SPR_BOOKE_PID1], i) >=3D 0) { + env->spr[SPR_BOOKE_PID1], i)) { goto found_tlb; } =20 if (env->spr[SPR_BOOKE_PID2] && ppcemb_tlb_check(env, tlb, raddr, address, - env->spr[SPR_BOOKE_PID2], i) >=3D 0) { + env->spr[SPR_BOOKE_PID2], i)) { goto found_tlb; } =20 --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404143; cv=none; d=zohomail.com; s=zohoarc; b=TB8Spgw0KhjHJAWtwaaUfxjSFIheyWeN9FFenrcHxchDAMHepSOxG3kfcuuXDOqRwVJNW5kXbVmQq4FZ1IxytkBX+IaqWykG84KEOIAwTbck/l1womVdA17hs/KuJDmJTrzEi8xLGGG6bLN0y7AiAOE+paou/qu1GxhJnySEpls= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404143; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=SwwgSwbrhJWbyc3oxpVYxYIp5H503PfpamAq2kJFFZY=; b=eSkNI8YUuzH0dg+DvWJ7zTZvrTvtiJm55nwNCdWDg9Zm6+TKqr/gzr5tTZo86dtaZNuZ2MP33zSg31hFndxRGMQihqhoKS8m79Snhq4kYlwsxt4pqzkzGW2qhDy65RNzafvN/MrI3BcBA6sF0SSaswugl/ssrhOCzuLEATH4RY8= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404143642539.523699126473; Sat, 10 Jun 2023 06:35:43 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhq-0004xL-Sa; Sat, 10 Jun 2023 09:32: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 1q7yhh-0004ry-EC; Sat, 10 Jun 2023 09:32:29 -0400 Received: from mail-oi1-x22e.google.com ([2607:f8b0:4864:20::22e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhf-0007fK-Oq; Sat, 10 Jun 2023 09:32:29 -0400 Received: by mail-oi1-x22e.google.com with SMTP id 5614622812f47-39a95068c9cso1241739b6e.1; Sat, 10 Jun 2023 06:32:26 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403946; x=1688995946; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=SwwgSwbrhJWbyc3oxpVYxYIp5H503PfpamAq2kJFFZY=; b=a2ODRoFQ9CuvNDkSmubyCZIn/vERJtJF7WfeBAU4ro5FJzZkygj0+IsLqVq0WLt8Nc LflGQRCA7lQRa0eGeuFDHw6Mp+nd+LlMWvWekcRo+6gVisoP1qtc43NdQYSrOVyKnlnU tBBBDD8CtepyQF9/4Y3KVEMGJ4BHyeXprbRAGVDj14PExrfQeRJOq/5OUPeqPjA5NvPT +vgNY72cUPCyLaezcuxgdRlqAfy/q9CoIGjpS79a7ZxN8lt6aSUuiY1GSXBb3OB3Parb y1ZAfnhbYSaQjNdJ6XCAZe+u8fXCs0kkaKEsUv9m8hhBSFinfOtqxTWaX5QK50TYUfmd 3MCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403946; x=1688995946; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SwwgSwbrhJWbyc3oxpVYxYIp5H503PfpamAq2kJFFZY=; b=ix4CIv3kuagbGJD93eoRb2aL6PcN8Y1j23flD9y1/R06mq+F/GKWvUBFAhYrq0fnVI LN1in3PhO8NemHhDlwcdR1jvouCdsnfqkFCfB5fXuUY8VklZYIwzV4ObsjeMhokROwdm lrVB3/Hmlbyat1Dn21WGftJMYuH9HVHGcJ2ne1V8UnpxpxltiijgKXW0RgkSrVrlPzuG WjJAewymB0+vIgPAtHxoo0PfE/yGRh5zItR+MJWhleAGaqWX/6gBRt5ExgEQMpWlQepQ p4q9w2NiEr+9u2VGtvZa4abGs0OC0+poxx/JEBoXgtQ/M+ccWkuZ2qO5Pft1eBw7wzVi W2PA== X-Gm-Message-State: AC+VfDyt0J59gfkctkSuz+cKbTLJc57o0H4V9i9PrhNn1WbHCHCSn6Rt az8cc1owJ65ZmzyaUOn8HnUis9ky+Co= X-Google-Smtp-Source: ACHHUZ6eGKt7PeTlSl6YrQIZxk3p+xpGxsfKg7iab/bfRr0qeZM9WkLsMpiKNTX13namF1KzgYEc1Q== X-Received: by 2002:a05:6808:1790:b0:398:6495:5a9b with SMTP id bg16-20020a056808179000b0039864955a9bmr1244306oib.5.1686403946004; Sat, 10 Jun 2023 06:32:26 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, BALATON Zoltan Subject: [PULL 19/29] target/ppc: Eliminate goto in mmubooke_check_tlb() Date: Sat, 10 Jun 2023 10:31:22 -0300 Message-Id: <20230610133132.290703-20-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::22e; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x22e.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404145067100001 Content-Type: text/plain; charset="utf-8" From: BALATON Zoltan Move out checking PID registers into a separate function which makes mmubooke_check_tlb() simpler and avoids using goto. Signed-off-by: BALATON Zoltan Reviewed-by: Daniel Henrique Barboza Message-Id: Signed-off-by: Daniel Henrique Barboza --- target/ppc/mmu_common.c | 40 +++++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/target/ppc/mmu_common.c b/target/ppc/mmu_common.c index bd7d7d5257..ae1db6e348 100644 --- a/target/ppc/mmu_common.c +++ b/target/ppc/mmu_common.c @@ -601,37 +601,39 @@ static int mmu40x_get_physical_address(CPUPPCState *e= nv, mmu_ctx_t *ctx, return ret; } =20 -static int mmubooke_check_tlb(CPUPPCState *env, ppcemb_tlb_t *tlb, - hwaddr *raddr, int *prot, target_ulong addre= ss, - MMUAccessType access_type, int i) +static bool mmubooke_check_pid(CPUPPCState *env, ppcemb_tlb_t *tlb, + hwaddr *raddr, target_ulong addr, int i) { - int prot2; - - if (ppcemb_tlb_check(env, tlb, raddr, address, - env->spr[SPR_BOOKE_PID], i)) { + if (ppcemb_tlb_check(env, tlb, raddr, addr, env->spr[SPR_BOOKE_PID], i= )) { if (!env->nb_pids) { /* Extend the physical address to 36 bits */ *raddr |=3D (uint64_t)(tlb->RPN & 0xF) << 32; } - goto found_tlb; + return true; + } else if (!env->nb_pids) { + return false; } - if (env->spr[SPR_BOOKE_PID1] && - ppcemb_tlb_check(env, tlb, raddr, address, - env->spr[SPR_BOOKE_PID1], i)) { - goto found_tlb; + ppcemb_tlb_check(env, tlb, raddr, addr, env->spr[SPR_BOOKE_PID1], = i)) { + return true; } - if (env->spr[SPR_BOOKE_PID2] && - ppcemb_tlb_check(env, tlb, raddr, address, - env->spr[SPR_BOOKE_PID2], i)) { - goto found_tlb; + ppcemb_tlb_check(env, tlb, raddr, addr, env->spr[SPR_BOOKE_PID2], = i)) { + return true; } + return false; +} =20 - qemu_log_mask(CPU_LOG_MMU, "%s: TLB entry not found\n", __func__); - return -1; +static int mmubooke_check_tlb(CPUPPCState *env, ppcemb_tlb_t *tlb, + hwaddr *raddr, int *prot, target_ulong addre= ss, + MMUAccessType access_type, int i) +{ + int prot2; =20 -found_tlb: + if (!mmubooke_check_pid(env, tlb, raddr, address, i)) { + qemu_log_mask(CPU_LOG_MMU, "%s: TLB entry not found\n", __func__); + return -1; + } =20 if (FIELD_EX64(env->msr, MSR, PR)) { prot2 =3D tlb->prot & 0xF; --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404405; cv=none; d=zohomail.com; s=zohoarc; b=Y5u5x1NldvWRAkRTLOdFgc2UTfZzl+KoYhVJiqkQvJ9p7/+sJ/qaEHaLOdgr1C9+Ku4tLqKVoqN2sbaU+LvbZr2OCiQbarPgE9XrYXdAc/6rNnuDRFAMqt5tkTP1WL6WibxHFAVyuzZyOM3w6xL0NUooiU/hB3letVTJMXIqjWo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404405; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=WM5AC4EI057sKwaj8PSP53Rp4AVjuqfQdLvCPSu5d0E=; b=JPrDO+H6KbhMs34V+KW4d0sE9lev/O/w33iGGU4h+rz9lS8czZhzgGoRiAa8eBMgn36iuHfrjgkZfYSF5BgpaCmbd9QGyWZmwM/MAoaolY+HmaiVJm5d9VNp2qnpkfYgm6QNMr1mXpWvVG9JRK9r3gv2tFpnvu2/S368Vq+PBcM= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404405150934.1395819319675; Sat, 10 Jun 2023 06:40:05 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhs-0004zi-Oj; Sat, 10 Jun 2023 09:32:40 -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 1q7yhk-0004vj-Iw; Sat, 10 Jun 2023 09:32:33 -0400 Received: from mail-oo1-xc35.google.com ([2607:f8b0:4864:20::c35]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhj-0007h0-44; Sat, 10 Jun 2023 09:32:32 -0400 Received: by mail-oo1-xc35.google.com with SMTP id 006d021491bc7-559409cc490so1772938eaf.3; Sat, 10 Jun 2023 06:32:29 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403949; x=1688995949; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=WM5AC4EI057sKwaj8PSP53Rp4AVjuqfQdLvCPSu5d0E=; b=mf2H4Eq4Pv3OBkhQND/sHZrhauyM5ySv4OEGz2doWmOnqI7Xp8eK7eh+ZEu/PJKJbr mUV20ishYnomdA8ZaSnvoDMU6FVijXp0FBHAYyZwOEoQfoPaXFtiWlvBJyFheUD5/BcY 9s2QYdhIKr8JiCjeBhJq7Hr80RXyPqwZjY9MhDa4JuuKEWPxOODwkrfCCs81xJJSAL16 ohCHejpCwL00grsVxquXS+ZjAo7PbZ10lkVgvUvl7MtDov2QCLHQ6GgTZqjlSnXqhBNi p/DaPe75QgE6/h4SKvmXo78LDZAv7dSyLrwRxOEY0zwQruC8fFvrFxtBQl+6/cL9oFa2 4BEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403949; x=1688995949; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WM5AC4EI057sKwaj8PSP53Rp4AVjuqfQdLvCPSu5d0E=; b=F7hBXpynws1DAzqm+FcGqMvWAbu5m1TFneSB4mAx5jdpPcLzg8gIcM6+3g4FsNIY5E BrYRKQA4QEEkJuc7bPj4R3jcBGJtisYMdUUVpLRpATb6clRUMXBLU96/tZ4cts56sklH wr8maMEvdI6gOSUKBlL25PfTOkg/t5Tfgq2TV0cKBGWILEYQ7sH4ZLp2J4/D/SblWryt DPQk6hBV4kmibUAtoF/JWZZdCEOHyLGEqCvoNo0Lv+Ovh2o3J2P0q4poTE2CPc+MKnXM JcMbBDA4HGVC/+g60HRGhzmGGNQq/0ADMZ+LrjXJprpR09ucPKErZ5VTYExRrCPydXAv jrbw== X-Gm-Message-State: AC+VfDy66gyBbAevfEmzOBVIszE4wb+FHA2rN2RlkPEQ7y7YVjKnovpI X9Pmph2+gWd1P+HJeqN90o2wyZy03Ws= X-Google-Smtp-Source: ACHHUZ4VwzdQG1n814rqKaT9b+7JR8SJCyfmE6/fyBHaYoIMORgV5h902+yn5Q/t0DLmBy3zy1gfCA== X-Received: by 2002:a05:6808:1b06:b0:39a:abd1:36f5 with SMTP id bx6-20020a0568081b0600b0039aabd136f5mr1191338oib.31.1686403948740; Sat, 10 Jun 2023 06:32:28 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Nicholas Piggin , qemu-stable@nongnu.org Subject: [PULL 20/29] target/ppc: Fix lqarx to set cpu_reserve Date: Sat, 10 Jun 2023 10:31:23 -0300 Message-Id: <20230610133132.290703-21-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::c35; envelope-from=danielhb413@gmail.com; helo=mail-oo1-xc35.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404406201100001 Content-Type: text/plain; charset="utf-8" From: Nicholas Piggin lqarx does not set cpu_reserve, which causes stqcx. to never succeed. Cc: qemu-stable@nongnu.org Fixes: 94bf2658676 ("target/ppc: Use atomic load for LQ and LQARX") Fixes: 57b38ffd0c6 ("target/ppc: Use tcg_gen_qemu_{ld,st}_i128 for LQARX, L= Q, STQ") Signed-off-by: Nicholas Piggin Reviewed-by: Richard Henderson Message-Id: <20230605025445.161932-1-npiggin@gmail.com> Signed-off-by: Daniel Henrique Barboza --- target/ppc/translate.c | 1 + 1 file changed, 1 insertion(+) diff --git a/target/ppc/translate.c b/target/ppc/translate.c index 37fd431870..452439b729 100644 --- a/target/ppc/translate.c +++ b/target/ppc/translate.c @@ -3765,6 +3765,7 @@ static void gen_lqarx(DisasContext *ctx) tcg_gen_qemu_ld_i128(t16, EA, ctx->mem_idx, DEF_MEMOP(MO_128 | MO_ALIG= N)); tcg_gen_extr_i128_i64(lo, hi, t16); =20 + tcg_gen_mov_tl(cpu_reserve, EA); tcg_gen_st_tl(hi, cpu_env, offsetof(CPUPPCState, reserve_val)); tcg_gen_st_tl(lo, cpu_env, offsetof(CPUPPCState, reserve_val2)); } --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404232; cv=none; d=zohomail.com; s=zohoarc; b=YAW7auYz3jRFQMlKazlANPjjg1LwhXaMO5sQGWpbK9k3ncJdz8WOjWXE7ZTHm+qwBcAi9sBGk8S5XmDgDqiNWS7zdDQpc2pe8JdchcIA1rUufJ7XBiB+lNPKWX1awDU0VTlBuDnO6iiWVDxQTbYtWOL73/5YUAquAKCY5p839bc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404232; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=UJkX6ackgSL+oGcc23kedSTv0OUc9rAnbvA+HNS+Gao=; b=Z6F/weKaTAgmqZHEAZuHaH7zUpf0NITxk89RN0kMOwFzxQAhKTEVXPKpvx78AwYvjnc+P6qQQKITuVXauydZW2SzIi+ExSJPraq5DMNue7p4n6+ATxgQ3qyyfvFWk8DHmdsK9O4STSQecCchI5Uo6KWlZJUv1iiIccC4RWC4uS8= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404232039184.03053935453545; Sat, 10 Jun 2023 06:37:12 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhr-0004zD-Vg; Sat, 10 Jun 2023 09:32:40 -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 1q7yhm-0004w3-A6; Sat, 10 Jun 2023 09:32:35 -0400 Received: from mail-oi1-x22a.google.com ([2607:f8b0:4864:20::22a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhk-0007hY-My; Sat, 10 Jun 2023 09:32:34 -0400 Received: by mail-oi1-x22a.google.com with SMTP id 5614622812f47-39bcba263efso1152711b6e.1; Sat, 10 Jun 2023 06:32:32 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403951; x=1688995951; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=UJkX6ackgSL+oGcc23kedSTv0OUc9rAnbvA+HNS+Gao=; b=LUZH7z+obYl1CpQa9qs94KF1zTXgKHFQUjZF4yfXKlu3ThEnZTCizpI9+6+wtsaZM5 AF5S+Vtqv1I+K/5GY5yJQ5dLjK3/vhZKdKY+FROFECR0h6rYhRMma4ossN2beZOPrgQI H1ULpCDOxXW09axEafvXibW7gxP4rlcPbMBqEUOvBt/TC9sNKV0EkOpl1WSDyLp7dTU2 R/p9vNgEeoGoFpT/bgoWtQgHOssTEh9uZlPH6sfwNLj2lXMllV+7vwcRQ/My6vRAnYJH 05OG5095jH153DCH70+LKP4qHH0LoGHLor6rXRVhDDv8PxwktCqGhC0CtOLVUStzbjO4 CsIA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403951; x=1688995951; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UJkX6ackgSL+oGcc23kedSTv0OUc9rAnbvA+HNS+Gao=; b=aWe+I43edLlbuXRoCM3e4Otvh7gIaxtOM1DBe4XcLFK91y11gg5mRBU3XW7W4PSu6j XBvGMOiRXzuaKspVyxUQE/KvQ9/dOScuzKMQyy7ibySun5eIn06BR2JJnT+bmhqZDVnH frOxt4qD9/aV72Wnht5b3McJdjwhmxEikHh4FdJG96PUkTa8/Eg270yTfHhaIoRvnPdV OkkF7KUNet0VcBOHHDLzzTytxKJ6b/0fXTtcUELfFNypXxJQwrecuFZbVxLiTVfs/zjb 8zwZXVxL77N6q00s4cRHzQAJMWRWI9LSlMyfzn8knD3vjZs0XQhUYMxex//2s4fdH5Sy LA8Q== X-Gm-Message-State: AC+VfDz65SpOPTh7tO5Udxt3XxWewu6EKojf1fXy9TGCSi2SqRsRQngI n7/oHGx2y+6FgYklIwOSa8mxNGAiQvw= X-Google-Smtp-Source: ACHHUZ6T4o73QF2tXASuH1LLGwpTkxRPvlzDv2HSblv74yX6qkXwAIJSVBxWZtE5oxoqxOK9HrJA3w== X-Received: by 2002:aca:3387:0:b0:38e:a925:8f95 with SMTP id z129-20020aca3387000000b0038ea9258f95mr946039oiz.26.1686403951271; Sat, 10 Jun 2023 06:32:31 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Nicholas Piggin Subject: [PULL 21/29] target/ppc: Ensure stcx size matches larx Date: Sat, 10 Jun 2023 10:31:24 -0300 Message-Id: <20230610133132.290703-22-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::22a; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x22a.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404233423100003 Content-Type: text/plain; charset="utf-8" From: Nicholas Piggin Differently-sized larx/stcx. pairs can succeed if the starting address matches. Add a check to require the size of stcx. exactly match the larx that established the reservation. Use the term "reserve_length" for this state, which matches the terminology used in the ISA. Reviewed-by: Richard Henderson Signed-off-by: Nicholas Piggin Message-Id: <20230605025445.161932-2-npiggin@gmail.com> Signed-off-by: Daniel Henrique Barboza --- target/ppc/cpu.h | 5 +++-- target/ppc/cpu_init.c | 4 ++-- target/ppc/translate.c | 9 +++++++++ 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/target/ppc/cpu.h b/target/ppc/cpu.h index c7c2a5534c..20508bac5e 100644 --- a/target/ppc/cpu.h +++ b/target/ppc/cpu.h @@ -1114,8 +1114,9 @@ struct CPUArchState { target_ulong ov32; target_ulong ca32; =20 - target_ulong reserve_addr; /* Reservation address */ - target_ulong reserve_val; /* Reservation value */ + target_ulong reserve_addr; /* Reservation address */ + target_ulong reserve_length; /* Reservation larx op size (bytes) */ + target_ulong reserve_val; /* Reservation value */ target_ulong reserve_val2; =20 /* These are used in supervisor mode only */ diff --git a/target/ppc/cpu_init.c b/target/ppc/cpu_init.c index 398f2d9966..d4ef074afb 100644 --- a/target/ppc/cpu_init.c +++ b/target/ppc/cpu_init.c @@ -7392,8 +7392,8 @@ void ppc_cpu_dump_state(CPUState *cs, FILE *f, int fl= ags) } qemu_fprintf(f, " %c%c", a, env->crf[i] & 0x01 ? 'O' : ' '); } - qemu_fprintf(f, " ] RES " TARGET_FMT_lx "\n", - env->reserve_addr); + qemu_fprintf(f, " ] RES %03x@" TARGET_FMT_lx "\n", + (int)env->reserve_length, env->reserve_addr); =20 if (flags & CPU_DUMP_FPU) { for (i =3D 0; i < 32; i++) { diff --git a/target/ppc/translate.c b/target/ppc/translate.c index 452439b729..cf0bd79b8c 100644 --- a/target/ppc/translate.c +++ b/target/ppc/translate.c @@ -75,6 +75,7 @@ static TCGv cpu_cfar; #endif static TCGv cpu_xer, cpu_so, cpu_ov, cpu_ca, cpu_ov32, cpu_ca32; static TCGv cpu_reserve; +static TCGv cpu_reserve_length; static TCGv cpu_reserve_val; static TCGv cpu_reserve_val2; static TCGv cpu_fpscr; @@ -143,6 +144,10 @@ void ppc_translate_init(void) cpu_reserve =3D tcg_global_mem_new(cpu_env, offsetof(CPUPPCState, reserve_addr), "reserve_addr"); + cpu_reserve_length =3D tcg_global_mem_new(cpu_env, + offsetof(CPUPPCState, + reserve_length), + "reserve_length"); cpu_reserve_val =3D tcg_global_mem_new(cpu_env, offsetof(CPUPPCState, reserve_val= ), "reserve_val"); @@ -3469,6 +3474,7 @@ static void gen_load_locked(DisasContext *ctx, MemOp = memop) gen_addr_reg_index(ctx, t0); tcg_gen_qemu_ld_tl(gpr, t0, ctx->mem_idx, memop | MO_ALIGN); tcg_gen_mov_tl(cpu_reserve, t0); + tcg_gen_movi_tl(cpu_reserve_length, memop_size(memop)); tcg_gen_mov_tl(cpu_reserve_val, gpr); tcg_gen_mb(TCG_MO_ALL | TCG_BAR_LDAQ); } @@ -3700,6 +3706,7 @@ static void gen_conditional_store(DisasContext *ctx, = MemOp memop) gen_set_access_type(ctx, ACCESS_RES); gen_addr_reg_index(ctx, t0); tcg_gen_brcond_tl(TCG_COND_NE, t0, cpu_reserve, l1); + tcg_gen_brcondi_tl(TCG_COND_NE, cpu_reserve_length, memop_size(memop),= l1); =20 t0 =3D tcg_temp_new(); tcg_gen_atomic_cmpxchg_tl(t0, cpu_reserve, cpu_reserve_val, @@ -3766,6 +3773,7 @@ static void gen_lqarx(DisasContext *ctx) tcg_gen_extr_i128_i64(lo, hi, t16); =20 tcg_gen_mov_tl(cpu_reserve, EA); + tcg_gen_movi_tl(cpu_reserve_length, 16); tcg_gen_st_tl(hi, cpu_env, offsetof(CPUPPCState, reserve_val)); tcg_gen_st_tl(lo, cpu_env, offsetof(CPUPPCState, reserve_val2)); } @@ -3791,6 +3799,7 @@ static void gen_stqcx_(DisasContext *ctx) gen_addr_reg_index(ctx, EA); =20 tcg_gen_brcond_tl(TCG_COND_NE, EA, cpu_reserve, lab_fail); + tcg_gen_brcondi_tl(TCG_COND_NE, cpu_reserve_length, 16, lab_fail); =20 cmp =3D tcg_temp_new_i128(); val =3D tcg_temp_new_i128(); --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404176; cv=none; d=zohomail.com; s=zohoarc; b=SoRLqcbldOW0Ix6k+/yupOByOYpZyoSjZoLge0IyUmM3rSM4wohXbIo7OARLbz/8IiXey42o207Aki0YaG7Zzj0+ZziLA/vQuJXqe75JV7xg5xZq9GW6YiRjyh4t1d0dnMDL2sorqujNFeHAMtYLhtP98w4VutT6bXbBLQbXkrc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404176; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=2BanqkVFMg9yncGo4DeOmhBFlNLXn/JOVG8Bvg2cvUk=; b=PJ0L2UqNKIKOZ8PNye8ybjtW000zwZJeVP+7MHYG4CwPDYsc/7notKrG2m1U52Nc7rGD0OD1QcDeCzG6LRYEWPrOmv2WNuFjDedLMVoh41Xt59UO6bNtkrey0Kuido6vhLlp1+/zA3DI8UHaMTdlXfTPiZXFETtvJzhY+1vsGHk= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 168640417689744.1261407904268; Sat, 10 Jun 2023 06:36:16 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yht-0004zs-01; Sat, 10 Jun 2023 09:32:41 -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 1q7yhp-0004x9-06; Sat, 10 Jun 2023 09:32:38 -0400 Received: from mail-oi1-x234.google.com ([2607:f8b0:4864:20::234]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhn-0007hn-Ew; Sat, 10 Jun 2023 09:32:36 -0400 Received: by mail-oi1-x234.google.com with SMTP id 5614622812f47-38e04d1b2b4so1145056b6e.3; Sat, 10 Jun 2023 06:32:34 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403954; x=1688995954; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=2BanqkVFMg9yncGo4DeOmhBFlNLXn/JOVG8Bvg2cvUk=; b=qt9MIuFDxZA39H8QgEh2JNA5vPBfIlo9mH9qpcIpd1OJsvb5+FBPhksuY2MVBjX+KD YYyAaRaYZ7X2j3xQGwVwDfvc/zTBvXxeqpkBDFNZPmhBl42p2+6dLWXODp51SuxUrEhI w9cHvZb0/4jzCgDpHmSB1gTS6+Sbdd8wa2bQjISQPwHMwA2EWsJGaw7M/zhNY93xBRg/ plQAM9B6zlNPJJ76A/m9haSFUjSHHFgbeXx5wvY4uKUrvNJlRy3JQXQArh4WwrmnTluz GCKbfNJAG4PECrL40Whr4at6rFyEj3Dpjn9JGQD0IAdlfBjpPOba5NztpYKyTws9Sy9k Lm4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403954; x=1688995954; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=2BanqkVFMg9yncGo4DeOmhBFlNLXn/JOVG8Bvg2cvUk=; b=Ecs1kCSDGta9I7++lCKURw0o7v55vS68+UdDHNiK5svZllUVYYPKSL0VrH2MP5UBS5 nmPnTsVhIdwhyN+/PQln0wrIf73e+77Jhn9zf26x0slW9Nr5HGx8KiM5CSsLCSMS2euu AnvIR40CQa84pGClEeI/xUwJG9gccIoESooI1GBq9P85WMAUttJm5+Wo1MP2id1s3AoM 7e6HoFltwjFiIE3xbrN2K+sEK+oPVRJeDRLZuxrKHDam7RHdPcy+aOjbC74uydKP1dFD 1oD6xFOWmLLB4qweMzJ77fXstzQHY8TY6TRoxn64gXN2K9bMwqDV0snDH1M09vqlHnPE +fgw== X-Gm-Message-State: AC+VfDwEf0KtqFqPUoGcvMq/ZW/W7T+3eTX9ZaoCodrRelXUvw+9JF6N WTO5KC8phlqVy7izzplqhnT7hKZrtWA= X-Google-Smtp-Source: ACHHUZ46KQVrp4FTwJ25sW4Q4oRYDn+CvNiAolPjCHzQy6iavgGaUEZQcdzkq2ypOdnd0O2lA0DdPA== X-Received: by 2002:a05:6808:1382:b0:398:4465:ed25 with SMTP id c2-20020a056808138200b003984465ed25mr1206368oiw.37.1686403953735; Sat, 10 Jun 2023 06:32:33 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Nicholas Piggin Subject: [PULL 22/29] target/ppc: Remove larx/stcx. memory barrier semantics Date: Sat, 10 Jun 2023 10:31:25 -0300 Message-Id: <20230610133132.290703-23-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::234; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x234.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404177209100005 Content-Type: text/plain; charset="utf-8" From: Nicholas Piggin larx and stcx. are not defined to order any memory operations. Remove the barriers. Reviewed-by: Richard Henderson Signed-off-by: Nicholas Piggin Message-Id: <20230605025445.161932-3-npiggin@gmail.com> Signed-off-by: Daniel Henrique Barboza --- target/ppc/translate.c | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/target/ppc/translate.c b/target/ppc/translate.c index cf0bd79b8c..cb4764476d 100644 --- a/target/ppc/translate.c +++ b/target/ppc/translate.c @@ -3476,7 +3476,6 @@ static void gen_load_locked(DisasContext *ctx, MemOp = memop) tcg_gen_mov_tl(cpu_reserve, t0); tcg_gen_movi_tl(cpu_reserve_length, memop_size(memop)); tcg_gen_mov_tl(cpu_reserve_val, gpr); - tcg_gen_mb(TCG_MO_ALL | TCG_BAR_LDAQ); } =20 #define LARX(name, memop) \ @@ -3720,11 +3719,6 @@ static void gen_conditional_store(DisasContext *ctx,= MemOp memop) =20 gen_set_label(l1); =20 - /* - * Address mismatch implies failure. But we still need to provide - * the memory barrier semantics of the instruction. - */ - tcg_gen_mb(TCG_MO_ALL | TCG_BAR_STRL); tcg_gen_trunc_tl_i32(cpu_crf[0], cpu_so); =20 gen_set_label(l2); @@ -3828,11 +3822,6 @@ static void gen_stqcx_(DisasContext *ctx) tcg_gen_br(lab_over); gen_set_label(lab_fail); =20 - /* - * Address mismatch implies failure. But we still need to provide - * the memory barrier semantics of the instruction. - */ - tcg_gen_mb(TCG_MO_ALL | TCG_BAR_STRL); tcg_gen_trunc_tl_i32(cpu_crf[0], cpu_so); =20 gen_set_label(lab_over); --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404486; cv=none; d=zohomail.com; s=zohoarc; b=QdZ/tCrLSo+YKhVhUEd2/by2dstQ7UIvO2BJnq5viN9olw2cvEKj1XA+P61b1dO7skAMf/+YbbiDbilfq6iRKrXeT7FrD83bCUL5fcB+gH/LDPNNTnbrFLqTULeu2/Lb/i0e1DfAHD53ingNkDOm11r3olgvPF1xv+JK38Hul6g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404486; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=k+7oAorQ1Z1ak76G2OtdFjXYKO/F4M1/6MSXnn6fP7g=; b=hFkeRAKuBFy5n4DCCkQIkHaUrcD16GmWvHN1e0Vy8RTpUlTYRR4DFOtgQ99yBtFAlHwuGdn8xjMekyiIQ52lBPKbDZvbAuGUI8Hqgpe0lg07Ik45AVT3wBChpJ/n6PiMIphcmfE9RkqvOT1bQ1oFcVAO2IguJHxhlWE/wsPAcaw= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404486482992.724960547057; Sat, 10 Jun 2023 06:41:26 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhu-000510-Cb; Sat, 10 Jun 2023 09:32:42 -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 1q7yhs-0004zc-Fg; Sat, 10 Jun 2023 09:32:40 -0400 Received: from mail-oi1-x235.google.com ([2607:f8b0:4864:20::235]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhq-0007i4-Jh; Sat, 10 Jun 2023 09:32:40 -0400 Received: by mail-oi1-x235.google.com with SMTP id 5614622812f47-392116b8f31so1084325b6e.2; Sat, 10 Jun 2023 06:32:37 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403956; x=1688995956; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=k+7oAorQ1Z1ak76G2OtdFjXYKO/F4M1/6MSXnn6fP7g=; b=r4l4a8aPOj2H6l3xfCOoxrsRrXpfrXIorRlFYPgNiFQwlkSr8U54Yzf3u9wJa1szEz +7/GBOzhWv+rX/8/ADWbC/9moBkC+SCZ4YWuyaByC6tFxsACG2HWXFONRaB/RGg7vfNw J6y6JGI2+kAgkkVXj5OyAC33sXwEho4bX3Wcwo25NqpDczh+fHPH1FY6FF7Ae6xngfv9 B6x4AVhkgIo+PXQpL6gLP2TpHoE+5TnLsRbkl3gqdxDBwWAkzoQpWDSykWvEnMfRTvy5 6CCLpzE6DqDXfpmNdYOMpPCCqpN1Pg907n9ATyW3kNrb2BIQ4SMtI3wnZuWcK/qqJ5yE cmew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403956; x=1688995956; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=k+7oAorQ1Z1ak76G2OtdFjXYKO/F4M1/6MSXnn6fP7g=; b=J5RP0NJFD+HYWfoQJwozF+R49jgQ73gy8XwPJbQQpRWf3FHyZnuxcrbzIUdG+PWEeb G8aYmfGsaD0M5gUmTse4gOnYw3fSlUxdRO9hnpcMfzxXLL33SWsO4Q0RIKpfOtWzJ6B2 /DgxlaM5TJTmFQdesIxkXD4PTW15GeP10kgqp35JYIgoUKvqROfhkZ6O9W9Oo9g58Hms Sgw4hlSvvKV1AJX3xCLmynbHan3Rjre1lxMAtoy7xIbohGK/EuG/Z2DGjjqTzXmQhpiV v0Aj2CiF0zA9tiJaz3UV12NBQ8xKHRldVVGcD4a+EepmT0b4FTv9qsbHatW50pSubKHo +6Qg== X-Gm-Message-State: AC+VfDxclBps8Yx2JNpOcpaesRdjs1yeYUoeobFKocavrllMW8jP2dZ/ 0KfgYQVoK7FDqqv6ZHjOAJiZ+2tiR9s= X-Google-Smtp-Source: ACHHUZ696cKkOuB4/P8WoGhlpU44GBkszdPTuENl1wZiLLJ5a8V7qJTsbLHCIRO4uM92XeqmwsAXuw== X-Received: by 2002:a05:6808:1b06:b0:39a:be57:964b with SMTP id bx6-20020a0568081b0600b0039abe57964bmr1142945oib.13.1686403955810; Sat, 10 Jun 2023 06:32:35 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Nicholas Piggin Subject: [PULL 23/29] target/ppc: Rework store conditional to avoid branch Date: Sat, 10 Jun 2023 10:31:26 -0300 Message-Id: <20230610133132.290703-24-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::235; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x235.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404487574100001 Content-Type: text/plain; charset="utf-8" From: Nicholas Piggin Rework store conditional to avoid a branch in the success case. Change some of the variable names and layout while here so gen_conditional_store more closely matches gen_stqcx_. Reviewed-by: Richard Henderson Signed-off-by: Nicholas Piggin Message-Id: <20230605025445.161932-4-npiggin@gmail.com> Signed-off-by: Daniel Henrique Barboza --- target/ppc/translate.c | 63 ++++++++++++++++++++---------------------- 1 file changed, 30 insertions(+), 33 deletions(-) diff --git a/target/ppc/translate.c b/target/ppc/translate.c index cb4764476d..b591f2e496 100644 --- a/target/ppc/translate.c +++ b/target/ppc/translate.c @@ -3697,31 +3697,32 @@ static void gen_stdat(DisasContext *ctx) =20 static void gen_conditional_store(DisasContext *ctx, MemOp memop) { - TCGLabel *l1 =3D gen_new_label(); - TCGLabel *l2 =3D gen_new_label(); - TCGv t0 =3D tcg_temp_new(); - int reg =3D rS(ctx->opcode); + TCGLabel *lfail; + TCGv EA; + TCGv cr0; + TCGv t0; + int rs =3D rS(ctx->opcode); =20 + lfail =3D gen_new_label(); + EA =3D tcg_temp_new(); + cr0 =3D tcg_temp_new(); + t0 =3D tcg_temp_new(); + + tcg_gen_mov_tl(cr0, cpu_so); gen_set_access_type(ctx, ACCESS_RES); - gen_addr_reg_index(ctx, t0); - tcg_gen_brcond_tl(TCG_COND_NE, t0, cpu_reserve, l1); - tcg_gen_brcondi_tl(TCG_COND_NE, cpu_reserve_length, memop_size(memop),= l1); + gen_addr_reg_index(ctx, EA); + tcg_gen_brcond_tl(TCG_COND_NE, EA, cpu_reserve, lfail); + tcg_gen_brcondi_tl(TCG_COND_NE, cpu_reserve_length, memop_size(memop),= lfail); =20 - t0 =3D tcg_temp_new(); tcg_gen_atomic_cmpxchg_tl(t0, cpu_reserve, cpu_reserve_val, - cpu_gpr[reg], ctx->mem_idx, + cpu_gpr[rs], ctx->mem_idx, DEF_MEMOP(memop) | MO_ALIGN); tcg_gen_setcond_tl(TCG_COND_EQ, t0, t0, cpu_reserve_val); tcg_gen_shli_tl(t0, t0, CRF_EQ_BIT); - tcg_gen_or_tl(t0, t0, cpu_so); - tcg_gen_trunc_tl_i32(cpu_crf[0], t0); - tcg_gen_br(l2); + tcg_gen_or_tl(cr0, cr0, t0); =20 - gen_set_label(l1); - - tcg_gen_trunc_tl_i32(cpu_crf[0], cpu_so); - - gen_set_label(l2); + gen_set_label(lfail); + tcg_gen_trunc_tl_i32(cpu_crf[0], cr0); tcg_gen_movi_tl(cpu_reserve, -1); } =20 @@ -3775,25 +3776,26 @@ static void gen_lqarx(DisasContext *ctx) /* stqcx. */ static void gen_stqcx_(DisasContext *ctx) { - TCGLabel *lab_fail, *lab_over; - int rs =3D rS(ctx->opcode); + TCGLabel *lfail; TCGv EA, t0, t1; + TCGv cr0; TCGv_i128 cmp, val; + int rs =3D rS(ctx->opcode); =20 if (unlikely(rs & 1)) { gen_inval_exception(ctx, POWERPC_EXCP_INVAL_INVAL); return; } =20 - lab_fail =3D gen_new_label(); - lab_over =3D gen_new_label(); + lfail =3D gen_new_label(); + EA =3D tcg_temp_new(); + cr0 =3D tcg_temp_new(); =20 + tcg_gen_mov_tl(cr0, cpu_so); gen_set_access_type(ctx, ACCESS_RES); - EA =3D tcg_temp_new(); gen_addr_reg_index(ctx, EA); - - tcg_gen_brcond_tl(TCG_COND_NE, EA, cpu_reserve, lab_fail); - tcg_gen_brcondi_tl(TCG_COND_NE, cpu_reserve_length, 16, lab_fail); + tcg_gen_brcond_tl(TCG_COND_NE, EA, cpu_reserve, lfail); + tcg_gen_brcondi_tl(TCG_COND_NE, cpu_reserve_length, 16, lfail); =20 cmp =3D tcg_temp_new_i128(); val =3D tcg_temp_new_i128(); @@ -3816,15 +3818,10 @@ static void gen_stqcx_(DisasContext *ctx) =20 tcg_gen_setcondi_tl(TCG_COND_EQ, t0, t0, 0); tcg_gen_shli_tl(t0, t0, CRF_EQ_BIT); - tcg_gen_or_tl(t0, t0, cpu_so); - tcg_gen_trunc_tl_i32(cpu_crf[0], t0); - - tcg_gen_br(lab_over); - gen_set_label(lab_fail); - - tcg_gen_trunc_tl_i32(cpu_crf[0], cpu_so); + tcg_gen_or_tl(cr0, cr0, t0); =20 - gen_set_label(lab_over); + gen_set_label(lfail); + tcg_gen_trunc_tl_i32(cpu_crf[0], cr0); tcg_gen_movi_tl(cpu_reserve, -1); } #endif /* defined(TARGET_PPC64) */ --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404175; cv=none; d=zohomail.com; s=zohoarc; b=XAbHj/ygtatG9+2gMGQyIgazgxlTzHhoRjCLd0WPR1Ecs6EWV6G+xPEztmXY4dfrFnoVApkY3XaMZHIfg9zejgwCexVnQBVvqlWe7IODzmCuYcjYUFaRaPcIb4O+Ma0ZDcyWc7FC7TcTKlry9a6AF3eB/IJjB+eisnBLkNqoz5Y= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404175; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=SS5SIfljW2U2tVVAfvgmmyBDLj4jl1IRKgCv7ghd2sE=; b=JdB6xcN9lQn9pOr8ywgtIR1kSA99fwWfgUL5o5KXh/quZO2ZGRMRIbKfiG2q43NyoOuKFJ1KX7GH8yXu0iimsRlURzJifvYCFVNUN81fGfxZDsW2R8jb6OHBhk5KGjFSfEQwUkAVKI2hNy15ZnM8C4tbg+rG4Cuxj8BMcR5BhZo= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404175636771.0809234018576; Sat, 10 Jun 2023 06:36:15 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhv-00051W-93; Sat, 10 Jun 2023 09:32:43 -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 1q7yhu-00050z-A8; Sat, 10 Jun 2023 09:32:42 -0400 Received: from mail-oi1-x235.google.com ([2607:f8b0:4864:20::235]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhs-0007iC-QR; Sat, 10 Jun 2023 09:32:42 -0400 Received: by mail-oi1-x235.google.com with SMTP id 5614622812f47-39a3f26688bso1143922b6e.2; Sat, 10 Jun 2023 06:32:40 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403959; x=1688995959; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=SS5SIfljW2U2tVVAfvgmmyBDLj4jl1IRKgCv7ghd2sE=; b=GqC63v0Cleyj0uC30954lkiVnCDyMf622HuZL2lCQPJ2Bw8WOPd0jQDMcsGCvAacz0 rfUcFM047O30Ss9+mLp9XJzGLVxHtNnHzVp8OPCh4is8e1s9Knoxg2mVEXwfGb6TSDtU sP/5iqBeZx9Ju6OXthkTB3UxziPMmA3vc1zu31pCb4xoMwT+UnPVlL52qGQoaYTXLobJ Tn60xgLQWwvk6yYL0hQlFhMb8fQUp9Z1mzcGks4EWlnifJ6P12QVQoKrPOolLskSHCIC XjGfXw0GYO1puMbuZz+i3Ctks1+k6sZ4/GrN6v1zZyHyS9pAkEqWJtPnKQhZGxdkiCw1 ZaRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403959; x=1688995959; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SS5SIfljW2U2tVVAfvgmmyBDLj4jl1IRKgCv7ghd2sE=; b=ZwEJx+dKpHNYSVd3iupGm7lcdOwKhGlTy5rwQByyZefIkoCqXfv+6w6FXPuAqJGDY/ doppCak/fi6WhvPLxs6MNGBMSQN6oNH9FwE6iVELy38MFLMlbua7nATEj4VlGmPCMJ6/ RPodP4q7cWR8TZuxnTkEo+OE3E3Mgu+Wa9RCUHa6tiIue/CypRCeDM4BFf/M+3LbY792 UkjGrP4xnfsNQlSVGCGTbx7x48eC4ech23XcPPYi3UzJGS6zyb3Yga+VAvBFY6z0cOkZ puJciZcQF2wvELsb5pRJAzHeXPfGfLTUEUE3svbE5SBQEiv15x4E0VIUrXHaQF1k6a+z L+fQ== X-Gm-Message-State: AC+VfDyVtbF56WcBaSsy5H1ZTMZKejdf7vNSvUO5L57WduIDw3kq98HH LRX1VL2++OGVohXWCYgjoQ3dGpq0uXk= X-Google-Smtp-Source: ACHHUZ6ekPdWo9t6jYNKI4ta9jeqVdzXeDCZkq9Plfirz8nYr3pFXKTrNKnRjBveXc9gkRoUJzbooQ== X-Received: by 2002:a05:6808:14c5:b0:39a:c41d:fb30 with SMTP id f5-20020a05680814c500b0039ac41dfb30mr999967oiw.39.1686403959020; Sat, 10 Jun 2023 06:32:39 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Nicholas Piggin , sdicaro@DDCI.com Subject: [PULL 24/29] target/ppc: Fix decrementer time underflow and infinite timer loop Date: Sat, 10 Jun 2023 10:31:27 -0300 Message-Id: <20230610133132.290703-25-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::235; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x235.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404177187100003 Content-Type: text/plain; charset="utf-8" From: Nicholas Piggin It is possible to store a very large value to the decrementer that it does not raise the decrementer exception so the timer is scheduled, but the next time value wraps and is treated as in the past. This can occur if (u64)-1 is stored on a zero-triggered exception, or (u64)-1 is stored twice on an underflow-triggered exception, for example. If such a value is set in DECAR, it gets stored to the decrementer by the timer function, which then immediately causes another timer, which hangs QEMU. Clamp the decrementer to the implemented width, and use that as the value for the timer calculation, effectively preventing this overflow. Reported-by: sdicaro@DDCI.com Signed-off-by: Nicholas Piggin Reviewed-by: Daniel Henrique Barboza Message-Id: <20230530131214.373524-1-npiggin@gmail.com> Signed-off-by: Daniel Henrique Barboza --- hw/ppc/ppc.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/ppc/ppc.c b/hw/ppc/ppc.c index 4e816c68c7..d80b0adc6c 100644 --- a/hw/ppc/ppc.c +++ b/hw/ppc/ppc.c @@ -798,6 +798,8 @@ static void __cpu_ppc_store_decr(PowerPCCPU *cpu, uint6= 4_t *nextp, int64_t signed_decr; =20 /* Truncate value to decr_width and sign extend for simplicity */ + value =3D extract64(value, 0, nr_bits); + decr =3D extract64(decr, 0, nr_bits); signed_value =3D sextract64(value, 0, nr_bits); signed_decr =3D sextract64(decr, 0, nr_bits); =20 --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404101; cv=none; d=zohomail.com; s=zohoarc; b=HSOxj/B96Ds8U7XjQT1WQ2eYoYRU+Tu65lA3F3qhriWkCnHSzWrMvwpdc/Wvq4n76/V06bzZlUifunlrrTAAQgVYN6+i3RSPp5jDjXmYATSk1rib4xByjfTSoTi8xprtGe+6DEE99srxmcoMVRaSKFOrRTmU0xpQdIkI7/H+sBE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404101; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=UBgWfsi2CiBVVjPTHqCM9PgrPqB1QcurXMTBVR1Eyak=; b=HVpKK8GzXMz9BYgtXr3NYcVUIHuVDKmpS6ComXAmw0ooF+8v5oSsqoIWkwmqVhlwJrDzkkcrTIxkEs+r9i4wtmkUQwnKMI3bqmJEqZec6VUxhdHLAxDlLYu3E9WLlc9BIujhjb9qVR1mrxBXasBbpuN8IXaIwWyFYghgS02qXEM= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404101509668.4736477373951; Sat, 10 Jun 2023 06:35:01 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yhy-00055A-N3; Sat, 10 Jun 2023 09:32:46 -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 1q7yhw-00052Q-Tw; Sat, 10 Jun 2023 09:32:44 -0400 Received: from mail-oi1-x22b.google.com ([2607:f8b0:4864:20::22b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhv-0007iU-Aj; Sat, 10 Jun 2023 09:32:44 -0400 Received: by mail-oi1-x22b.google.com with SMTP id 5614622812f47-39a523e8209so1095669b6e.0; Sat, 10 Jun 2023 06:32:42 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403962; x=1688995962; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=UBgWfsi2CiBVVjPTHqCM9PgrPqB1QcurXMTBVR1Eyak=; b=CBJNHDunaC7/e352mHsjqXB8jz3egy/6Ty1dT8ensvtTnfd7vXUYyH2Gg+2cJqKTsh QJveTAZNbkK2VAVnJ5FAYB2nwxln4y+XvMr4SdDbRhMbulPC6G45KxBqu+ajyuuJ9Z62 wpRzyPMf9uyoBPknRmF8Imyhl+b8YlCahHTnrGDX7oGA9O5xo1lR8QOKNTVKV3rv0mT3 2V8e9EB8Mt4lQGLacrD4kJa0w+YN4A7TeSmQoLILmW2xbFSfpkaeK7IigBHYPT+euxkN m70qiSyEmWE9sV2npc6eQskdtWfmUcbBBDprhps/gHvZtR0hsCZwRF5z8zsT4wNg3kTj xb5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403962; x=1688995962; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UBgWfsi2CiBVVjPTHqCM9PgrPqB1QcurXMTBVR1Eyak=; b=StzIDozcIHwHj02G0QZHGFB2sVGbXiReKd5do5vcr2TxvY8o5WaN6o4H4lqPZiR3Wz WqgQS5uQh1ByuHhKWPfzxLVfLbFl1dzXAAQer0WtNxjLmuU+LasNQEtmMCdpDlT23YGT eKtmKCvB84XrjfbOp2rkht9YJVABaPxMadRNL7Y1bVainiIKArTrxV50IdDZsv3TeauW lGAzS/bncn9Vso7qXFxUAN39wG3FRpViBMMbp4nq2UVQ1euS4CXpUg+G/VULZjCheeOv Kd6BjD88c0SdpNizt3jmk6BbNBI0uznFGZo1P+2WY92iFL79D/wgaDg2e1QV6jDptwdw 8p6g== X-Gm-Message-State: AC+VfDyFABBfQx/6/jYUDXfCXUIZxOJwf8z9FcSI/MRvp+hiZYr6mr3y LqXnjNE6/zUYkN7VeC1RFh5q8lakD84= X-Google-Smtp-Source: ACHHUZ6v7XdYjHbJjIzR+Gs70bm8UF98zZR8wVwcsGcy2DQ3YkFjle/AJVcvSyqo953yak1MLNnG1g== X-Received: by 2002:a05:6808:2215:b0:39a:53c7:21cd with SMTP id bd21-20020a056808221500b0039a53c721cdmr1062104oib.35.1686403961797; Sat, 10 Jun 2023 06:32:41 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Nicholas Piggin , sdicaro@DDCI.com Subject: [PULL 25/29] target/ppc: Decrementer fix BookE semantics Date: Sat, 10 Jun 2023 10:31:28 -0300 Message-Id: <20230610133132.290703-26-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::22b; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x22b.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404103020100003 Content-Type: text/plain; charset="utf-8" From: Nicholas Piggin The decrementer store function has logic that short-cuts the timer if a very small value is stored (0, 1, or 2) and raises an interrupt directly. There are two problem with this on BookE. First is that BookE says a decrementer interrupt should not be raised on a store of 0, only of a decrement from 1. Second is that raising the irq directly will bypass the auto-reload logic in the booke decr timer function, breaking autoreload when 1 or 2 is stored. Fix this by removing that small-value special case. It makes this tricky logic even more difficult to reason about, and it hardly matters for performance. Cc: sdicaro@DDCI.com Signed-off-by: Nicholas Piggin Reviewed-by: Daniel Henrique Barboza Message-Id: <20230530131214.373524-2-npiggin@gmail.com> Signed-off-by: Daniel Henrique Barboza --- hw/ppc/ppc.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/hw/ppc/ppc.c b/hw/ppc/ppc.c index d80b0adc6c..1b1220c423 100644 --- a/hw/ppc/ppc.c +++ b/hw/ppc/ppc.c @@ -811,11 +811,7 @@ static void __cpu_ppc_store_decr(PowerPCCPU *cpu, uint= 64_t *nextp, } =20 /* - * Going from 2 -> 1, 1 -> 0 or 0 -> -1 is the event to generate a DEC - * interrupt. - * - * If we get a really small DEC value, we can assume that by the time = we - * handled it we should inject an interrupt already. + * Going from 1 -> 0 or 0 -> -1 is the event to generate a DEC interru= pt. * * On MSB level based DEC implementations the MSB always means the int= errupt * is pending, so raise it on those. @@ -823,8 +819,7 @@ static void __cpu_ppc_store_decr(PowerPCCPU *cpu, uint6= 4_t *nextp, * On MSB edge based DEC implementations the MSB going from 0 -> 1 tri= ggers * an edge interrupt, so raise it here too. */ - if ((value < 3) || - ((tb_env->flags & PPC_DECR_UNDERFLOW_LEVEL) && signed_value < 0) || + if (((tb_env->flags & PPC_DECR_UNDERFLOW_LEVEL) && signed_value < 0) || ((tb_env->flags & PPC_DECR_UNDERFLOW_TRIGGERED) && signed_value < 0 && signed_decr >=3D 0)) { (*raise_excp)(cpu); --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404040; cv=none; d=zohomail.com; s=zohoarc; b=I28gvcTl8E1PcEcUZHHha4gFBVfhNJ7Pb7+q7QI58SSHyyQLJYxU65MRLgCB5pz21dhAQIiBe0BBCfgHR3AH+2f50dpfcf7IeDplpdP1dy4UxuHcNWN+oRmmdcJT5yDttxSVEM9ZMZfHYdLxZ9oe7/6N4wSC+fXcb1z2jrWkMDQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404040; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=YRT8QKCy67KWSILed1UYE9t0uEVbDDHAYQXTtdnc0h0=; b=gN72iFW7/QGDISKKxJYHhQHTmvOl6ASjBCch4k+26HCxKUFPOh96wGuoBb3ELFVi1e/PxnMvI2BW4oH0bNchGRm9RA80ob6PCQjDdjL8ZV6e+WTRGhGLhX74QE/nRMT6Z8fr0uzSQQyEdao05xervMYIgbQmAiBQDKauvZarYYg= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 16864040403101015.7358307617084; Sat, 10 Jun 2023 06:34:00 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yi2-00058g-GH; Sat, 10 Jun 2023 09:32:50 -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 1q7yhz-000571-Ud; Sat, 10 Jun 2023 09:32:48 -0400 Received: from mail-oi1-x22c.google.com ([2607:f8b0:4864:20::22c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yhy-0007ij-Bl; Sat, 10 Jun 2023 09:32:47 -0400 Received: by mail-oi1-x22c.google.com with SMTP id 5614622812f47-39a3f26688bso1144015b6e.2; Sat, 10 Jun 2023 06:32:45 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403964; x=1688995964; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=YRT8QKCy67KWSILed1UYE9t0uEVbDDHAYQXTtdnc0h0=; b=ZjjODe9s3B6mT3aQhKf++4fdjHwFS93M89FkMEqcSxtIz+Am+5NfkdAxzVbgaP6LYH GEpmrbUp5jzcIsIgKplH22sfTRluNDU1VQGxKojxU4tjhTEvC3mG1fVaRoBWfVmYp851 w1Tw3H1Vbx0V5+waOOeBvuugwbEPyfJ04ZZq9JvPiBHA+DTvYVI8E/gXP29c5IF/DEQp HY4ZlL+Jo39iScibOLSHMUXkV0XaUP1sWAIT+Zg/sRopURJi7RsQiwXaapFa/CRZ7i2W iXALe/bkapKhwwcKWWltS/2hY1c05cN4mP9mCLoS3gUF3slKqBCtzcvkQiStcoOHFkiV UfCw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403964; x=1688995964; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=YRT8QKCy67KWSILed1UYE9t0uEVbDDHAYQXTtdnc0h0=; b=ejbZTLDzhmIWlv6dEsJIzlWMtKo9bOmKDkqp70xBIoyvD6lFY/1ALCHC66gfPHzH+F ZAZz2QLAICG805LlbHC7PxnsnIY60S+TGi8I/UswCmbqEs0j6MWvXGe5Eg/IkjataPLj yw0ItBGq4upDU1jLsnTi48t9GSWeG4Ey666v+8SD0l+xjmkE/t6jv0BiHNAXa9YgqX4e SyEkT6sF1WivMTQpwmof00gzZtLaPahhBO3xldyDf6TikGk9OFWTiCvfYv9cneGbujuy cHDERb6VRxLGqnB7uyFkRYnws4++wchWzp3nvvqj4cOjRy+m739Eg7hfe9f7+IGfSq7Z dHJA== X-Gm-Message-State: AC+VfDyW+EKza88mMB8erQA1UGkIiQQHThVVLpeBM5d4UWZtsrTqaiWA +Wl7937ZNHzA4kEfpY91TODVETJmmXQ= X-Google-Smtp-Source: ACHHUZ6SmjaT/75msv/f3vS49KCbrA7OnH7wmTW60HBWc7y2gPy/pBf5e7xUjXulhSVwfdCcOqg6Mg== X-Received: by 2002:a05:6808:1281:b0:39a:ba14:3140 with SMTP id a1-20020a056808128100b0039aba143140mr1152127oiw.25.1686403964410; Sat, 10 Jun 2023 06:32:44 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Mark Cave-Ayland Subject: [PULL 26/29] hw/ppc/openpic: Do not open-code ROUND_UP() macro Date: Sat, 10 Jun 2023 10:31:29 -0300 Message-Id: <20230610133132.290703-27-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::22c; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x22c.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404041913100002 From: Philippe Mathieu-Daud=C3=A9 While reviewing, the ROUND_UP() macro is easier to figure out. Besides, the comment confirms we want to round up here. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson Reviewed-by: Mark Cave-Ayland Message-Id: <20230523061546.49031-1-philmd@linaro.org> Signed-off-by: Daniel Henrique Barboza --- include/hw/ppc/openpic.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/hw/ppc/openpic.h b/include/hw/ppc/openpic.h index ebdaf8a493..bae8dafe16 100644 --- a/include/hw/ppc/openpic.h +++ b/include/hw/ppc/openpic.h @@ -55,7 +55,7 @@ typedef enum IRQType { * Round up to the nearest 64 IRQs so that the queue length * won't change when moving between 32 and 64 bit hosts. */ -#define IRQQUEUE_SIZE_BITS ((OPENPIC_MAX_IRQ + 63) & ~63) +#define IRQQUEUE_SIZE_BITS ROUND_UP(OPENPIC_MAX_IRQ, 64) =20 typedef struct IRQQueue { unsigned long *queue; --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404078; cv=none; d=zohomail.com; s=zohoarc; b=GvoMmBzgONDSZtXaJcjUVgySZLjF9nVX2TvhPuDu1dy9X/1IbGZVMpBzARxDT+zAPzeQVGl3TCZxLw3Kk7owe1rEo7NGE4wiy+mhL+7td4+7fByn3KuYo+3WFJTc47+aIuWQG3IB/2PRbRfm3h4K/w88vrFnpXGlRdMKOlIhZx8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404078; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=oCMxM0s80e3nqNvS0gBoQGxCi+E1uH3byLDTSuvXq34=; b=GjLVu67NFRaHJs0Sov/wsN61VQc2cHJTCdCYq2oFi9avXIVBdXrIsU9b/agbbCdpcSA0yxechdhkQzawBz/Zzpd/ZYaG16qsMGBT8dTVa0kbc9Ib9dapiwQ4gwkh2n5lvYx42+p34ShTXH6rR4bdaw8dilYxpnFKngVDY3+PZAg= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404078719753.2887099121276; Sat, 10 Jun 2023 06:34:38 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yi3-00059h-QN; Sat, 10 Jun 2023 09:32:51 -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 1q7yi2-00058j-Gj; Sat, 10 Jun 2023 09:32:50 -0400 Received: from mail-oi1-x22d.google.com ([2607:f8b0:4864:20::22d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yi0-0007jB-Vu; Sat, 10 Jun 2023 09:32:50 -0400 Received: by mail-oi1-x22d.google.com with SMTP id 5614622812f47-38c35975545so1272911b6e.1; Sat, 10 Jun 2023 06:32:48 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403967; x=1688995967; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=oCMxM0s80e3nqNvS0gBoQGxCi+E1uH3byLDTSuvXq34=; b=U8VNKp3u/kGBWQT4YK5w2dALgZczIZU2g3ijhBOFPVUK0bGH7Qhr4feWJBSG6gsOzS M4HFSLTiI0MRSYVgzd7q44C9FrFhF5OI2Y14hSNeUUYfPECQQ/zkssyB+T/xozJv9P1s quLzKO7upa615SvMwJ42TjGKWF8KHAll+CpGCBqTptICSNbwIyGTL7JYyAVeUDNZWYM3 7sjhnhmmCFkiPKyU1uxm6KLTmv3jaeW3nlM5gq/OqpW6tJih7l4ZyjFt24Y1fPS62R3x yQfppoZp5hYTGHaIMBsZsYkOLOeYZl25KfBN0cpOCE3IN1pBQDleLrxlXs+GrUQ/oAA4 5VEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403967; x=1688995967; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=oCMxM0s80e3nqNvS0gBoQGxCi+E1uH3byLDTSuvXq34=; b=WWVbPsETX30LV2GS3fSq6X9QMaPxq8x+R9vTuZ+ABSt2fg63r0yyp9mbWbDsVK+3Jf rr89OnHXxcimGgeLk/xRKU36Rm+sKC7rJvxc5hlE+OZfeso/NuklpQTfT4tQhepCwlIc DiXTCm82nZTWjvbguBN7ncx3Lzx965M27hGsfBXW2MeM5S/y5sygYGSyF3lQFXA/w+UY 2yGJI1R9Ac7wbiHpIh6eRHK/geammaXpDMLsnTypwTQ63WLGUDK1m/v9slbRp4mARUDV ZNyVwQfUZKnXrUrhZwUP9luTA/osJtBvd12FdAQTtF8Dz8X8bxGabSXbEWb16CYG2BjF nn1Q== X-Gm-Message-State: AC+VfDwkoUwpe3rTKRvUWVvxj6cIjY/iSgT3bCgWLm9JK7f6aLS/p+q9 KMFr9Jt1bnsMGyymo85oLaD5fcWLqpA= X-Google-Smtp-Source: ACHHUZ6+qyxAaEl3EiMrxjK88dDaAEUToQYfb7PhzM2Kn5usFCmRC92ToaeMV9JAbFQ+HZJCaG9WTg== X-Received: by 2002:a05:6808:190d:b0:398:bdb:956a with SMTP id bf13-20020a056808190d00b003980bdb956amr1173192oib.35.1686403967108; Sat, 10 Jun 2023 06:32:47 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Thomas Huth , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , =?UTF-8?q?Alex=20Benn=C3=A9e?= Subject: [PULL 27/29] tests/avocado/tuxrun_baselines: Fix ppc64 tests for binaries without slirp Date: Sat, 10 Jun 2023 10:31:30 -0300 Message-Id: <20230610133132.290703-28-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::22d; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x22d.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404079872100001 From: Thomas Huth The ppc64 tuxrun tests are currently failing if "slirp" has been disabled in the binary since they are using "-netdev user" now. We have to skip the test if this network backend is missing. Fixes: 6ee3624236 ("improve code coverage for ppc64") Signed-off-by: Thomas Huth Reviewed-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Daniel Henrique Barboza Acked-by: Alex Benn=C3=A9e Message-Id: <20230606192802.666000-1-thuth@redhat.com> Signed-off-by: Daniel Henrique Barboza --- tests/avocado/tuxrun_baselines.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/avocado/tuxrun_baselines.py b/tests/avocado/tuxrun_basel= ines.py index 3a46e7a745..e12250eabb 100644 --- a/tests/avocado/tuxrun_baselines.py +++ b/tests/avocado/tuxrun_baselines.py @@ -184,6 +184,7 @@ def common_tuxrun(self, =20 def ppc64_common_tuxrun(self, sums, prefix): # add device args to command line. + self.require_netdev('user') self.vm.add_args('-netdev', 'user,id=3Dvnet,hostfwd=3D:127.0.0.1:0= -:22', '-device', 'virtio-net,netdev=3Dvnet') self.vm.add_args('-netdev', '{"type":"user","id":"hostnet0"}', --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404433; cv=none; d=zohomail.com; s=zohoarc; b=cuGBck24Xz94LS9x1kaoOdYxP8ZY8Fo1+7GTpQVBRLwkqqjkZNixgioDy7ggKwMCT1XQOgV2o8KeKIZ95r/Rnhl9Y4EOuuuXMOHlYs06/8FiV4AMF7VAOoV+p36iKSX3Jnh0KJ/C4iF7pMG83+qWeSoN2IK3MMDixIECFXTCpTw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404433; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=+To2/YJ6TCkaBB4yMFK0NMzrQ35wgpmINRBjFlxrk0M=; b=SKN9xJOxe3F6tR5LtVaPr3Rkx9dxfaksJqWWQ/sCNBfpoosdEKbO/K4iLfgreZaEBtQvrp0JQKGlIZYk/Rti6jFX9tFe5/6doMjmCtFpsjxrc8axfgCL0NIyzPLywoUSoVRAmLTElttzXsSt5IP/iHVu/2bllf3EVq2u+3jjO/g= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404433243251.19043284876625; Sat, 10 Jun 2023 06:40:33 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yi5-0005CJ-Fv; Sat, 10 Jun 2023 09:32:53 -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 1q7yi4-0005BK-G4; Sat, 10 Jun 2023 09:32:52 -0400 Received: from mail-oi1-x230.google.com ([2607:f8b0:4864:20::230]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yi2-0007jN-TE; Sat, 10 Jun 2023 09:32:52 -0400 Received: by mail-oi1-x230.google.com with SMTP id 5614622812f47-39c77cf32deso1164280b6e.0; Sat, 10 Jun 2023 06:32:50 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403969; x=1688995969; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+To2/YJ6TCkaBB4yMFK0NMzrQ35wgpmINRBjFlxrk0M=; b=AXs/MSArX0Z3XqgXlulhjDnEE6B9SaJWBqKde18TvdvA6g1IP/gynahoEF3taBUwPy O2kss7NH7yDswWOHeVtxkin5xo3Zb/WDMQXCh5Hq6Ub5Is/hQtst3Px7Q/tbIk3BlVlG bJfbN3RUfCaZO2c42QG+76ME9oOMNQqOoWtv1cADv+SazBeDq9IvedVMQIekUtyll0sk 2px6bUVlpOVAaeI+i986ahMeEzU6ucnxr7VhTcpdeoDk+7hyGk4LVuABmlMdMt8TxR6y NV1JEtRT4BHQ4rs/6m0Ag3qg0JrkG2NbuGGHf87KZx/33SEABg+MbbMRCalW64RKf002 21NA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403969; x=1688995969; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+To2/YJ6TCkaBB4yMFK0NMzrQ35wgpmINRBjFlxrk0M=; b=dxUVHVrEhiHyTLEBna8WNcMUXkt06z+WrGMYSyNqxMEKEELX/1/NJEAnBujEAj10UA 7tpATK9IVxqHH+hXxm96L6mY3PoCvvXf74RxbFn3phQKaMle5SZdY3B1rzfIMwzsdGq7 6Oqw4gNN9dl6JtIaC2U/OzomEsppr4ejZcKdVoaz/yHHbFmz5D38Zku74rIoIHidswDU 1NckCOBXeK0kW6Mg77j2kLKXxakQNukPDVje5VIGY6UPf3Y6+n21bHEAoPrp866Na1Qb p3ylr7RhevriwEcUHwg/jOD2zuAcQtF6KI25V0Qzzx7WYrkhPeH97Z5gE2XwG4KN6/rN wK4A== X-Gm-Message-State: AC+VfDzIJBk5asxs69nEHAzkthjTqZKok85Z1jsiHhGad+xqpBSC8k87 3pwljB4VeyVwFGw/WFVVOPUHn3WE/64= X-Google-Smtp-Source: ACHHUZ5HyvTOdbAaxslG8tKjEkOGN5RfMVwWoxEqOs8YTEXyCPnq9ZIDosrkuRyGVWS57Z35J/Ibmw== X-Received: by 2002:a05:6808:220c:b0:39a:98bc:10e8 with SMTP id bd12-20020a056808220c00b0039a98bc10e8mr752420oib.28.1686403969383; Sat, 10 Jun 2023 06:32:49 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, BALATON Zoltan , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 28/29] target/ppc: Implement gathering irq statistics Date: Sat, 10 Jun 2023 10:31:31 -0300 Message-Id: <20230610133132.290703-29-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::230; envelope-from=danielhb413@gmail.com; helo=mail-oi1-x230.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404433513100001 From: BALATON Zoltan Count exceptions which can be queried with info irq monitor command. Signed-off-by: BALATON Zoltan Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20230606220200.7EBCC74635C@zero.eik.bme.hu> Signed-off-by: Daniel Henrique Barboza --- target/ppc/cpu.h | 1 + target/ppc/cpu_init.c | 18 ++++++++++++++++++ target/ppc/excp_helper.c | 1 + 3 files changed, 20 insertions(+) diff --git a/target/ppc/cpu.h b/target/ppc/cpu.h index 20508bac5e..0ee2adc105 100644 --- a/target/ppc/cpu.h +++ b/target/ppc/cpu.h @@ -1195,6 +1195,7 @@ struct CPUArchState { int error_code; uint32_t pending_interrupts; #if !defined(CONFIG_USER_ONLY) + uint64_t excp_stats[POWERPC_EXCP_NB]; /* * This is the IRQ controller, which is implementation dependent and o= nly * relevant when emulating a complete machine. Note that this isn't us= ed diff --git a/target/ppc/cpu_init.c b/target/ppc/cpu_init.c index d4ef074afb..9f97222655 100644 --- a/target/ppc/cpu_init.c +++ b/target/ppc/cpu_init.c @@ -48,6 +48,7 @@ =20 #ifndef CONFIG_USER_ONLY #include "hw/boards.h" +#include "hw/intc/intc.h" #endif =20 /* #define PPC_DEBUG_SPR */ @@ -7123,6 +7124,16 @@ static bool ppc_cpu_is_big_endian(CPUState *cs) return !FIELD_EX64(env->msr, MSR, LE); } =20 +static bool ppc_get_irq_stats(InterruptStatsProvider *obj, + uint64_t **irq_counts, unsigned int *nb_irqs) +{ + CPUPPCState *env =3D &POWERPC_CPU(obj)->env; + + *irq_counts =3D env->excp_stats; + *nb_irqs =3D ARRAY_SIZE(env->excp_stats); + return true; +} + #ifdef CONFIG_TCG static void ppc_cpu_exec_enter(CPUState *cs) { @@ -7286,6 +7297,7 @@ static void ppc_cpu_class_init(ObjectClass *oc, void = *data) cc->gdb_write_register =3D ppc_cpu_gdb_write_register; #ifndef CONFIG_USER_ONLY cc->sysemu_ops =3D &ppc_sysemu_ops; + INTERRUPT_STATS_PROVIDER_CLASS(oc)->get_statistics =3D ppc_get_irq_sta= ts; #endif =20 cc->gdb_num_core_regs =3D 71; @@ -7323,6 +7335,12 @@ static const TypeInfo ppc_cpu_type_info =3D { .abstract =3D true, .class_size =3D sizeof(PowerPCCPUClass), .class_init =3D ppc_cpu_class_init, +#ifndef CONFIG_USER_ONLY + .interfaces =3D (InterfaceInfo[]) { + { TYPE_INTERRUPT_STATS_PROVIDER }, + { } + }, +#endif }; =20 #ifndef CONFIG_USER_ONLY diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c index 8b95410c36..12d8a7257b 100644 --- a/target/ppc/excp_helper.c +++ b/target/ppc/excp_helper.c @@ -1655,6 +1655,7 @@ static void powerpc_excp(PowerPCCPU *cpu, int excp) qemu_log_mask(CPU_LOG_INT, "Raise exception at " TARGET_FMT_lx " =3D> %s (%d) error=3D%02x\n", env->nip, powerpc_excp_n= ame(excp), excp, env->error_code); + env->excp_stats[excp]++; =20 switch (env->excp_model) { case POWERPC_EXCP_40x: --=20 2.40.1 From nobody Mon Feb 9 23:43:06 2026 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; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1686404085; cv=none; d=zohomail.com; s=zohoarc; b=fLkHGpz1upRAWHNBHKJ1Mgk2MIRahEjBueElYa6PUw3D6EhigsZofoTQ/2XrBXNiptS7iFDtDq1tvfrLJWaR4zz7Z7/DS6gzThvw+Axj6ZKCvQFUBkCK/n78/U4eXM1wJtYaxuuE6i4VyEtw+LbNsy2LkLphFNSdFrU2XYuw13o= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686404085; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=TLzeS7gztbAOBe2aKBq1DtCEM+pkrfXK/dxGLvsedFc=; b=jSFt8erbte9reV/pYLOc98duq6pQHt6H8gCjvlhH0f8+Pf3lBhkgE4d++oba7iRqUEJPZ13ey1CIx3iAc20/oCS3sikU3AHsgAh9mwGhXqWp2Mlxvcu6fOIZzM2/T58Dl8bYulOh64TKx8Jv3BwTSWsnfOlEISzIZL9nephfCsI= 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686404085488422.23337153286946; Sat, 10 Jun 2023 06:34:45 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q7yi8-0005Ht-J2; Sat, 10 Jun 2023 09:32:56 -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 1q7yi7-0005GB-5F; Sat, 10 Jun 2023 09:32:55 -0400 Received: from mail-oo1-xc2f.google.com ([2607:f8b0:4864:20::c2f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q7yi5-0007jc-MQ; Sat, 10 Jun 2023 09:32:54 -0400 Received: by mail-oo1-xc2f.google.com with SMTP id 006d021491bc7-55afa2472d9so1793675eaf.0; Sat, 10 Jun 2023 06:32:53 -0700 (PDT) Received: from grind.. ([177.170.117.52]) by smtp.gmail.com with ESMTPSA id y3-20020a544d83000000b00395f2c84b81sm2428420oix.54.2023.06.10.06.32.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 06:32:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686403972; x=1688995972; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=TLzeS7gztbAOBe2aKBq1DtCEM+pkrfXK/dxGLvsedFc=; b=G2WoAZFUISa6vtPMinlBcsX8n9oMbWorUOyPyrUdhBrYl/XrY4L59Y/qx6S1O+zpl2 X4qXc8whicejvXUKhb5ueu11ol6utrR3eKP3JGrhTu7Eu/z7IdapaVxolU4Xnmt3oUH7 q3oMyNlFRBsNN9s3kpHOsyqcvl9rhcXCHWX297b9KUiy9gA8teacyweay00rQMg57HaB 6Vqi7wNC3xjZGAZZD6RIoq7AA83WjT/luFqNhA6vC112ubdHTZDLVm9hDDEQQba21xIw /ENBNqGwgxsKntrNtN78xdKGVhc8mCN2Hns4cJgDI+gsCzrhPJOg3Z03JyAkeFoUEjk/ E1sQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686403972; x=1688995972; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=TLzeS7gztbAOBe2aKBq1DtCEM+pkrfXK/dxGLvsedFc=; b=Cox1Z/57AN8UE7ZBj/Av1iYxSzU9LwPDNqJJFnVacscT6MVNAQxPSca4oiL9Q4UuMY DZqZMazPlO0egimxHuLYIWFnRrdfWcR5enws66U+TeAqP0YB360ID56eIRve6/ZWhRqh iRbqCCtib6JHB5TPlsUuDbWV9cXtc2ZOEpJD6fafiY+Ok2DFB/Eb9vS1ZY62FXelLAwc eJFAekTnJksV6iqcKByv57f4y8KJ6+raV1jPLE2eorjJhXnJCpxKbV5maYbnO3WGi2e/ U2DOrgzMhb2zPMkfDFOLgEDXkWXzh/Rb8kGB2KYm+K5InQzepZfxpPpd9HDVtbgm+uL3 7VOg== X-Gm-Message-State: AC+VfDwHvQxmqPNxRPoFZOXD8T/r1Xfh5589Or95+TnRataB6iPOzJaM GZnzckJbySjzqAl2ZcQeDYF8jbgRWOU= X-Google-Smtp-Source: ACHHUZ4wBQ02xXVpn57yA5vhc0r4N87Xk2oC1lgOX9+vglcR8jNqwMsLG+RcSZUw85NkNpIvJVxYFQ== X-Received: by 2002:aca:bcc1:0:b0:39c:6024:430a with SMTP id m184-20020acabcc1000000b0039c6024430amr785785oif.8.1686403971819; Sat, 10 Jun 2023 06:32:51 -0700 (PDT) From: Daniel Henrique Barboza To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org, richard.henderson@linaro.org, Thomas Huth , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Mark Cave-Ayland Subject: [PULL 29/29] hw/ppc/Kconfig: MAC_NEWWORLD should always select USB_OHCI_PCI Date: Sat, 10 Jun 2023 10:31:32 -0300 Message-Id: <20230610133132.290703-30-danielhb413@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610133132.290703-1-danielhb413@gmail.com> References: <20230610133132.290703-1-danielhb413@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=2607:f8b0:4864:20::c2f; envelope-from=danielhb413@gmail.com; helo=mail-oo1-xc2f.google.com 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, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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 @gmail.com) X-ZM-MESSAGEID: 1686404087579100003 From: Thomas Huth The PowerMacs have an OHCI controller soldered on the motherboard, so this should always be enabled for the "mac99" machine. This fixes the problem that QEMU aborts when the user tries to run the "mac99" machine with a build that has been compiled with the "--without-default-devices" configure switch. Signed-off-by: Thomas Huth Reviewed-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson Reviewed-by: Mark Cave-Ayland Message-Id: <20230530102041.55527-1-thuth@redhat.com> Signed-off-by: Daniel Henrique Barboza --- hw/ppc/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/hw/ppc/Kconfig b/hw/ppc/Kconfig index a689d9b219..5dfbf47ef5 100644 --- a/hw/ppc/Kconfig +++ b/hw/ppc/Kconfig @@ -115,6 +115,7 @@ config MAC_NEWWORLD select MAC_PMU select UNIN_PCI select FW_CFG_PPC + select USB_OHCI_PCI =20 config E500 bool --=20 2.40.1