From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ot1-f44.google.com (mail-ot1-f44.google.com [209.85.210.44]) (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 481423ACF00 for ; Thu, 9 Apr 2026 09:12:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.44 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775725931; cv=none; b=tXq+OCRlmqqZSE5hVOi6d8mGTu0SeECzNxlw8dp3Oldu/Jb7TLLYghsBr1mmq+9vQdc4K7rgEuz85YHflD4TsmlywDmNJv1dPCtz1f0e+vj5+EMYiMG4wsRnqnrbWoBV6HJsFHe+bH4rGEg6VHn1YLkJxu8wGSFw1zSvGEke22k= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775725931; c=relaxed/simple; bh=IUjVoj5aGL+x5r8g17g7aStoNWln6HporqIYjSjnWiY=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=iv+zI28klmvyn5j4cDqQD+mrhXd2BTbWyiNHk3GcTjJsVtp6RCnDuRJtod+ds1d1n01I1EgIEzojgG1zIchLXQN4RQ71XwWd2j4gqwWRcMinLpSRy5EnklZlZUqCl5LCUXQ5xZxMwVZhbPAzpKVn2gD3oE4Vz5UH7BeISN8CBV8= 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=EQhhdFIx; arc=none smtp.client-ip=209.85.210.44 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="EQhhdFIx" Received: by mail-ot1-f44.google.com with SMTP id 46e09a7af769-7dbf23885dfso409519a34.3 for ; Thu, 09 Apr 2026 02:12:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775725924; x=1776330724; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:sender:from:to:cc:subject:date:message-id:reply-to; bh=7KlUobdR5RZOrzreh9hgDytSFrMeubOUolfR+KrW3m8=; b=EQhhdFIxCqPEQYUYxJ+/hFKyIcyhUBTrhkK86J956s6IASM/UeWY6k9HgrDAydE138 OfjwhMXtkkQh0h1/OOFt3r/2/NhTjUqCEVKsdNstfXyxN9RtbN4sE2Cj7TV/zLhmt0vk rtiNjoIxEGVKE4MfpeCiVKp/TJ1xr0smGzP76EHgYtIvPJAanFdmhNBgkVEXkWzJJIiz gr9kpwywTFPoFPov52rmDQQGxqUXV1WfTMESmhs8kBzLG2Ah4llNHVHllfhefvY8tjfn VXZmIK75ykxwe2/WrSZw6ioxaHdMKURCKmJAqsr6E3XGhIaaMLKSXaF/CfW1KPnayF4T bQsA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775725924; x=1776330724; h=content-transfer-encoding:mime-version: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=7KlUobdR5RZOrzreh9hgDytSFrMeubOUolfR+KrW3m8=; b=DAvv5BzJx9dKB5BFwl8vJ+6Uhsq3iOwWAx2m4e6KyM5+R7IqI32sX1M28sErwsIfAp QJfDiXZB7VUbYT634siX8JAVsXq+eJgUgLGr0cVUrFusYzg/yOYk96g67+s0PbGRzitt DMZx65BzYBYpabDkKyngkySkjggSGUipQzvlBbcBqnlpX108VCFeTf43TgmyrWnFG6OW VXGSzwwXY5tCmZ+8MvEC2VFYCWOr7Ow9JTI1YboOn+bYz3SNXQn96zUqehwCgkvzurrk QfzzNK99HQNwjJjIWxh9ykNs/+tyN68A9LXT7sJ72l6Q3cuUDexIyalC5m32iOjvly89 XP/A== X-Forwarded-Encrypted: i=1; AJvYcCVMm5E3dQYZKxR14V4A09wMmbJhssw7Q6DTwLhUD5zD/mwtLK2ApqHmWW/PxNd7Q9r/1pRAnTK2F7ABILI=@vger.kernel.org X-Gm-Message-State: AOJu0YzlAfU4AYXMZmV4VJVs/1oLYtd3Jfw1vE751iqAH0/4APj0S7KX IR/b5azC+OyJs4ihr+vgdBvmLf0WE2fibFGAnsrZysilfbMJbAeTlcdd X-Gm-Gg: AeBDietfypizgBFbnsY98QJ3Hca3YZ1s8Ve75AXt3ecem7nB4tZ9gnATxcCMoYb2OI7 wM5VWJ1Cm6WtXbVHt5ETbSa+xxptLXrklVT/JJXZhT/8ownNaLobRP92Hn1aG4s6r/hLayHmYB3 KLbpndG2goxbX2rKjxOmFqBSCukAiFkNJrPZ76R7nU2dLjvPV01czEg/6BURG6Eql6+yJrGSNYt ldmQdRPkqn4c/7h1TInUWdMXEgl9UIGFXNKXDYl31uF7eZ2+/JnOk5xDQTXqDLY29bh9UOrnmiS 7RfX8eBPRw/9ohMcSK1RH47JyxzTZ4fAlYpQ7dhw1j9wjztast7woU8imGwWrD8McXSV0/Y6FHa wsw4zEIn8OroXU1l0XhfWrXyr/F6uGKjaEgSWDLFYGC3N5JWqVkuGB6cyGijv0zf5d91F2hq/aZ mqx/d20b06qZQYT7KUlgxX7BywnHZk9k4xNw== X-Received: by 2002:a05:6830:6af8:b0:7d7:eaa0:5e3f with SMTP id 46e09a7af769-7dbb7576b60mr14410246a34.24.1775725923715; Thu, 09 Apr 2026 02:12:03 -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.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 09 Apr 2026 02:12:03 -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 0/5] riscv: Assorted bug fixes Date: Thu, 9 Apr 2026 09:11:38 +0000 Message-ID: <20260409091143.1348853-1-mikey@neuling.org> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This series contains five independent bug fixes across the RISC-V architecture code, found with the help of Claude AI (claude-4.6-opus): 1. riscv: errata: Fix bitwise vs logical AND in MIPS errata patching - Logical AND (&&) was used instead of bitwise AND (&) when checking errata flags, causing all errata patches to be applied when any single one was detected. 2. riscv: ptrace: Fix register corruption in compat_riscv_gpr_set on error - On copyin failure, uninitialized stack data was written into the target task's pt_regs, corrupting registers and potentially leaking kernel stack contents. 3. riscv: mm: Fix NULL pointer dereference in __set_memory - find_vm_area() can return NULL but was dereferenced without a check. 4. riscv: mm: Fix NULL dereferences in napot hugetlb functions - huge_pte_offset() can return NULL in the napot path but was used without NULL checks in huge_ptep_set_access_flags() and huge_ptep_set_wrprotect(). 5. riscv: mm: Fix TOCTOU race in remove_pte_mapping - The PTE was read twice (once via ptep_get, once via *ptep), creating a race window where another CPU could modify the PTE between reads. All patches are small and self-contained. These bugs were identified through AI-assisted code review using Claude, which also assisted in writing the fixes. Each patch has been manually reviewed for correctness. Michael Neuling (5): riscv: errata: Fix bitwise vs logical AND in MIPS errata patching riscv: ptrace: Fix register corruption in compat_riscv_gpr_set on error riscv: mm: Fix NULL pointer dereference in __set_memory riscv: mm: Fix NULL dereferences in napot hugetlb functions riscv: mm: Fix TOCTOU race in remove_pte_mapping arch/riscv/errata/mips/errata.c | 2 +- arch/riscv/kernel/ptrace.c | 4 ++-- arch/riscv/mm/hugetlbpage.c | 4 ++++ arch/riscv/mm/init.c | 2 +- arch/riscv/mm/pageattr.c | 4 ++++ 5 files changed, 12 insertions(+), 4 deletions(-) -- 2.43.0