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 6291AC77B7F for ; Tue, 24 Jun 2025 00:31:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Type:MIME-Version: References:In-Reply-To:Subject:Cc:To:From:Message-ID:Date:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=V/gnO49ipbVQfoRjUTAo8XJ0Syz4un4P+oYU1S0eLwk=; b=lBIjFwqppOLUEWycymR82+jp9G gv5iXBxT2hKyoYTO37QNk4HoaUXqZ275jD/2xIdzUpw9qbFRpm/iX/lG0qOajfp3qvs9Kfcjl9f6h 62EZoAxxwHOgoo79wb4wVOAyrFx7qjClJD0twEMhvxUaMMDx+dcIX/qokOEqPjDmZAguK+N+X/WSa xZw/VDWvGKapeZuSFkj5C2ijKSxwiFMmEsqLYNhL3D40qxdADjvNsNcKAsccoOWXzDEFqlCjCIbT1 01KDLUKjoJP57aTRiHZMqieYqyKB5EkKhGTMHIiP2j5O9Q61ABK7UerzGWc7PLNAK4pmAM2cmtB/i Mvr4wxEQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1uTrZC-00000004F1Z-2pAK; Tue, 24 Jun 2025 00:31:14 +0000 Received: from dfw.source.kernel.org ([2604:1380:4641:c500::1]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1uTht4-00000002zPs-3N6J for linux-arm-kernel@lists.infradead.org; Mon, 23 Jun 2025 14:11:07 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 7C5495C54AF; Mon, 23 Jun 2025 14:08:49 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A196EC4CEEA; Mon, 23 Jun 2025 14:11:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1750687865; bh=S2l2sY8x6ARHJCtqhLtvEeZM+BBhQzDuZlxOYaXKcro=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=mndeAcmiY8OItl4Ckcb2czE0f2tEwgc3Cau0eEXESzK/XDwyuIwW0rhXkL+s0pwBY 9Ud3mGQwNkC738m+R6Tsbc8fQ5gAF4v4Cudno6MaO+TV/UTxzMqAywc7h7+8MrT9I9 JyB4gLClWPxobJjjk6yf/Tps6oJKt3p4dRABaopcFAqrUCOwpIdA5c4rG0RWplbL8P yO0Exd2e313f3404E0BbmIjKW87GovUfFAmAXYofrbqD7m2rjH2bGk8fqKmuE26uxm 8b1tO3NrRaKmViaTf5qKh6tiS/cqmrA1ModCeRVuafw2Duvx7iQtZaX/2+xPO52UXy c13lMLJ3DN/zQ== Received: from sofa.misterjones.org ([185.219.108.64] helo=goblin-girl.misterjones.org) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.95) (envelope-from ) id 1uTht1-009Dbr-6F; Mon, 23 Jun 2025 15:11:03 +0100 Date: Mon, 23 Jun 2025 15:11:02 +0100 Message-ID: <867c12czux.wl-maz@kernel.org> From: Marc Zyngier To: Ganapatrao Kulkarni Cc: Eric Auger , linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, oliver.upton@linux.dev, joey.gouly@arm.com, suzuki.poulose@arm.com, yuzenghui@huawei.com, seanjc@google.com, darren@os.amperecomputing.com Subject: Re: [RFC PATCH v2 0/9] KVM: Enable Nested Virt selftests In-Reply-To: <9d5d82f1-b488-4b0a-98c2-27e95d63fc5c@os.amperecomputing.com> References: <20250512105251.577874-1-gankulkarni@os.amperecomputing.com> <92c7e99c-5574-422c-92f1-62d5cde58fec@redhat.com> <7bf7bd52-7553-42a7-afdb-a5e95f8699b5@os.amperecomputing.com> <86a56veiyy.wl-maz@kernel.org> <3be548bf-aee4-46ab-bcbf-15bf629b24da@os.amperecomputing.com> <86jz58c5ut.wl-maz@kernel.org> <9d5d82f1-b488-4b0a-98c2-27e95d63fc5c@os.amperecomputing.com> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/30.1 (aarch64-unknown-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-SA-Exim-Connect-IP: 185.219.108.64 X-SA-Exim-Rcpt-To: gankulkarni@os.amperecomputing.com, eauger@redhat.com, linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, oliver.upton@linux.dev, joey.gouly@arm.com, suzuki.poulose@arm.com, yuzenghui@huawei.com, seanjc@google.com, darren@os.amperecomputing.com X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250623_071106_918433_900F140E X-CRM114-Status: GOOD ( 23.87 ) 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: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Mon, 23 Jun 2025 11:31:32 +0100, Ganapatrao Kulkarni wrote: > > On 6/19/2025 5:15 PM, Marc Zyngier wrote: > >> > > >>> Also, running EL2 is the least of our worries, because that's pretty > >>> easy to deal with. It is running at EL1/0 when EL2 is present that is > >>> interesting, and I see no coverage on that front. > >> > >> Sorry, I did not get this comment fully. > >> When we run selftest on Host with -g option, the guest code will run in vEL2 as L1. > >> This is implemented as per comment in V1. > >> > >> When we run same selftest from L1 shell, then guest_code will be running in EL0/1 like running from L0. > > > > What good does this bring us if we need to boot a full guest OS to run > > tests? What we need is synthetic tests that implement the whole stack: > > > > - L1 guest hypervisor > > - L2 guest hypervisor > > - L2 guest > > - L3 guest hypervisor > > - L3 guest > > - [...] > > IIUC, selftest leverages host OS support and uses various IOCTLs to > support the guest_code run. Are you saying to implement all this > again (without OS help) in guest_code to run it as hypervisor and > launch guest_code2 as NestedVM?. The whole point of having small selftests is to run something that is simpler several orders of magnitude simpler than the full blown OS/hypervisor. So indeed, I'm asking for selftests that build chains of guests up to some level and verify that the nesting, as described in the architecture, works correctly. > It seems to be complicated, doesn't it? Yes, it is complicated. What did you expect? M. -- Without deviation from the norm, progress is not possible.