From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ot1-f46.google.com (mail-ot1-f46.google.com [209.85.210.46]) (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 5609B344DA0 for ; Thu, 2 Apr 2026 04:34:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.46 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775104473; cv=none; b=uMq7a+YVAIyv1PM7mxaeIXx+vpfFsKoVeJ0oceCRk3MfmCMGIxmVaqn4E5G/08n3BlKPl6o5IJVEpr56uxDxsBYFjDw7edDAgvHXYdDPnAh9J1zAoeYUAGAGYsLOc2NLFWWMC2Xlo3PKxwEQX1CVz5cUPrB5UHhfg9dmbVOX3cs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775104473; c=relaxed/simple; bh=QyQt3OewmhsPMAcbtgmmnTWVl1GHoo1obh7KR4PjCmg=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=u5MAibh3ThOYYMTGMbnq4ZBQeyaaExULSJ3bdJNkpqmTMub0SVBwbZ9M6f3exvPYiSx8HnXn10hPk+fQincMO0XA9GgCDTzCEnihlpjuDtg3BPrejwIYGR0NR3WbyrYkQw/WfIu9L9ddM/H9NDrJhVLhPBRPOEm1S4N+7VcZ6Ic= 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=Srvar+Aj; arc=none smtp.client-ip=209.85.210.46 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="Srvar+Aj" Received: by mail-ot1-f46.google.com with SMTP id 46e09a7af769-7d7eb85fb81so496319a34.0 for ; Wed, 01 Apr 2026 21:34:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775104471; x=1775709271; 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=EbDocc+3/G5Wqqwpdv49SPo6/d2rZ8VUYX/GN5MdH4c=; b=Srvar+Aj09qq7K+rAarX+z6dyEeEA+QssMufptsT5c6+lSwiJJ/xMPaCDpQ2d+7WnJ TJaUKY+KNnxdvxaASCsSkEx0HifJyNmPWUKNrXQmMzBXxdVeN+OcISzBwWoBlxntq1Vp IqMwCorj2SG8nOtvm46HsL2sO1+3GSFewpmIMHDj1gOC6WeUSmUEFnGyi+6sVl/A0dxa hu/6bTWbk5jQVaRTSkq0/EeVPeAkJI2e9cJk1RysHUrcDaROtEhOAPI9zSrxS/KWcyUF tap+MTWJunO8oBdxNBHWbXUNnPEySQq9S8Q2OACNAEFtfaPCiO2V8m+sMBX88oDQnSOF lekw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775104471; x=1775709271; 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=EbDocc+3/G5Wqqwpdv49SPo6/d2rZ8VUYX/GN5MdH4c=; b=DAP+Rcmc2dgqniIUzJmwz5AzvzKzsqPvlbcSNe3pMxQh8DdEfp+is6747vuIjlGEFX tcJMmSDnvq0fbJzTGnFFXtKS3BHkYRGRj6KdXKmSaLkE+4P99B4VJpp3eRRhDVZ7cfbp ltYilZDQ+EldFmfE4RCQ/qvVSU8bICsPTfZV0XplDMHRNkcqIF7Za8yq7uNHppqLe+Ez 6qCemi4lRJGlutk2daPit3G4nvwT9aEn7hUCBgEibZAp9eP82aSfyoPaFDXZTmRY64pf S9RjfW5IHkre26+PN/2sbzuJ4FhASmsAxwiPLjtMAiiKG+sdWaWbUyh1SBeK/oMDK4YV OC6g== X-Forwarded-Encrypted: i=1; AJvYcCVtLGJshzS/CRqbhHReZ+IFly+5mZETU+RnetjN+JKjN3Q4dKquERt8XQW27TkXSkNCQADM2DzAKvn8HX0=@vger.kernel.org X-Gm-Message-State: AOJu0YxTYgZ3S+JCB3XrpQ+qUfub2C1Y0nvuyXR6SDOcqHKuqDh5d51v Mimt3gmfb+BObbw8Vd7s9gVsjqITFBKXAaXQiSDhMwBDy7v5MxucS+e2 X-Gm-Gg: ATEYQzxJk/C8ZK4R8qcQI0VspxwVogdhDLHbg94ju1QRXQvC5cmiF6qQy4SR0UwoNMy qMkhmJVEkjX4WiKeOAXz8Bs6BLqxXbaBbSANO312zRZDv1lEci/9Qwtfb3FfDof1/UsDNSHV08N K48Yuz1ul1EQMRJC1y2jwt0rVlWIkfd7fKJXvMb1Q2EWPRQvgza3iYksHgSwM6QbzvttHAVUM51 ufL6X0Ab+ZR7XkH2NBoALqNv8gTgvo97wgv+PiBaxctoXvHrk2KZY6FA3NxnUfU27ANuGQTjQNo Y/ncDpVArFE/XHoaffM8N8x0mek3EFKt6pIr6NBSosTStWOi97cgxf1fCeo2+dBrMnZSI1V3RSN zMvhNFxTvaWT8Q/0vboTyG1zagPUVPLkzRSZ/GonQ2CgRLETYLrVdn7b56DOZKqBDJjZOpl5uch 5fmgD8jo6lwb4dca0l X-Received: by 2002:a05:6820:4dcb:b0:67e:367c:998b with SMTP id 006d021491bc7-67fabd207eemr3541049eaf.59.1775104471216; Wed, 01 Apr 2026 21:34:31 -0700 (PDT) Received: from hinoki ([185.255.130.248]) by smtp.gmail.com with ESMTPSA id 006d021491bc7-680a63c7fd1sm1139558eaf.8.2026.04.01.21.34.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Apr 2026 21:34:29 -0700 (PDT) From: Andy Chiu To: linux-riscv@lists.infradead.org, palmer@dabbelt.com Cc: Andy Chiu , linux-kernel@vger.kernel.org, Alexandre Ghiti , bjorn@kernel.org, alexghiti@rivosinc.com, paul.walmsley@sifive.com, greentime.hu@sifive.com, nick.hu@sifive.com, nylon.chen@sifive.com, eric.lin@sifive.com, vincent.chen@sifive.com, zong.li@sifive.com, yongxuan.wang@sifive.com, samuel.holland@sifive.com Subject: [PATCH v2 0/1] Optimize Vector context restore on syscall Date: Wed, 1 Apr 2026 23:34:13 -0500 Message-ID: <20260402043414.2421916-1-andybnac@gmail.com> X-Mailer: git-send-email 2.53.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 Accroding to the ABI, Vector registers are not preserved across a syscall. Therefore, the kernel invalidates all V-reg at the entry of the trap handler and marks the state dirty. This patch provide an optimization such that the invalidation is performed only once before returning back to the user space. Also by tracking this state, specifically reserving VS_INITIAL for this optimized restore, we cut the cost of saving and restoring V-reg at context switch for processes calling syscalls. --- Changelog v2: rebase on top of for-next Andy Chiu (1): riscv: vector: treat VS_INITIAL as discard arch/riscv/include/asm/vector.h | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) -- 2.53.0