From mboxrd@z Thu Jan 1 00:00:00 1970 From: Greg Kroah-Hartman Date: Wed, 11 Oct 2023 09:27:02 +0200 Subject: [PATCH 2/6] RISC-V: KVM: Change the SBI specification version to v2.0 In-Reply-To: References: <20231010170503.657189-1-apatel@ventanamicro.com> <20231010170503.657189-3-apatel@ventanamicro.com> <2023101013-overfeed-online-7f69@gregkh> Message-ID: <2023101107-endorse-large-ef50@gregkh> List-Id: To: kvm-riscv@lists.infradead.org MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit On Wed, Oct 11, 2023 at 11:49:14AM +0530, Anup Patel wrote: > On Tue, Oct 10, 2023 at 10:43?PM Greg Kroah-Hartman > wrote: > > > > On Tue, Oct 10, 2023 at 10:34:59PM +0530, Anup Patel wrote: > > > We will be implementing SBI DBCN extension for KVM RISC-V so let > > > us change the KVM RISC-V SBI specification version to v2.0. > > > > > > Signed-off-by: Anup Patel > > > --- > > > arch/riscv/include/asm/kvm_vcpu_sbi.h | 2 +- > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > diff --git a/arch/riscv/include/asm/kvm_vcpu_sbi.h b/arch/riscv/include/asm/kvm_vcpu_sbi.h > > > index cdcf0ff07be7..8d6d4dce8a5e 100644 > > > --- a/arch/riscv/include/asm/kvm_vcpu_sbi.h > > > +++ b/arch/riscv/include/asm/kvm_vcpu_sbi.h > > > @@ -11,7 +11,7 @@ > > > > > > #define KVM_SBI_IMPID 3 > > > > > > -#define KVM_SBI_VERSION_MAJOR 1 > > > +#define KVM_SBI_VERSION_MAJOR 2 > > > > What does this number mean? Who checks it? Why do you have to keep > > incrementing it? > > This number is the SBI specification version implemented by KVM RISC-V > for the Guest kernel. > > The original sbi_console_putchar() and sbi_console_getchar() are legacy > functions (aka SBI v0.1) which were introduced a few years back along > with the Linux RISC-V port. > > The latest SBI v2.0 specification (which is now frozen) introduces a new > SBI debug console extension which replaces legacy sbi_console_putchar() > and sbi_console_getchar() functions with better alternatives. > (Refer, https://github.com/riscv-non-isa/riscv-sbi-doc/releases/download/commit-fe4562532a9cc57e5743b6466946c5e5c98c73ca/riscv-sbi.pdf) > > This series adds SBI debug console implementation in KVM RISC-V > so the SBI specification version advertised by KVM RISC-V must also be > upgraded to v2.0. > > Regarding who checks its, the SBI client drivers in the Linux kernel > will check SBI specification version implemented by higher privilege > mode (M-mode firmware or HS-mode hypervisor) before probing > the SBI extension. For example, the HVC SBI driver (PATCH5) > will ensure SBI spec version to be at least v2.0 before probing > SBI debug console extension. Is this api backwards compatible, or did you just break existing userspace that only expects version 1.0? thanks, greg k-h 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 20BA0CD98F6 for ; Wed, 11 Oct 2023 07:27:20 +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=AGRPCFMroosakwHRP7m18vC1AY3+Jl0rqWRdTnLte4U=; b=kjThUm92fGOxTm Wn+rglBbBADDgyQSTjr6I5XS2x7naCmaBJuqdFGotsI8KDj3hJ95fk6CHQsaftCZfMhX4mXUqoAHK aiEfB47abRFdEBCVQZ0jQJHUmNaIbvZ6n8DG0B3g6Ov7j75rv9eNbAfIhPj7KgzPN56u1pViLwpHS w+4d86FccvqFd13xrdw121a5T/Fy2CmZFO7PLioZEzNEGtg7Llpe6WMTEjqhRUbT2tF4eJdKhcXM+ mi21V6suaHBU2s703ZLFVak05YPlKGO53cSn3T6w18EPprBv6l7Gbo8tC4qurHOcYdSoCSwg36W7m RspqTJScKIVqpiAw2Gug==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qqTcc-00F51U-1j; Wed, 11 Oct 2023 07:27:10 +0000 Received: from dfw.source.kernel.org ([2604:1380:4641:c500::1]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qqTcZ-00F50V-3C; Wed, 11 Oct 2023 07:27:09 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id E195661811; Wed, 11 Oct 2023 07:27:05 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 03683C433C7; Wed, 11 Oct 2023 07:27:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1697009225; bh=wdBRBWPG1q+slhhNVCbJyKyr4zxhG5iWNoRBaC45st0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=sM6P/GYLthcfQbXg4JirQV4bK0QZKxkEghoQcQYgs8kX/K4EDu95Wcn6L8UQnSDWW rZf7pdAcvMFZONtoU2fTHSUZHnC60MjoaJkIYNcuGZQyH3EmdflPgP4Jl75eTej5di KYtj+i110e2I/lBBebrafdiPPzsNzo4mviAIPdOE= Date: Wed, 11 Oct 2023 09:27:02 +0200 From: Greg Kroah-Hartman To: Anup Patel Cc: Paolo Bonzini , Atish Patra , Palmer Dabbelt , Paul Walmsley , Jiri Slaby , Conor Dooley , Andrew Jones , kvm@vger.kernel.org, kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org, linux-serial@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 2/6] RISC-V: KVM: Change the SBI specification version to v2.0 Message-ID: <2023101107-endorse-large-ef50@gregkh> References: <20231010170503.657189-1-apatel@ventanamicro.com> <20231010170503.657189-3-apatel@ventanamicro.com> <2023101013-overfeed-online-7f69@gregkh> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231011_002708_112550_275E32FF X-CRM114-Status: GOOD ( 23.35 ) X-BeenThere: linux-riscv@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="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org T24gV2VkLCBPY3QgMTEsIDIwMjMgYXQgMTE6NDk6MTRBTSArMDUzMCwgQW51cCBQYXRlbCB3cm90 ZToKPiBPbiBUdWUsIE9jdCAxMCwgMjAyMyBhdCAxMDo0M+KAr1BNIEdyZWcgS3JvYWgtSGFydG1h bgo+IDxncmVna2hAbGludXhmb3VuZGF0aW9uLm9yZz4gd3JvdGU6Cj4gPgo+ID4gT24gVHVlLCBP Y3QgMTAsIDIwMjMgYXQgMTA6MzQ6NTlQTSArMDUzMCwgQW51cCBQYXRlbCB3cm90ZToKPiA+ID4g V2Ugd2lsbCBiZSBpbXBsZW1lbnRpbmcgU0JJIERCQ04gZXh0ZW5zaW9uIGZvciBLVk0gUklTQy1W IHNvIGxldAo+ID4gPiB1cyBjaGFuZ2UgdGhlIEtWTSBSSVNDLVYgU0JJIHNwZWNpZmljYXRpb24g dmVyc2lvbiB0byB2Mi4wLgo+ID4gPgo+ID4gPiBTaWduZWQtb2ZmLWJ5OiBBbnVwIFBhdGVsIDxh cGF0ZWxAdmVudGFuYW1pY3JvLmNvbT4KPiA+ID4gLS0tCj4gPiA+ICBhcmNoL3Jpc2N2L2luY2x1 ZGUvYXNtL2t2bV92Y3B1X3NiaS5oIHwgMiArLQo+ID4gPiAgMSBmaWxlIGNoYW5nZWQsIDEgaW5z ZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCj4gPiA+Cj4gPiA+IGRpZmYgLS1naXQgYS9hcmNoL3Jp c2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oIGIvYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9r dm1fdmNwdV9zYmkuaAo+ID4gPiBpbmRleCBjZGNmMGZmMDdiZTcuLjhkNmQ0ZGNlOGE1ZSAxMDA2 NDQKPiA+ID4gLS0tIGEvYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9rdm1fdmNwdV9zYmkuaAo+ID4g PiArKysgYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oCj4gPiA+IEBAIC0x MSw3ICsxMSw3IEBACj4gPiA+Cj4gPiA+ICAjZGVmaW5lIEtWTV9TQklfSU1QSUQgMwo+ID4gPgo+ ID4gPiAtI2RlZmluZSBLVk1fU0JJX1ZFUlNJT05fTUFKT1IgMQo+ID4gPiArI2RlZmluZSBLVk1f U0JJX1ZFUlNJT05fTUFKT1IgMgo+ID4KPiA+IFdoYXQgZG9lcyB0aGlzIG51bWJlciBtZWFuPyAg V2hvIGNoZWNrcyBpdD8gIFdoeSBkbyB5b3UgaGF2ZSB0byBrZWVwCj4gPiBpbmNyZW1lbnRpbmcg aXQ/Cj4gCj4gVGhpcyBudW1iZXIgaXMgdGhlIFNCSSBzcGVjaWZpY2F0aW9uIHZlcnNpb24gaW1w bGVtZW50ZWQgYnkgS1ZNIFJJU0MtVgo+IGZvciB0aGUgR3Vlc3Qga2VybmVsLgo+IAo+IFRoZSBv cmlnaW5hbCBzYmlfY29uc29sZV9wdXRjaGFyKCkgYW5kIHNiaV9jb25zb2xlX2dldGNoYXIoKSBh cmUgbGVnYWN5Cj4gZnVuY3Rpb25zIChha2EgU0JJIHYwLjEpIHdoaWNoIHdlcmUgaW50cm9kdWNl ZCBhIGZldyB5ZWFycyBiYWNrIGFsb25nCj4gd2l0aCB0aGUgTGludXggUklTQy1WIHBvcnQuCj4g Cj4gVGhlIGxhdGVzdCBTQkkgdjIuMCBzcGVjaWZpY2F0aW9uICh3aGljaCBpcyBub3cgZnJvemVu KSBpbnRyb2R1Y2VzIGEgbmV3Cj4gU0JJIGRlYnVnIGNvbnNvbGUgZXh0ZW5zaW9uIHdoaWNoIHJl cGxhY2VzIGxlZ2FjeSBzYmlfY29uc29sZV9wdXRjaGFyKCkKPiBhbmQgc2JpX2NvbnNvbGVfZ2V0 Y2hhcigpIGZ1bmN0aW9ucyB3aXRoIGJldHRlciBhbHRlcm5hdGl2ZXMuCj4gKFJlZmVyLCBodHRw czovL2dpdGh1Yi5jb20vcmlzY3Ytbm9uLWlzYS9yaXNjdi1zYmktZG9jL3JlbGVhc2VzL2Rvd25s b2FkL2NvbW1pdC1mZTQ1NjI1MzJhOWNjNTdlNTc0M2I2NDY2OTQ2YzVlNWM5OGM3M2NhL3Jpc2N2 LXNiaS5wZGYpCj4gCj4gVGhpcyBzZXJpZXMgYWRkcyBTQkkgZGVidWcgY29uc29sZSBpbXBsZW1l bnRhdGlvbiBpbiBLVk0gUklTQy1WCj4gc28gdGhlIFNCSSBzcGVjaWZpY2F0aW9uIHZlcnNpb24g YWR2ZXJ0aXNlZCBieSBLVk0gUklTQy1WIG11c3QgYWxzbyBiZQo+IHVwZ3JhZGVkIHRvIHYyLjAu Cj4gCj4gUmVnYXJkaW5nIHdobyBjaGVja3MgaXRzLCB0aGUgU0JJIGNsaWVudCBkcml2ZXJzIGlu IHRoZSBMaW51eCBrZXJuZWwKPiB3aWxsIGNoZWNrIFNCSSBzcGVjaWZpY2F0aW9uIHZlcnNpb24g aW1wbGVtZW50ZWQgYnkgaGlnaGVyIHByaXZpbGVnZQo+IG1vZGUgKE0tbW9kZSBmaXJtd2FyZSBv ciBIUy1tb2RlIGh5cGVydmlzb3IpIGJlZm9yZSBwcm9iaW5nCj4gdGhlIFNCSSBleHRlbnNpb24u IEZvciBleGFtcGxlLCB0aGUgSFZDIFNCSSBkcml2ZXIgKFBBVENINSkKPiB3aWxsIGVuc3VyZSBT Qkkgc3BlYyB2ZXJzaW9uIHRvIGJlIGF0IGxlYXN0IHYyLjAgYmVmb3JlIHByb2JpbmcKPiBTQkkg ZGVidWcgY29uc29sZSBleHRlbnNpb24uCgpJcyB0aGlzIGFwaSBiYWNrd2FyZHMgY29tcGF0aWJs ZSwgb3IgZGlkIHlvdSBqdXN0IGJyZWFrIGV4aXN0aW5nCnVzZXJzcGFjZSB0aGF0IG9ubHkgZXhw ZWN0cyB2ZXJzaW9uIDEuMD8KCnRoYW5rcywKCmdyZWcgay1oCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1yaXNjdiBtYWlsaW5nIGxpc3QKbGlu dXgtcmlzY3ZAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2xpbnV4LXJpc2N2Cg== 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 51731CD98F6 for ; Wed, 11 Oct 2023 07:27:08 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344707AbjJKH1I (ORCPT ); Wed, 11 Oct 2023 03:27:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44422 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344185AbjJKH1H (ORCPT ); Wed, 11 Oct 2023 03:27:07 -0400 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E870B98; Wed, 11 Oct 2023 00:27:05 -0700 (PDT) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 03683C433C7; Wed, 11 Oct 2023 07:27:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1697009225; bh=wdBRBWPG1q+slhhNVCbJyKyr4zxhG5iWNoRBaC45st0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=sM6P/GYLthcfQbXg4JirQV4bK0QZKxkEghoQcQYgs8kX/K4EDu95Wcn6L8UQnSDWW rZf7pdAcvMFZONtoU2fTHSUZHnC60MjoaJkIYNcuGZQyH3EmdflPgP4Jl75eTej5di KYtj+i110e2I/lBBebrafdiPPzsNzo4mviAIPdOE= Date: Wed, 11 Oct 2023 09:27:02 +0200 From: Greg Kroah-Hartman To: Anup Patel Cc: Paolo Bonzini , Atish Patra , Palmer Dabbelt , Paul Walmsley , Jiri Slaby , Conor Dooley , Andrew Jones , kvm@vger.kernel.org, kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org, linux-serial@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 2/6] RISC-V: KVM: Change the SBI specification version to v2.0 Message-ID: <2023101107-endorse-large-ef50@gregkh> References: <20231010170503.657189-1-apatel@ventanamicro.com> <20231010170503.657189-3-apatel@ventanamicro.com> <2023101013-overfeed-online-7f69@gregkh> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-serial@vger.kernel.org On Wed, Oct 11, 2023 at 11:49:14AM +0530, Anup Patel wrote: > On Tue, Oct 10, 2023 at 10:43 PM Greg Kroah-Hartman > wrote: > > > > On Tue, Oct 10, 2023 at 10:34:59PM +0530, Anup Patel wrote: > > > We will be implementing SBI DBCN extension for KVM RISC-V so let > > > us change the KVM RISC-V SBI specification version to v2.0. > > > > > > Signed-off-by: Anup Patel > > > --- > > > arch/riscv/include/asm/kvm_vcpu_sbi.h | 2 +- > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > diff --git a/arch/riscv/include/asm/kvm_vcpu_sbi.h b/arch/riscv/include/asm/kvm_vcpu_sbi.h > > > index cdcf0ff07be7..8d6d4dce8a5e 100644 > > > --- a/arch/riscv/include/asm/kvm_vcpu_sbi.h > > > +++ b/arch/riscv/include/asm/kvm_vcpu_sbi.h > > > @@ -11,7 +11,7 @@ > > > > > > #define KVM_SBI_IMPID 3 > > > > > > -#define KVM_SBI_VERSION_MAJOR 1 > > > +#define KVM_SBI_VERSION_MAJOR 2 > > > > What does this number mean? Who checks it? Why do you have to keep > > incrementing it? > > This number is the SBI specification version implemented by KVM RISC-V > for the Guest kernel. > > The original sbi_console_putchar() and sbi_console_getchar() are legacy > functions (aka SBI v0.1) which were introduced a few years back along > with the Linux RISC-V port. > > The latest SBI v2.0 specification (which is now frozen) introduces a new > SBI debug console extension which replaces legacy sbi_console_putchar() > and sbi_console_getchar() functions with better alternatives. > (Refer, https://github.com/riscv-non-isa/riscv-sbi-doc/releases/download/commit-fe4562532a9cc57e5743b6466946c5e5c98c73ca/riscv-sbi.pdf) > > This series adds SBI debug console implementation in KVM RISC-V > so the SBI specification version advertised by KVM RISC-V must also be > upgraded to v2.0. > > Regarding who checks its, the SBI client drivers in the Linux kernel > will check SBI specification version implemented by higher privilege > mode (M-mode firmware or HS-mode hypervisor) before probing > the SBI extension. For example, the HVC SBI driver (PATCH5) > will ensure SBI spec version to be at least v2.0 before probing > SBI debug console extension. Is this api backwards compatible, or did you just break existing userspace that only expects version 1.0? thanks, greg k-h 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 lists.ozlabs.org (lists.ozlabs.org [112.213.38.117]) (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 9476DCD98F5 for ; Wed, 11 Oct 2023 07:28:00 +0000 (UTC) Authentication-Results: lists.ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.a=rsa-sha256 header.s=korg header.b=sM6P/GYL; dkim-atps=neutral Received: from boromir.ozlabs.org (localhost [IPv6:::1]) by lists.ozlabs.org (Postfix) with ESMTP id 4S549q0WCrz3vXJ for ; Wed, 11 Oct 2023 18:27:59 +1100 (AEDT) Authentication-Results: lists.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.a=rsa-sha256 header.s=korg header.b=sM6P/GYL; dkim-atps=neutral Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=linuxfoundation.org (client-ip=139.178.84.217; helo=dfw.source.kernel.org; envelope-from=gregkh@linuxfoundation.org; receiver=lists.ozlabs.org) Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4S548r40Dtz300f for ; Wed, 11 Oct 2023 18:27:08 +1100 (AEDT) Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id E195661811; Wed, 11 Oct 2023 07:27:05 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 03683C433C7; Wed, 11 Oct 2023 07:27:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1697009225; bh=wdBRBWPG1q+slhhNVCbJyKyr4zxhG5iWNoRBaC45st0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=sM6P/GYLthcfQbXg4JirQV4bK0QZKxkEghoQcQYgs8kX/K4EDu95Wcn6L8UQnSDWW rZf7pdAcvMFZONtoU2fTHSUZHnC60MjoaJkIYNcuGZQyH3EmdflPgP4Jl75eTej5di KYtj+i110e2I/lBBebrafdiPPzsNzo4mviAIPdOE= Date: Wed, 11 Oct 2023 09:27:02 +0200 From: Greg Kroah-Hartman To: Anup Patel Subject: Re: [PATCH 2/6] RISC-V: KVM: Change the SBI specification version to v2.0 Message-ID: <2023101107-endorse-large-ef50@gregkh> References: <20231010170503.657189-1-apatel@ventanamicro.com> <20231010170503.657189-3-apatel@ventanamicro.com> <2023101013-overfeed-online-7f69@gregkh> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-serial@vger.kernel.org, kvm@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, Atish Patra , linux-kernel@vger.kernel.org, Conor Dooley , Palmer Dabbelt , kvm-riscv@lists.infradead.org, Paul Walmsley , Paolo Bonzini , linux-riscv@lists.infradead.org, Jiri Slaby , Andrew Jones Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" On Wed, Oct 11, 2023 at 11:49:14AM +0530, Anup Patel wrote: > On Tue, Oct 10, 2023 at 10:43 PM Greg Kroah-Hartman > wrote: > > > > On Tue, Oct 10, 2023 at 10:34:59PM +0530, Anup Patel wrote: > > > We will be implementing SBI DBCN extension for KVM RISC-V so let > > > us change the KVM RISC-V SBI specification version to v2.0. > > > > > > Signed-off-by: Anup Patel > > > --- > > > arch/riscv/include/asm/kvm_vcpu_sbi.h | 2 +- > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > diff --git a/arch/riscv/include/asm/kvm_vcpu_sbi.h b/arch/riscv/include/asm/kvm_vcpu_sbi.h > > > index cdcf0ff07be7..8d6d4dce8a5e 100644 > > > --- a/arch/riscv/include/asm/kvm_vcpu_sbi.h > > > +++ b/arch/riscv/include/asm/kvm_vcpu_sbi.h > > > @@ -11,7 +11,7 @@ > > > > > > #define KVM_SBI_IMPID 3 > > > > > > -#define KVM_SBI_VERSION_MAJOR 1 > > > +#define KVM_SBI_VERSION_MAJOR 2 > > > > What does this number mean? Who checks it? Why do you have to keep > > incrementing it? > > This number is the SBI specification version implemented by KVM RISC-V > for the Guest kernel. > > The original sbi_console_putchar() and sbi_console_getchar() are legacy > functions (aka SBI v0.1) which were introduced a few years back along > with the Linux RISC-V port. > > The latest SBI v2.0 specification (which is now frozen) introduces a new > SBI debug console extension which replaces legacy sbi_console_putchar() > and sbi_console_getchar() functions with better alternatives. > (Refer, https://github.com/riscv-non-isa/riscv-sbi-doc/releases/download/commit-fe4562532a9cc57e5743b6466946c5e5c98c73ca/riscv-sbi.pdf) > > This series adds SBI debug console implementation in KVM RISC-V > so the SBI specification version advertised by KVM RISC-V must also be > upgraded to v2.0. > > Regarding who checks its, the SBI client drivers in the Linux kernel > will check SBI specification version implemented by higher privilege > mode (M-mode firmware or HS-mode hypervisor) before probing > the SBI extension. For example, the HVC SBI driver (PATCH5) > will ensure SBI spec version to be at least v2.0 before probing > SBI debug console extension. Is this api backwards compatible, or did you just break existing userspace that only expects version 1.0? thanks, greg k-h