From nobody Sun Jun 14 09:58:36 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.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 4EC8A329C54 for ; Tue, 7 Apr 2026 14:49:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775573378; cv=none; b=GTm16oeamDKouy7/kqq1IadK8XrTjm56w2HxdxYrQDcsIIt5YLrnp47SjgVDB01YyZUfGljcugJ8+uQetMHcSu2A9DfFjpIeQbUMypXgdDw8Ks+3/Vj3RISqUwtR9c8v6XF3AyFEjk8MQh9n4LvLxBZE6FhG7AW6Fdp3h9Ow874= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775573378; c=relaxed/simple; bh=XtIgdoH19ndIvGeCEmpFzfQqB5+kwXIGq8zRQkAd4/0=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=YNA/bozi9c024xYd2q30uFz623uMn/Iwaow6iHtOfDfedzk7Akx70A/Y2x6uHiT/trZACbSwYPPwJmix2TziFAUSvPB6814kLCr0G0HPI0zz07p8ilPTYgqq6ateCo6aONxUHigKmvmR5y9/e0I9/e1J00Cs1gm0V5rtDvOFLyo= 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=kmqyem/t; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=Oe0UeI0/; arc=none smtp.client-ip=205.220.180.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="kmqyem/t"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="Oe0UeI0/" Received: from pps.filterd (m0279868.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 637CYaMT3815781 for ; Tue, 7 Apr 2026 14:49:33 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=jDMD46+vU9O7fXNFW5V6F3aRAp7klbVqL8u xr/vs318=; b=kmqyem/tg6XzlqkH1Kgt31zT0rxtwScPdhlxLZc0EEZ9jyd1Vkx lxzp2L9f0FkfhrBYXZE+XrKHNcLVez/WIMSqgmWWXgH510CZp3G9HMV8KMQXncPZ bZGBKe6C5y8N6iCtHwO41wDkrrkbYkrwUkYSd8joz6o7m83u1qkgJRpoauvdylZU 4HBc8eZfLldUD1H3H0tZGNHShXHTCszH6p43TSQBDg/hIuleJIsby4k9w4UruCFa dP67wIju7U+Ges3a+JoHXUuECEA+ruFJ7yEbqIMM2Mn/kk4JQAtLUmtNQuPJBB5R /Id21XrNi7c0yOv3F2FzAsqLwIsjfgkwOTA== Received: from mail-pg1-f197.google.com (mail-pg1-f197.google.com [209.85.215.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4dcmr4u7mu-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 07 Apr 2026 14:49:32 +0000 (GMT) Received: by mail-pg1-f197.google.com with SMTP id 41be03b00d2f7-c76c6280732so6412954a12.0 for ; Tue, 07 Apr 2026 07:49:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1775573371; x=1776178171; 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=jDMD46+vU9O7fXNFW5V6F3aRAp7klbVqL8uxr/vs318=; b=Oe0UeI0/vvzYSrvbJ1ZWJz77EJcMRJBQYBL8oUGkKLtBUZQiG2ZfOV+YNbNg9mD1jz pwCPX+YsCMsegFSohpGU9wta8MRQ0Lh//OaH36xma8Gd/coHDt3fijk2BiWJEpK4XOID pR0DYLBEW7m/uuQ4WfKsPcduYrBJlYI1QANM5Cf96QfmDM8gnRLtf2OEdXhV4cIhPkhG dfbJo7Z4mosPy7HhIJ7YcZwqL94tLmcWPw2R6gegloyg9b6Z1PyIAgAZsE9AwtUAfNNY RKsluQJ0jza0sxVLGaW6p5IYW/XmY4nfd8EoLfYiOKWqmyZ9KHc05//k8sPZOvaRIlW2 8+DA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775573371; x=1776178171; 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=jDMD46+vU9O7fXNFW5V6F3aRAp7klbVqL8uxr/vs318=; b=lLlB3B4t14Ur3/GRJ+LfDqzxQ3qkFGEqH3CTWr50Jpm0M9+QILPY7kP6a2rEWHnlje Jltfzct/PmPFfpLHMP7yGeGSg/ZDjOiVqtZGWWlFkWFfAb32Uc4Nhf4vr8eijg0eFzvg OOGOEKDtFC1anTpvNlv5ZxEoJEsm53VtINOOxQfAbxFrALLlhtukp5Sq3T+ST2N/OM6M boNQoRvHrNh3cTMJ41D2ypnXvevA5D3JohqQai07cUt3zy3nj6+kvvvhM5cfdirjYoSC A6ih00wCYSsDxMQBI5AiVMb6vqaDnPI6/7TLmYb1uFFB6yYryGoffHbJMiUiMx04hcdZ L4Bg== X-Forwarded-Encrypted: i=1; AJvYcCUS/BEb/wj0V+gAOswuH3g4RXt7v1XDPyOjmY/7wOI5NdRJuv/u4PPEMQddVEOrGg2d7y97podClXwKzBM=@vger.kernel.org X-Gm-Message-State: AOJu0Yx6bQnjETvuvYU+qUG+dmZPP9ZsXdYh0qZqTGxYuXdgoa46Cd6a G5pNhD/by2EBIj2T7I+DVoBrzjnNj4TXI7Hxxjj3tbFrtrIQ32+sD4EwKLhEkoqI+m4joWkCKt6 kciWMVN1o4zLa9VSQDAnfhzbJm44d4B6hJqrUYa+bxJPDn6UDpEJC4ifYUeEqzEte7bvTyMg4lY H6Mg== X-Gm-Gg: AeBDiesLd9FB+aTD45MiVmUbT3Bo/T8p4KQSxz1fIuYd1KKSFAh04jPmcT6FrUt1n+u ETiZLBRtp99/cB4nQZhiFN66azNgYQn3n6cZy0iqltYdDbuH93fyYuudAKaShGIaJmOZ6MxnusP QDZstpmmPpssCUJjDjt9MWfPe++XySMi55D1RFGdJrsD5wWUNbAyNHJTEMgMPRqFWRt56lmSOGY gQ38VyPNodTRvq97gIajceLRjyB7q0LJawhnDXpQV5upyOQSzht4efyWGQ+3ONIcBBmDfuQhRCQ V17EKV/kS3wVB6JW5ElpBMqWWCuekaYT0WW7dvi1FRr56OLHvC3e+/YnrNz4B/qzreZxnu/9qX/ o1F8617Dfv5s221jP/mtpw5P4zjQ6ULnicSEpz1RFu+t1phqwr4QyHo9sNVU= X-Received: by 2002:a05:6a20:7494:b0:398:8d38:c5ef with SMTP id adf61e73a8af0-39f2f05052cmr17137269637.34.1775573371322; Tue, 07 Apr 2026 07:49:31 -0700 (PDT) X-Received: by 2002:a05:6a20:7494:b0:398:8d38:c5ef with SMTP id adf61e73a8af0-39f2f05052cmr17137237637.34.1775573370783; Tue, 07 Apr 2026 07:49:30 -0700 (PDT) Received: from hu-mchitale-hyd.qualcomm.com ([202.46.22.19]) by smtp.googlemail.com with ESMTPSA id 41be03b00d2f7-c76c65935cbsm16116998a12.26.2026.04.07.07.49.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Apr 2026 07:49:30 -0700 (PDT) From: Mayuresh Chitale To: Paolo Bonzini , Shuah Khan Cc: Mayuresh Chitale , kvm@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2] KVM: selftests: memslot_perf_test: make host wait timeout configurable Date: Tue, 7 Apr 2026 20:19:12 +0530 Message-ID: <20260407144914.2621843-1-mayuresh.chitale@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: quoted-printable X-Authority-Analysis: v=2.4 cv=dO6WXuZb c=1 sm=1 tr=0 ts=69d5197c cx=c_pps a=rz3CxIlbcmazkYymdCej/Q==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=ZpdpYltYx_vBUK5n70dp:22 a=EUspDBNiAAAA:8 a=Q6LddUHKALiUaiREB9sA:9 a=bFCP_H2QrGi7Okbo017w:22 X-Proofpoint-GUID: PrCACFxFM8rarhzxDGD6wraOt-sfVSdb X-Proofpoint-ORIG-GUID: PrCACFxFM8rarhzxDGD6wraOt-sfVSdb X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDA3MDEzNSBTYWx0ZWRfXxmNRsX9KoJ+e J17x4K/VD0Qp2EidgWraX3PMfRxuVpZcjsQOaGRGhS53EJjSifEXSBMhI694r1BBKtu8UcKt5WF 5plvHKS+6YaGWbjQK7tgpI6lJVIBuGc+5v9mFERlKPDIWSQEEd/Bl/y1p3W9nG98Em8DmyD/ejb 0YnQ2eE9aOFWn+okUuWra7a8nLPE+o7NwZZVlrynszDZBGwvzr6ohEmiRKPxpPMUGKsr9xq9j5z vWRgcae0hPo9zjK724ldm6pxwn/0a4rPidP1TFH3ZCLfsEYt44Si4R1UF38SSq0c+nesCeLbpKJ /nX3PG21wGk02US2NjztrmIW8Va7Dg6b39Aww53hBDkpWrGbFmoFrWuWp8/q7r1GjnfAsD8vWFP jVMn8MbnxCREPlSMHAEuc0+7q+BKJTM6OUjwXRRAD6cDcZexF/N0G2mZT+9OTAVz2Rh5XuHrIQO jBGr+Y3uf/MEx1PTuoQ== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-04-07_03,2026-04-07_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 adultscore=0 lowpriorityscore=0 priorityscore=1501 malwarescore=0 impostorscore=0 suspectscore=0 phishscore=0 bulkscore=0 clxscore=1015 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604070135 Content-Type: text/plain; charset="utf-8" When memslot_perf_test is run on the Qemu Risc-V Virt machine, sometimes the RW subtest fails due to sigalarm, indicating that the guest sync did not finish within the expected duration of 10 seconds. Since the current timeout value is itself a bump up from the original 2s, making the host timeout value configurable via a new command line parameter. The test can be invoked with '-t' option to set a suitable timeout value for the host. Signed-off-by: Mayuresh Chitale --- Changes in v2: - Change the timeout option flag from 'a' to 't' - Specify the test platform (Qemu Risc-V Virt) in the commit message tools/testing/selftests/kvm/memslot_perf_test.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/tools/testing/selftests/kvm/memslot_perf_test.c b/tools/testin= g/selftests/kvm/memslot_perf_test.c index 5087d082c4b0..567474168c1c 100644 --- a/tools/testing/selftests/kvm/memslot_perf_test.c +++ b/tools/testing/selftests/kvm/memslot_perf_test.c @@ -111,6 +111,7 @@ struct sync_area { */ static_assert(ATOMIC_BOOL_LOCK_FREE =3D=3D 2, "atomic bool is not lockless= "); =20 +static int wait_timeout =3D 10; static sem_t vcpu_ready; =20 static bool map_unmap_verify; @@ -418,7 +419,7 @@ static bool _guest_should_exit(void) */ static noinline void host_perform_sync(struct sync_area *sync) { - alarm(10); + alarm(wait_timeout); =20 atomic_store_explicit(&sync->sync_flag, true, memory_order_release); while (atomic_load_explicit(&sync->sync_flag, memory_order_acquire)) @@ -900,7 +901,7 @@ static void help(char *name, struct test_args *targs) { int ctr; =20 - pr_info("usage: %s [-h] [-v] [-d] [-s slots] [-f first_test] [-e last_tes= t] [-l test_length] [-r run_count]\n", + pr_info("usage: %s [-h] [-v] [-d] [-s slots] [-f first_test] [-e last_tes= t] [-l test_length] [-r run_count] [-t wait_timeout]\n", name); pr_info(" -h: print this help screen.\n"); pr_info(" -v: enable verbose mode (not for benchmarking).\n"); @@ -916,6 +917,8 @@ static void help(char *name, struct test_args *targs) targs->seconds); pr_info(" -r: specify the number of runs per test (currently: %i)\n", targs->runs); + pr_info(" -t: specify the number of seconds for host wait timeout (curren= tly: %i)\n", + wait_timeout); =20 pr_info("\nAvailable tests:\n"); for (ctr =3D 0; ctr < NTESTS; ctr++) @@ -964,7 +967,7 @@ static bool parse_args(int argc, char *argv[], uint32_t max_mem_slots; int opt; =20 - while ((opt =3D getopt(argc, argv, "hvdqs:f:e:l:r:")) !=3D -1) { + while ((opt =3D getopt(argc, argv, "hvdqs:f:e:l:r:t:")) !=3D -1) { switch (opt) { case 'h': default: @@ -1007,6 +1010,9 @@ static bool parse_args(int argc, char *argv[], case 'r': targs->runs =3D atoi_positive("Runs per test", optarg); break; + case 't': + wait_timeout =3D atoi_positive("Host wait timeout", optarg); + break; } } =20 --=20 2.43.0