From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EE81F3264D5 for ; Tue, 7 Jul 2026 15:38:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783438714; cv=none; b=b61gO7GrL4aerFg5FqZl7e4z62sRSvnahuMShWeFECv6Wx0LuQsY8hBtFYAgsp7Kw5rog7CZhvscSHr6v/2iMvOpZdwX58sy+RGYoLE5lPjIoF3sv/hZ46ns+hkqW6OnJhCN6a1Cg7pdZ+cGBuMKQKo7vqNcCibV/O9Hgfqh3tU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783438714; c=relaxed/simple; bh=1mgfzPUif5xRSKKCrbShS5Qe5Zl4Tt06koGMdkxWnMc=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=cTRptim5UqVzlsncR/QqlSk0On9NU1ZU2J0ar3egskIENJigrK7n8Das3nvjpEw1uTh9BWvjFGZ6CS3rtuy9rmNNyWDSUxeX4J62C8k9rMdv+Cu3E5ysw+FGlMm6+Q2jmuQE+YmA5Ji1Be3pNP+iHt3kuz2/1jl3in6ziDp30Eg= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=ObqMOpbr; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=IUB8GfXD; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="ObqMOpbr"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="IUB8GfXD" Received: from pps.filterd (m0279864.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 667FTi6L3996643 for ; Tue, 7 Jul 2026 15:38:32 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:message-id:mime-version :subject:to; s=qcppdkim1; bh=6k6DNhpCY4fsn9OaVVgkXDjDkr0BVivqwm/ il5dVluk=; b=ObqMOpbrRS/NvWShM+eiA3JxPX6ZU1+ch4sHBwDRA3oqSPx6ZR3 79nk9Xq2BwotkEdo+OoW2cul3sIZyftqf4p7TvrCD+GN2dhVp57l7lNcwBThr52z UGADG/m8BvA77KfygTRC6gVlT90f8xVR0RqT1JEWTydXVdZvLsKF1UtuYNmoyGl4 TOXJX3aCtpKdICEYingHwxyQr6pzTT63P23GTJYT66m3Ku5lNkAZmn3vIrB1yjgE v8BtSvQe4kZz9bFDYn7IAhNhBtoRP0Odk0mQ4nrDnzG2PKMzrDVdwfL/os/CIUFV XgFqkApH71hHuaKeWochoKx9/qoSxrar0oQ== Received: from mail-pl1-f197.google.com (mail-pl1-f197.google.com [209.85.214.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4f8su72rj5-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 07 Jul 2026 15:38:32 +0000 (GMT) Received: by mail-pl1-f197.google.com with SMTP id d9443c01a7336-2cc6dd43737so72280255ad.2 for ; Tue, 07 Jul 2026 08:38:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1783438711; x=1784043511; 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=6k6DNhpCY4fsn9OaVVgkXDjDkr0BVivqwm/il5dVluk=; b=IUB8GfXDjVUOwO9YlzH5ISc2JEhbFObx/FggVsPnDa2YHheOVCqyV8fUbmMYtI1Wl2 ngQTnnD+B/R4YKP12Go92a4ixNoDC3lglqh7Q8kVi95A9QLrVkIx5jwEEbMiAmw7qq/N SWULvFzKmc05fIcZ9M4po0rnzzhDyva2CUG1QMY3eMsMVUgmcDJWO4VAW7qpWZw+2eMo tJOPZu+HY9XaxZlEHfgwCvoYYR04+OcpOdkmciaC4f5jYHtH9+t7SUJHvrSGOS/xdHg/ dKNDIJEym1wKs8XDb0+coo1wgvtxggg9MsEvGD5GN0dGHfDJa9K01adhNoQ6NPy1yxJ4 jB/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783438711; x=1784043511; 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=6k6DNhpCY4fsn9OaVVgkXDjDkr0BVivqwm/il5dVluk=; b=S9Aq4MoaOQCtIKfXP1wCFbE0u6iRv0HT7ojZeMEcvxEmQELXuL3i85vmTTumaETBSm D7Tj13JKlXutDtvz27yIp2RuTrEaVynXGTqW6Mcz6sPTeWYYbITZBl89zqF8tY8IE0aH K7cdWguHEuuPYOupzduQvICkC8QdsnOsLKI3j9WxS71PgFQyqFJ+/TjvowCnGoThoDvV LP03xKt4P6uyXatRuPnGD7c0oSTf132chQ7+AR5pjnzzkKx+y1EQga6xtK/0pWa//XZX WHvOQ1/ZDK9pe+xdfiE8Zez9jnRwpw5gsqb2MRSl8LSb8Hjpxg1/wsBrt9iSYrrUGmeZ RnBQ== X-Forwarded-Encrypted: i=1; AHgh+RpYIQS3xSn64K7wUSHiaeh6+P2uo2HcxcRD6nsj0hBvQyl9myVJb4Zmwc/jp9Gaf72rqW1yQF2DkvyTwQc=@vger.kernel.org X-Gm-Message-State: AOJu0Yy/NL4b4jHdtpPQBegIRP/RGr8Pv4GrjQjFVKjsLxDaQTHJWeoE 8Ey6OPm2wxh5IhObIM486IsG05LcoKEyeZLQrcExRwp2C2cPLSdwqTGode2nKgxFtDFGLxjHUz7 0f6XkIcGMHrkvmMo10NUNJNVkJ4wNSMgjdOCLXBpI2Zu/kI9eSHuWOxvql2LjM/ZDzXE= X-Gm-Gg: AfdE7cmSEEiunK4SmZl0x+b9hAX7mhmQaI9iSzUQZZyljoG6w3Ch69YMLpuwexiJeRK P84ITTE6DIrXJkbZfOb3YOkZGk8ZfjEXS+yLJ+aN48xwuyleQNMQmdNnGqYZwZ7PsypHOAS4dCe Gwhfy15nbhqaST08CZMRoc26dJYfJJKCHwn0XD00nYkZxf+HGPK6nXSIGy5tK1q7bluf8U1id4z wldEaaMjB+s6NDEjEb1mIWHvZx+ibvMKN71L8GW5WJ+olrTDYJ59O9/YZw4x87qC7mxA7cL9dgi vaRhux/JT4cfefXwYQBgZG3gFNvnm5nv4oUouVr+ocEsp5kPXhEfAgC27BH4fK00tERcpxGz6Bd mVnpErSgr9BJRtiFl4KzpQAVQW9zXvTPPMnMFUUEePWOemHQ= X-Received: by 2002:a17:90b:184b:b0:387:e0cb:7f3 with SMTP id 98e67ed59e1d1-387e0cb0926mr3349262a91.39.1783438711255; Tue, 07 Jul 2026 08:38:31 -0700 (PDT) X-Received: by 2002:a17:90b:184b:b0:387:e0cb:7f3 with SMTP id 98e67ed59e1d1-387e0cb0926mr3349228a91.39.1783438710813; Tue, 07 Jul 2026 08:38:30 -0700 (PDT) Received: from localhost (ip-86-49-247-5.bb.vodafone.cz. [86.49.247.5]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-3118389d9bcsm2098326eec.20.2026.07.07.08.38.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Jul 2026 08:38:30 -0700 (PDT) From: Andrew Jones To: linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Cc: pjw@kernel.org, palmer@dabbelt.com, Andy Chiu Subject: [PATCH] selftests: riscv: Bypass libc in inactive vector ptrace test Date: Tue, 7 Jul 2026 17:38:27 +0200 Message-ID: <20260707153827.175245-1-andrew.jones@oss.qualcomm.com> 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 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNzA3MDE1MyBTYWx0ZWRfX8VobCQBSkYM2 eC1c6R0D5shHzfd3OSpaCvRA5qsQRg+OZF+6OpSV/I64T75mNZGWH9iVdNpTTKYjbHUcpqA0mYV W/00ama4IXEs1rMe5zz4ySgbDLLIQqINn4nzTG7Z2DUJ/vtjNlGvkPSZGOCXjUgSuWCN8TJLEs+ Nhnl/+NrpukiYt0a707rw61qTrm+74fUB7MQQdsHM9S6a4iQOOnRvwtncL8R0j6tMOPXFEueYc2 X/o/UbpOx1Z1yHgWXGslzMqBpCvJX8WRvBikErSlgsGgJ1R6ktWQepvW45jgif60rZRHIZwDKC8 vt4inYHuYRdet4ZenLRcFDigAycSm73CembtirAsfd6p+Uh4AcpHjTymPjaYDrtxI6yzmoYQicY dGirafjnLp7Ahk0wfElZOveoB9Sw5ODuoKV2m54GigiGgW9AC6xKE0I/xwNUep1kdvFrweRk44k zUbf/KgcYeIsOR/kVgQ== X-Proofpoint-Spam-Info: AW1haW4tMjYwNzA3MDE1MyBTYWx0ZWRfX5JRuaXTjMXTP agd50eerw/FZ+VH5mpTet7AxEawUnmJkeIOBvd+OmWsmmWOtKDwwYEpVUd6P+euXLaLXU1DwsmQ UP9cJxbIaFJoIpb+LCIoR+9/t04P7FY= X-Proofpoint-GUID: WFsQYn4Lw1725q5ag_L-Fl2p6VlZRe2W X-Proofpoint-ORIG-GUID: WFsQYn4Lw1725q5ag_L-Fl2p6VlZRe2W X-Authority-Analysis: v=2.4 cv=HN7z0Itv c=1 sm=1 tr=0 ts=6a4d1d78 cx=c_pps a=cmESyDAEBpBGqyK7t0alAg==:117 a=aYZ+cQcEYoLAp2L633VOig==:17 a=RAioF0-LDSMA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=DJpcGTmdVt4CTyJn9g5Z:22 a=t9496tuAAAAA:8 a=EUspDBNiAAAA:8 a=rDID_L0gX1M31e_C9isA:9 a=1OuFwYUASf3TG4hYMiVC:22 a=4wQ91nGE5lQcD7eh5OX0:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-07-07_04,2026-07-06_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 priorityscore=1501 malwarescore=0 adultscore=0 clxscore=1015 bulkscore=0 suspectscore=0 lowpriorityscore=0 impostorscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2607070153 The ptrace_v_not_enabled test expects the child to reach its ebreak before it has used the vector extension. That is not guaranteed when using fork(), because libc may run child atfork handlers before returning to the test code. In those cases PTRACE_GETREGSET for NT_RISCV_VECTOR then succeeds instead of returning ENODATA for inactive vector state. Use the raw clone syscall with SIGCHLD to keep fork-like semantics while bypassing libc's fork wrapper and atfork handler chain. Cc: Andy Chiu Assisted-by: Claude:claude-sonnet-4-6 Signed-off-by: Andrew Jones --- tools/testing/selftests/riscv/vector/validate_v_ptrace.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/riscv/vector/validate_v_ptrace.c b/tools/testing/selftests/riscv/vector/validate_v_ptrace.c index 74b6f6bcf067..b038e2175c80 100644 --- a/tools/testing/selftests/riscv/vector/validate_v_ptrace.c +++ b/tools/testing/selftests/riscv/vector/validate_v_ptrace.c @@ -1,5 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only #include +#include #include #include #include @@ -25,9 +26,9 @@ TEST(ptrace_v_not_enabled) SKIP(return, "Vector not supported"); chld_lock = 1; - pid = fork(); + pid = (pid_t)syscall(SYS_clone, SIGCHLD, 0, NULL, 0, NULL); ASSERT_LE(0, pid) - TH_LOG("fork: %m"); + TH_LOG("clone: %m"); if (pid == 0) { while (chld_lock == 1) -- 2.43.0