From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-oi1-f177.google.com (mail-oi1-f177.google.com [209.85.167.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5EB6F3AC0F2 for ; Thu, 9 Apr 2026 09:12:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.177 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775725933; cv=none; b=ZQx7PQUjRd/sDUqewFazbKCCTlynUzAR3d1gD9JCCFg3mxi5hi2W0goik7yLqGqwdO4p9GU76LKfQxSY8ByXPTcJTclCPCsnEmP7nYJWkNWIitHeBAUb31sOuCxZb0wQPE8SVm8yYZxpSU0EuQwCnTEVb5dqkEO0h5kkkcVGlDs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775725933; c=relaxed/simple; bh=3nYEoR3njFXYbGnD/D+iRLk/2Dx7uSadcxKD859IaBI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pkaTKG8Uk8dF9HjknCmgyO2WF2PQxiRIjAy6E5Kr5j84fSw8sLPUY7P6MVxID89YooRaIE4bmQ7ivWYvVwyDccqm6NTTjk6l7HfrCHX7ADhZXHQZdokWtExgThRzOs65rlJ5cQj6wJij7hWAxZj9SR2fJAlTTP0WEbQyAP0lbqQ= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=neuling.org; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=hhkpXv56; arc=none smtp.client-ip=209.85.167.177 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=neuling.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="hhkpXv56" Received: by mail-oi1-f177.google.com with SMTP id 5614622812f47-476448429dfso340797b6e.0 for ; Thu, 09 Apr 2026 02:12:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775725925; x=1776330725; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:sender:from:to:cc:subject:date :message-id:reply-to; bh=e0TfCPcFn0APG45qaJoDyRX3fMbDdNDBQ++SYAh1Ies=; b=hhkpXv56Ex3hwmKxtcAoCB7ZdwU3MFff9zepGpDa7lq7zWz0Kyj/Uvb+OFQcIMEM9P I7bC2f1m01V4MzjFwrbVxEJZSrNB17rLBA/YyrkwNRwnYtci6QpNI092qoiecNqLQiNT U3gSWOKFWkUB5xz3IUZA5vUt/pq2xm7aFAjizMick1F025XgXh1HCGyiKNmCoD0Gqsnr ZfS4b6tx2bT4b9HmjBl7Qi01V5AujCgYPEG8Ok4XsIalL8lpbQsukweBhFGibUw/qskn VlWs3FazrljGtdKytTBWO9tqde2+QBni7vxsuPi2FQGtGXFqoROZCd3lWQIbnOqMBs4f DDJw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775725925; x=1776330725; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:sender:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=e0TfCPcFn0APG45qaJoDyRX3fMbDdNDBQ++SYAh1Ies=; b=LkFLLW52X3+TqdKlZdYyxPZsaKnJFy3Wb9RPDEDNDwWS3urH6dcS8WBo84XYjNqzv1 iJJa/T8KfLRNlKqHgS+CV5akHNWLFBWcadjjOAmag7K99ZmEufP8K6UYg9vE4KtDBKMP sJnnh+YhPacPMVxazA8gA2JFuXwrhAG5KzFJxatIl+3I/0uFVuVYDti7G6P9Akj3Z2o2 nXozQQeNuXyu1G6YjjaxMMOVyI6ettj5cNYZ24shcMqlMPtCV6QSKlPgtd8HqOKsT4fJ VUW56Kd0XdS98ZEoW1r63gV9z4nKK/SYahVIZe++A04sLUECN4uGaZKExky/hxjDZxP1 wvMw== X-Forwarded-Encrypted: i=1; AJvYcCVWg4CRgN1C3EO54cil+Zm9n6ebOAPOdu4kfyEmq3hocSyKQskT3vhe+G9129IFQTV38mH2RXbVcNMRz4Y=@vger.kernel.org X-Gm-Message-State: AOJu0Yzx1GxB77TqIiV3DqOvI9IUNZLSI5DbYeBoLmobXgYbMQtZOkIf 7YkPBU4Bx8azeoW7j4QX5pztl506VZApjLXtMiVlGQ8sDzPL0k+lnEIZ X-Gm-Gg: AeBDieuf6N2hKFXg2rGhxxNgmvroXyMMfiMyT6X3JBH2+ZDsZjS0Ehfg67M8urEEciP 31A86gZGck0Hr67twLorJzZVWmeuMXEEZ0odK4v4DBfTIG7uqSUWLnadnYML4nS3RZa+qvoboUd LbjigeHKcp49NkQnH6wvjIP4D6G2pm3RWLM4pUlwnfcq1uBwgcKoeRJPSagN6yDiRC7BAA57TJ7 r6PhjGbG64Bo72UhbMNGB7d1VBKGjFNGSSfOzRKnnS4mUZkFuUilntxVJHG9Od7/ItC9p/F/rVM FlXQ3YO/Ntpke02aKhPcZkDX5dOLgOl9MNCLyXDCgd6e1TAyDU/mjB1J64NYVtqbVZ2m/cDJtS0 YBIjWaask4ucuIMqBL3IGBa6MvdCyA4uE8iCmEFeE+HQAqNPZeT2wHWq2bDJegot822A4AgDWff CfKJswWn8El/jCDkG7dSgTPsZ01SycNRwmhA== X-Received: by 2002:a05:6808:1813:b0:467:880:7441 with SMTP id 5614622812f47-46ef99704dbmr12221280b6e.18.1775725925491; Thu, 09 Apr 2026 02:12:05 -0700 (PDT) Received: from ird-aus2.tenstorrent.com ([38.104.49.66]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-7dba7184e14sm15585364a34.11.2026.04.09.02.12.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 09 Apr 2026 02:12:04 -0700 (PDT) Sender: Michael Neuling From: Michael Neuling To: =?UTF-8?q?Bj=C3=B6rn=20T=C3=B6pel?= , "Mike Rapoport (Microsoft)" , "Vishal Moola (Oracle)" , Albert Ou , Aleksa Paunovic , Aleksandar Rikalo , Alexandre Ghiti , Andrew Jones , Andrew Morton , Arnd Bergmann , David Hildenbrand , Djordje Todorovic , Guo Ren , Junhui Liu , Kevin Brodsky , Lorenzo Stoakes , Nam Cao , Oleg Nesterov , Oscar Salvador , Palmer Dabbelt , Paul Walmsley , Qinglin Pan , Raj Vishwanathan4 , linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org Cc: Michael Neuling Subject: [PATCH 1/5] riscv: errata: Fix bitwise vs logical AND in MIPS errata patching Date: Thu, 9 Apr 2026 09:11:39 +0000 Message-ID: <20260409091143.1348853-2-mikey@neuling.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260409091143.1348853-1-mikey@neuling.org> References: <20260409091143.1348853-1-mikey@neuling.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The condition checking whether a specific errata needs patching uses logical AND (&&) instead of bitwise AND (&). Since logical AND only checks that both operands are non-zero, this causes all errata patches to be applied whenever any single errata is detected, rather than only applying the matching one. The SiFive errata implementation correctly uses bitwise AND for the same check. Fixes: 0b0ca959d2 ("riscv: errata: Fix the PAUSE Opcode for MIPS P8700") Signed-off-by: Michael Neuling Assisted-by: Cursor:claude-4.6-opus-high-thinking --- arch/riscv/errata/mips/errata.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/riscv/errata/mips/errata.c b/arch/riscv/errata/mips/errata.c index e984a81522..2c3dc2259e 100644 --- a/arch/riscv/errata/mips/errata.c +++ b/arch/riscv/errata/mips/errata.c @@ -57,7 +57,7 @@ void mips_errata_patch_func(struct alt_entry *begin, struct alt_entry *end, } tmp = (1U << alt->patch_id); - if (cpu_req_errata && tmp) { + if (cpu_req_errata & tmp) { mutex_lock(&text_mutex); patch_text_nosync(ALT_OLD_PTR(alt), ALT_ALT_PTR(alt), alt->alt_len); -- 2.43.0