From mboxrd@z Thu Jan 1 00:00:00 1970 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 741E3C4332F for ; Wed, 13 Dec 2023 14:09:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=PH5zlzVxhTcAbqWoUAQWoUQZklaVkNwrDQd4HjTR1uI=; b=EfEDNxu8GluUUp dHjevCZcA7NToFo+DIbBim0/W2lM59qhHAsO578tkGXowl2ofn5pOtcLj4T7l+0J7KxGZM9J/Yvp5 k7fsLEAsfRLQfm2b9U9YaaUtzSYOLrMiTNbGTa4qR6qHBoL5xuSKLnrtL327+Zf+JOmByQ4/hCtJu wx+9eYsgRBPjtdiM+TzD1VfIeS9YXCsH6oa4nF3k9rf+aqYFkB27QFCiMj+O5EcLesGEfy8irE8No VUq585gm5lj/s/mIL6PerOILicp4i2LH/Lb/kE25UCcTIkXRTsFd316yLZf3kDAc4Am4648xXRDbF zYrv0OfcdjbYK2TjE0/w==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1rDPv0-00Ez5E-2P; Wed, 13 Dec 2023 14:08:58 +0000 Received: from mail-wm1-x32b.google.com ([2a00:1450:4864:20::32b]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1rDPut-00Ez0x-21 for linux-arm-kernel@lists.infradead.org; Wed, 13 Dec 2023 14:08:57 +0000 Received: by mail-wm1-x32b.google.com with SMTP id 5b1f17b1804b1-40c3984f0cdso55189575e9.1 for ; Wed, 13 Dec 2023 06:08:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ventanamicro.com; s=google; t=1702476530; x=1703081330; darn=lists.infradead.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=w4lrG4sG6YQ4BIE8GkwyCjrSGGxi/UC5oCrLRkXbQKg=; b=MlubJGYia6fe9BWGLuUlwgDtgwzDIMNRHDTrsnfCIPVnA/0ET1n+Ad+HS6RgDVjuo7 Pyg6CU9YztBV1KJH6x78jhl/0n2W7InxOe0NIFtxmxJuSJ1yKHP1bryFdez2sIzFZ64a QWm+y9DsSVGBjVtopHhPUx1kuKQlD/YLspICHBKvhvoJV2dlJ/IgE1emY6yQv8Qhdd4D SXM3lCR3CRoVr/NHrT9W8RZ/QUf2O0Y6WzEmLio/3V51H49qV+AkwxXpXbLHz98BNBnz SfL69BOz551Y6tSECGy4VQubQOog/3Np3f//8icGpFv70GpVAWK481PHakO99T7d92OU xt1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702476530; x=1703081330; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=w4lrG4sG6YQ4BIE8GkwyCjrSGGxi/UC5oCrLRkXbQKg=; b=pBKYzCDuPRkaJDNA+VG2nj4GLYvb20mKurTI6+pZW82C/153KDdugU/SXL5i5Kj95M ioCrleUu/D3bGhcHvRWLCp9L/xzrvQHrXwDWVO1mf9V1Lv/rIwkiVUhPP5M98WkZwR1V 3svL3pwvf/yYxWjqOiUqVKzcqeYaTwoAGZsbnF8fP5yQsxQYhbyK8n8q1DoiQEE1DcNH Dg/f3knRQcjRtcj+IwsRgYqhCn/5Nilnlk6Q92u2/r9lsqaOSLHf5mweC2pgNXjpEr69 RdRCmj3HSd6b5x8gXR2vKt50xdZA41SWaBDNXG+Bx9lPWlt3h7HCHvDgeysd/oVIhGiW qBdQ== X-Gm-Message-State: AOJu0YzEgqqmWjl3UTO2VGRlAqKVrr9dfRT8SGAiA9jXqIEL2YVZDxyn 2gqPipvk9oSb7TacRa8wwWpczg== X-Google-Smtp-Source: AGHT+IFgauWd5JriwtlECloTEhDNQTP3+kD2+Khl56+oF2aQ1LGAnudW9SV+lT5Ks1LMkyomAMD58w== X-Received: by 2002:a05:600c:1d19:b0:40b:5e1d:83a0 with SMTP id l25-20020a05600c1d1900b0040b5e1d83a0mr4191978wms.52.1702476529934; Wed, 13 Dec 2023 06:08:49 -0800 (PST) Received: from localhost (2001-1ae9-1c2-4c00-20f-c6b4-1e57-7965.ip6.tmcz.cz. [2001:1ae9:1c2:4c00:20f:c6b4:1e57:7965]) by smtp.gmail.com with ESMTPSA id v6-20020a05600c444600b0040c46ba7b66sm11736461wmn.48.2023.12.13.06.08.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Dec 2023 06:08:49 -0800 (PST) Date: Wed, 13 Dec 2023 15:08:48 +0100 From: Andrew Jones To: Haibo Xu Cc: xiaobo55x@gmail.com, Paul Walmsley , Palmer Dabbelt , Albert Ou , Paolo Bonzini , Shuah Khan , Marc Zyngier , Oliver Upton , James Morse , Suzuki K Poulose , Zenghui Yu , Anup Patel , Atish Patra , Guo Ren , Conor Dooley , Mayuresh Chitale , Greentime Hu , wchen , Jisheng Zhang , Minda Chen , Samuel Holland , Sean Christopherson , Like Xu , Peter Xu , Vipin Sharma , Aaron Lewis , Thomas Huth , Maciej Wieczor-Retman , linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org, kvm@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev, kvm-riscv@lists.infradead.org Subject: Re: [PATCH v4 08/11] KVM: riscv: selftests: Add guest helper to get vcpu id Message-ID: <20231213-b02db86aaf7957be22b200f1@orel> References: <02f6c9ccaaeb4ceb67137863e0317f62cef62496.1702371136.git.haibo1.xu@intel.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <02f6c9ccaaeb4ceb67137863e0317f62cef62496.1702371136.git.haibo1.xu@intel.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231213_060851_690695_ACBDEF48 X-CRM114-Status: GOOD ( 20.27 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Tue, Dec 12, 2023 at 05:31:17PM +0800, Haibo Xu wrote: > Add guest_get_vcpuid() helper to simplify accessing to per-cpu > private data. The sscratch CSR was used to store the vcpu id. > > Signed-off-by: Haibo Xu > Reviewed-by: Andrew Jones > --- > tools/testing/selftests/kvm/include/aarch64/processor.h | 4 ---- > tools/testing/selftests/kvm/include/kvm_util_base.h | 9 +++++++++ > tools/testing/selftests/kvm/lib/riscv/processor.c | 8 ++++++++ > 3 files changed, 17 insertions(+), 4 deletions(-) > > diff --git a/tools/testing/selftests/kvm/include/aarch64/processor.h b/tools/testing/selftests/kvm/include/aarch64/processor.h > index c42d683102c7..16ae0ac01879 100644 > --- a/tools/testing/selftests/kvm/include/aarch64/processor.h > +++ b/tools/testing/selftests/kvm/include/aarch64/processor.h > @@ -226,8 +226,4 @@ void smccc_smc(uint32_t function_id, uint64_t arg0, uint64_t arg1, > uint64_t arg2, uint64_t arg3, uint64_t arg4, uint64_t arg5, > uint64_t arg6, struct arm_smccc_res *res); > > - > - > -uint32_t guest_get_vcpuid(void); > - > #endif /* SELFTEST_KVM_PROCESSOR_H */ > diff --git a/tools/testing/selftests/kvm/include/kvm_util_base.h b/tools/testing/selftests/kvm/include/kvm_util_base.h > index a18db6a7b3cf..666438113d22 100644 > --- a/tools/testing/selftests/kvm/include/kvm_util_base.h > +++ b/tools/testing/selftests/kvm/include/kvm_util_base.h > @@ -932,4 +932,13 @@ void kvm_selftest_arch_init(void); > > void kvm_arch_vm_post_create(struct kvm_vm *vm); > > +void vm_init_vector_tables(struct kvm_vm *vm); > +void vcpu_init_vector_tables(struct kvm_vcpu *vcpu); > + > +struct ex_regs; > +typedef void(*exception_handler_fn)(struct ex_regs *); > +void vm_install_exception_handler(struct kvm_vm *vm, int vector, exception_handler_fn handler); I think something happend on rebase since the above should be in a different patch (and were for v3). I suggest checking your previous and current version branches with git-range-diff after rebasing in order to catch stuff like this. Thanks, drew > + > +uint32_t guest_get_vcpuid(void); > + > #endif /* SELFTEST_KVM_UTIL_BASE_H */ > diff --git a/tools/testing/selftests/kvm/lib/riscv/processor.c b/tools/testing/selftests/kvm/lib/riscv/processor.c > index efd9ac4b0198..39a1e9902dec 100644 > --- a/tools/testing/selftests/kvm/lib/riscv/processor.c > +++ b/tools/testing/selftests/kvm/lib/riscv/processor.c > @@ -316,6 +316,9 @@ struct kvm_vcpu *vm_arch_vcpu_add(struct kvm_vm *vm, uint32_t vcpu_id, > vcpu_set_reg(vcpu, RISCV_CORE_REG(regs.sp), stack_vaddr + stack_size); > vcpu_set_reg(vcpu, RISCV_CORE_REG(regs.pc), (unsigned long)guest_code); > > + /* Setup sscratch for guest_get_vcpuid() */ > + vcpu_set_reg(vcpu, RISCV_CSR_REG(sscratch), vcpu_id); > + > /* Setup default exception vector of guest */ > vcpu_set_reg(vcpu, RISCV_CSR_REG(stvec), (unsigned long)guest_unexp_trap); > > @@ -436,3 +439,8 @@ void vm_install_interrupt_handler(struct kvm_vm *vm, exception_handler_fn handle > > handlers->exception_handlers[1][0] = handler; > } > + > +uint32_t guest_get_vcpuid(void) > +{ > + return csr_read(CSR_SSCRATCH); > +} > -- > 2.34.1 > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel