Received: by 2002:a05:6a10:1a4d:0:0:0:0 with SMTP id nk13csp2140778pxb; Wed, 2 Feb 2022 23:26:11 -0800 (PST) X-Google-Smtp-Source: ABdhPJwumU/7Ge49hprJTn/tVFZ+wLOvdtbaAOuAqaueCMY1uw82rWM10y1wPUKGY7dz0xa8JCMB X-Received: by 2002:a17:902:f682:: with SMTP id l2mr33857174plg.114.1643873171007; Wed, 02 Feb 2022 23:26:11 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1643873171; cv=none; d=google.com; s=arc-20160816; b=q7AuuQX6yLUbPKKHINS+Gz6OJ6NlGUwifBlcM4K9gN0BQq/BuesjBjDm7wXGAYdpU+ Lc5436Ymavqp8rQUGvjQJuyZveeZJX8A/8WKL0s4mN8vMRaG6bpoI4Xqd2N+MQNM8b84 aw0V31/6A5EoTRsdm6frkQ0W8hTctf4GicYLObW1ADEgpJCbQ1R42VA1uhH1QDtnIvox rPU1h3KzJfeF5jeocz6M49nI3pbVvHZgPi5MhvOTX//cCHDGsi4+jdT1ecQWOTykKBp/ 6XFl9kAOsV9B8zUBPF41ABcc9y/s70kUNHsbmuP90LewO7m9jFqlzYRE/VNY1rpGHp9f 9RwQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=ut1heMlmneP+6IiHVYaCsRV+iQnMtY/plsON5gFnw/s=; b=nU8aBGdgafc0CGVxKEWTX2OW3uVlnewJqYCqLsxsZmnexyxsuW6gG6ovcZi9fwrkXH I9ojru7VJsYQTPSyfIBUQLUySsrSTkb+0Xgw3pXAgOIJGMz3Z065bL5h3o5pvw4Oyk4S SeXOmjBs61Mph3GnBV1Oo9UfYvVB4FK6k3ZKi+5OWl6eJUqAf/tKzpsyBWgPrkVsRH78 no7gFZBOz1dW9STV87om+6UulWS06X0MZys6LEfjiTh/fX9l7AKQo22/RU60lMSeZEab MC9QrY4je0ASQGSuEGhxUlE74SqHvsNM7rxUMLR4zTJReogV4h6RFfeuIQkN9VrKldat a9rA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ventanamicro.com header.s=google header.b=pSxMvG+e; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id u22si6884211pjx.70.2022.02.02.23.25.59; Wed, 02 Feb 2022 23:26:10 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@ventanamicro.com header.s=google header.b=pSxMvG+e; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236425AbiBBN3d (ORCPT + 99 others); Wed, 2 Feb 2022 08:29:33 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56014 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229829AbiBBN3c (ORCPT ); Wed, 2 Feb 2022 08:29:32 -0500 Received: from mail-lj1-x229.google.com (mail-lj1-x229.google.com [IPv6:2a00:1450:4864:20::229]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 04CFBC061714 for ; Wed, 2 Feb 2022 05:29:32 -0800 (PST) Received: by mail-lj1-x229.google.com with SMTP id z7so28931655ljj.4 for ; Wed, 02 Feb 2022 05:29:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ventanamicro.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=ut1heMlmneP+6IiHVYaCsRV+iQnMtY/plsON5gFnw/s=; b=pSxMvG+egIt4WW80jF9dDVL3Z8lG/xgxzcN3gE1P+6SGJWoI6nsWsoHQEl+4+ug4UX gOar1xx+mu87pvf4RiobK4x+KVC1BJ0rMGMqGoKBLxkSpfVs45nt0jEUavC6xXXffZGS 3a77UePfRjq+OPgpZjJkUwohMc5aUQDULSqqZwagYfF0RicMliSE9QWN0Hrn0IuXxiAt c9ViyFifNmmf1QaV6qNZXiz2p1HT/DmQ2aV8i4BCX+OIXIhGarMZzkeX/thOFYt3BPi1 X8hme+1Sv7Cr9o2AxrucOVRe6/pynI7ogzarWIANwAiNk6dOQAL3W7orgc2jNEDuDVzJ upnw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ut1heMlmneP+6IiHVYaCsRV+iQnMtY/plsON5gFnw/s=; b=bi+SL0x1b9CjWMqtx+5BD9xUAuOMPFwZbwptnujrGOicxO7EZGKgYVASNSkkvpqxv9 NG9kP4BSMohLF1K807ZJ99+iNYYFJePeMeSCbskFzlOTtbziZ6buJoRO2iUJpSqGleB0 MnkFx2rSgVYBiEZ/cinmCRIh+vfe2LrZqmYU6xpBqubw85otpPWXRXTaP95EJTnvsjIR RpV1q0MMglnc3bowzUGnNCxJu1yvpMyLMY/bKWInz7CjUubOJRIZmhH/Xb3ADC5PSSLF YNmVf/r3778b9hLehytTboLXBjEH6oJW2evzBlj0pjaK5aIhzCgdK6xfeJiOOz4xh8MD VR+A== X-Gm-Message-State: AOAM533CnOT+ZUn5ihr0RyLpULwKT3NJfwGWopS1MlLYyn+NNUhScA8w scAet5scJJq9HFHw3vsRr7raegKy5fmkM3PYy9llxviaNSL5kQ== X-Received: by 2002:a05:651c:a0b:: with SMTP id k11mr15027229ljq.266.1643808570290; Wed, 02 Feb 2022 05:29:30 -0800 (PST) MIME-Version: 1.0 References: <20220131110307.1684739-1-mchitale@ventanamicro.com> In-Reply-To: From: Anup Patel Date: Wed, 2 Feb 2022 18:59:18 +0530 Message-ID: Subject: Re: [PATCH] RISC-V: KVM: make CY, TM, and IR counters accessible in VU mode To: Jessica Clarke Cc: Anup Patel , Mayuresh Chitale , Atish Patra , Palmer Dabbelt , kvm-riscv@lists.infradead.org, linux-riscv , "linux-kernel@vger.kernel.org List" Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Feb 2, 2022 at 6:49 PM Jessica Clarke wrote: > > On 2 Feb 2022, at 11:14, Anup Patel wrote: > > > > On Mon, Jan 31, 2022 at 4:33 PM Mayuresh Chitale > > wrote: > >> > >> Those applications that run in VU mode and access the time CSR cause > >> a virtual instruction trap as Guest kernel currently does not > >> initialize the scounteren CSR. > >> > >> To fix this, we should make CY, TM, and IR counters accessibile > >> by default in VU mode (similar to OpenSBI). > >> > >> Fixes: a33c72faf2d73 ("RISC-V: KVM: Implement VCPU create, init and > >> destroy functions") > >> Cc:stable@vger.kernel.org > >> Signed-off-by: Mayuresh Chitale > > > > Thanks, I have queued this for fixes. > > The formatting is clearly wrong... I have updated this in my fixes queue. > > > Regards, > > Anup > > > >> --- > >> arch/riscv/kvm/vcpu.c | 4 ++++ > >> 1 file changed, 4 insertions(+) > >> > >> diff --git a/arch/riscv/kvm/vcpu.c b/arch/riscv/kvm/vcpu.c > >> index 0c5239e05721..caaf824347b9 100644 > >> --- a/arch/riscv/kvm/vcpu.c > >> +++ b/arch/riscv/kvm/vcpu.c > >> @@ -90,6 +90,7 @@ int kvm_arch_vcpu_precreate(struct kvm *kvm, unsigned int id) > >> int kvm_arch_vcpu_create(struct kvm_vcpu *vcpu) > >> { > >> struct kvm_cpu_context *cntx; > >> + struct kvm_vcpu_csr *reset_csr = &vcpu->arch.guest_reset_csr; > >> > >> /* Mark this VCPU never ran */ > >> vcpu->arch.ran_atleast_once = false; > >> @@ -106,6 +107,9 @@ int kvm_arch_vcpu_create(struct kvm_vcpu *vcpu) > >> cntx->hstatus |= HSTATUS_SPVP; > >> cntx->hstatus |= HSTATUS_SPV; > >> > >> + /* By default, make CY, TM, and IR counters accessible in VU mode */ > >> + reset_csr->scounteren=0x7; > > ... here Same as above, I have updated this my queue as well. Thanks, Anup > > Jess > > >> + > >> /* Setup VCPU timer */ > >> kvm_riscv_vcpu_timer_init(vcpu); > >> > >> -- > >> 2.25.1 > >> > > > > _______________________________________________ > > linux-riscv mailing list > > linux-riscv@lists.infradead.org > > http://lists.infradead.org/mailman/listinfo/linux-riscv >