From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pg1-f178.google.com (mail-pg1-f178.google.com [209.85.215.178]) (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 2AA748F7D for ; Mon, 15 Jun 2026 16:26:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.178 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781540789; cv=none; b=lunoSdhdfv/FyoBarThljYfglZEK06nQ5Fz9PBnDFNWRkZpYqYy22QDNDflHtaezXOldrnZRrLTIw9ZkRQjaaA0Vhxj8IqviHrEjQVdqzaUIkUk5C1Qr9DTkt3aODKx7qp7/aNPuNO50+7J753k7QHMahmSfUzyLUrUUWCswkTw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781540789; c=relaxed/simple; bh=V9FN6tXuHRuvtum69PRzDKZ0adAsKih9ZAP5k10Wthg=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=oRxW3bfQnLngh0y8zfnjNPKMkxe6G69Of1yRJ8hqjoDsTVt/1NrXZBh1jvCwM1T6IyRAopSnrINhI3OrUAx57o/hV/6rncO6/sBjY2C3uSBHGVL3vA3LOJxZS5l0rIONOCMMrKW2i8xN1Xw0XbXEm3vBjvRQEd+XX3Z8+8VxRVQ= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=rOIacd84; arc=none smtp.client-ip=209.85.215.178 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com 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="rOIacd84" Received: by mail-pg1-f178.google.com with SMTP id 41be03b00d2f7-c858961a8efso1474764a12.2 for ; Mon, 15 Jun 2026 09:26:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1781540787; x=1782145587; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=/kq53XBMXwwpeWSUuJdvcoCP4keKFn7d1L/6qu3gGAk=; b=rOIacd84NYZGGRpuNBHEmr4bCJ/lGQbYY2+VRKbaQ1J2rWFXOYOYHThfCbNRC1SWtk WA8jksntIc+J5kjX8EqhwcAePvfjkSB8kUjrVAr7GRrPZiz+1ofelEicx6tFknJbtCyM gASuLJEDKPvcUEhZNgrGW2b0MZRMvlacYUNSy0kVF+4XGfHtRan8jecRnK37/RbqnW+B 55buKCrmz9oz8YjlKs3fNZWtdGKroSh2c4pA3JbYCYCNOwUBBWio7iuUcPUFWGRsosn5 hGPFf/Y8z3LjWk7HetqdLlcP0bD4Ts29MLK0fIexTR7lqvaBoNzL14bav4N0/ZFX0wte UFHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781540787; x=1782145587; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=/kq53XBMXwwpeWSUuJdvcoCP4keKFn7d1L/6qu3gGAk=; b=gZLahxAgmtwyM7qiM9z2Ce0bplPYZJWdhYSNi3673n4ztCdhmcPmVD2Q0T+4uh65g2 eq1c5c691gDFqT2mS22gNhsTte9Kn7bp3RvQnPYGXl8HE/vQiANDICjnlDnSkLAHYD7a gveHxXizyZbxgV+Zvk7UbHppVhFgoiBrJs3eI8MMAKdj1fK3TZPv4FSeULLciXGDy25b 7bXmW+vloWK7avTeQpa/HL1e/S8Qbd0riWuAjllr+o3O9NDTgU3g+4/buat3neINutis 5AGsOwYeg41YxYCHuVMIp0ZcJilZqrMYtqWeoT0zQFQooM03Jb6mvfjKz7nITNqIcjXa QZUA== X-Forwarded-Encrypted: i=1; AFNElJ/l/X07LdZl0rQjcFflsWxwTweBL4vnnxhIQzsYO+yV5S5QSIF1eF8EMOmzVwarv52e4KJd4ESeC5bCNWM=@vger.kernel.org X-Gm-Message-State: AOJu0YyfSHFAJRCCrm4tYkwtlAqvOzPVtF1clTrzP+mNFzEcHzVluxC8 8jKLrGSEivMD//7yWoZ/WBAlw5C8Sd47DS2daKdEdQbTCuR8PtX2/m7E X-Gm-Gg: Acq92OFjbii+mOxRKlFSbTyFzW9Y9LV9qgduGPhZJ/Q6ktvbNVpslqG2QPtCxXfBf9v aVu6YDUvIIZic6XRaCdngSdsfL0mRwgEMl90ac1vUTu6diMPwvt+TNKYOw7JKCBG1hcfUWAisB7 VFPg/k3iVCU0VEbdGdYlP3JQxcB+clhbL5DTU+DunCQHrHBbwZN76YKgbv4cXzADt1mjaqFoRxg Gef1DZoZorIiRFdgpB3+UmoRCnjKcorlpDL5qwPHuCADsoOtbpgXfXvP221KdUKFB92HjvIsznZ 3xzXh5wXshWZMiC/j3Q/4ovMTlsfIoJHbYdVzkv2yugq6sLaUOWhqZECS58zI5pLDIru4lLBNuL UWw6Y5OaYJy1FMPOni6rlMQ4FipjcjkuYPyQwCybiYNX3PHP+H44ZuH4/6Fu4y4xSu6zh9uHqku ktFJKcwEyqnHFcmJYzIzsQpVLk7y0W89aVbxEwAJViZ7gj7L/3Mev+ohjNbSON4QTCtSursh9uj I0Ge+jg9g== X-Received: by 2002:a05:6a21:7d02:b0:3b3:216b:274c with SMTP id adf61e73a8af0-3b783f1bd60mr17547127637.22.1781540787455; Mon, 15 Jun 2026 09:26:27 -0700 (PDT) Received: from li-1a3e774c-28e4-11b2-a85c-acc9f2883e29.ibm.com ([106.51.160.236]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-c86651af080sm9502388a12.29.2026.06.15.09.26.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 15 Jun 2026 09:26:26 -0700 (PDT) From: "Mukesh Kumar Chaurasiya (IBM)" To: maddy@linux.ibm.com, mpe@ellerman.id.au, npiggin@gmail.com, chleroy@kernel.org, sshegde@linux.ibm.com, ruanjinjie@huawei.com, mkchauras@gmail.com, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org Cc: Sayali Patil Subject: [PATCH V2] powerpc: Restore KUAP registers on syscall restart exit Date: Mon, 15 Jun 2026 21:56:17 +0530 Message-ID: <20260615162617.2861795-1-mkchauras@gmail.com> X-Mailer: git-send-email 2.54.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 During a syscall restart, block KUAP so that pending interrupts can be replayed. The original KUAP state is not restored before returning to userspace, causing subsequent userspace accesses to fault and eventually trigger bad_access_pkey(), crashing the kernel. The original KUAP register values are already saved in arch_enter_from_user_mode(). Restore them on the syscall restart exit path before returning to userspace. Fixes: bee25f97ad24 ("powerpc: Enable GENERIC_ENTRY feature") Reported-by: Sayali Patil Signed-off-by: Mukesh Kumar Chaurasiya (IBM) --- V1 -> V2: - Commit message rephrased V1: https://lore.kernel.org/all/20260613123831.1510474-1-mkchauras@gmail.com arch/powerpc/kernel/interrupt.c | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/powerpc/kernel/interrupt.c b/arch/powerpc/kernel/interrupt.c index 89a999be1352..f04978080837 100644 --- a/arch/powerpc/kernel/interrupt.c +++ b/arch/powerpc/kernel/interrupt.c @@ -166,6 +166,7 @@ notrace unsigned long syscall_exit_restart(unsigned long r3, struct pt_regs *reg goto again; } + kuap_user_restore(regs); regs->exit_result |= regs->exit_flags; return regs->exit_result; -- 2.54.0