From nobody Sun Feb 8 19:03:59 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 200ABC77B7A for ; Thu, 25 May 2023 07:36:35 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239959AbjEYHgc (ORCPT ); Thu, 25 May 2023 03:36:32 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58200 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239726AbjEYHfr (ORCPT ); Thu, 25 May 2023 03:35:47 -0400 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DED5AE5D; Thu, 25 May 2023 00:35:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685000137; x=1716536137; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=+u1HJaFTXrPVFD+3NbnmJ/AGWJcDm8pIPpTYzo4Zo5U=; b=Bkp5PEyInb678hmkrwtWbI30yRf5zJepIUrUlS8sd8LuIjCGC5dkVFrs VoOgJy4561daLXNDUnaJsdzm8Az1KkntxTC4gNtcsC7zJn++pCjiwe2+9 9oaI7/upetz5i5JjqAqAMm/m6PwfGXt0y7bBO19ZS65PUSv564fVOM4mn YJF6DANeUdUP7/2qf6FlSFFpRGfLeunUe7cZQ+/d6ErqeLAjYrRZ4oJd3 HYO1k9dR2+Gysx7oQ+E0Bjd0Kq81zBUbv7Z2DK//u7mShicUEtpFY7FNu Eot7+r/tShfvhiPs71Cd18c8LPATq6NZ9ipUk8j5ipPhFITn+Q6arOYpq Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10720"; a="356164562" X-IronPort-AV: E=Sophos;i="6.00,190,1681196400"; d="scan'208";a="356164562" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 May 2023 00:34:54 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10720"; a="769776197" X-IronPort-AV: E=Sophos;i="6.00,190,1681196400"; d="scan'208";a="769776197" Received: from haibo-optiplex-7090.sh.intel.com ([10.239.159.132]) by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 May 2023 00:34:48 -0700 From: Haibo Xu Cc: xiaobo55x@gmail.com, haibo1.xu@intel.com, ajones@ventanamicro.com, maz@kernel.org, oliver.upton@linux.dev, seanjc@google.com, Paolo Bonzini , Jonathan Corbet , Anup Patel , Atish Patra , Paul Walmsley , Palmer Dabbelt , Albert Ou , Shuah Khan , James Morse , Suzuki K Poulose , Zenghui Yu , David Matlack , Ben Gardon , Vipin Sharma , Colton Lewis , kvm@vger.kernel.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org, linux-kselftest@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev Subject: [PATCH v2 10/11] KVM: riscv: selftests: Skip some registers set operation Date: Thu, 25 May 2023 15:38:34 +0800 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable To: unlisted-recipients:; (no To-header on input) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Set operation on some riscv registers(mostly pesudo ones) was not supported and should be skipped in the get-reg-list test. Just reuse the rejects_set utilities to handle it in riscv. Signed-off-by: Haibo Xu Reviewed-by: Andrew Jones --- tools/testing/selftests/kvm/get-reg-list.c | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/tools/testing/selftests/kvm/get-reg-list.c b/tools/testing/sel= ftests/kvm/get-reg-list.c index f1fc113e9719..ebd6b580b33b 100644 --- a/tools/testing/selftests/kvm/get-reg-list.c +++ b/tools/testing/selftests/kvm/get-reg-list.c @@ -211,16 +211,22 @@ static void run_test(struct vcpu_reg_list *c) ++failed_get; } =20 - /* rejects_set registers are rejected after KVM_ARM_VCPU_FINALIZE */ + /* + * rejects_set registers are rejected after KVM_ARM_VCPU_FINALIZE on aar= ch64, + * or registers that should skip set operation on riscv. + */ for_each_sublist(c, s) { if (s->rejects_set && find_reg(s->rejects_set, s->rejects_set_n, reg.id= )) { reject_reg =3D true; - ret =3D __vcpu_ioctl(vcpu, KVM_SET_ONE_REG, ®); - if (ret !=3D -1 || errno !=3D EPERM) { - printf("%s: Failed to reject (ret=3D%d, errno=3D%d) ", config_name(c)= , ret, errno); - print_reg(config_name(c), reg.id); - putchar('\n'); - ++failed_reject; + if ((reg.id & KVM_REG_ARCH_MASK) =3D=3D KVM_REG_ARM64) { + ret =3D __vcpu_ioctl(vcpu, KVM_SET_ONE_REG, ®); + if (ret !=3D -1 || errno !=3D EPERM) { + printf("%s: Failed to reject (ret=3D%d, errno=3D%d) ", + config_name(c), ret, errno); + print_reg(config_name(c), reg.id); + putchar('\n'); + ++failed_reject; + } } break; } --=20 2.34.1