From patchwork Sun Feb 25 09:02:36 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wei-Lin Chang X-Patchwork-Id: 13570775 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 90835C47DD9 for ; Sun, 25 Feb 2024 09:03:26 +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:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=J/m5ydk//qPmqjsg4la7vwDJ60DFCPLbjK2ooLa3fvw=; b=aqBfJJ364M+kOZ R8LwFQa0nRh4mX+C3c+Mz8V1M4jgzGA9y/uGeneFlMoPKVIeliUkhfPJ7CZ4xobEMsTau5Ldnc5eh pZRbXLcUkhSnsX+NmIsCf5Ngy7QQYKzwR5moxqmiiCEQ+J07HUCUkIbTQBGoPQ9zzTXhPbAVe22Ro RA7SeKbBwsAz+1Wq3lwLJ6zIIpVy+HNv1miwAj3btkt5rzwDuSlKQ22TYMv2EPpe4zMVvqBKbiwsN 3u1184c5nu0mdohJV7FSHvXSzZe0cUIGkdJ1A8URUWRimrWwra5aQ6XWQf6pkxw7KPBx/X9mvbg1E wG+shqQtgBtKuF+F+pMA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1reAPb-0000000Ei7x-3fWx; Sun, 25 Feb 2024 09:03:07 +0000 Received: from mail-pg1-x536.google.com ([2607:f8b0:4864:20::536]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1reAPY-0000000Ei7R-0Oe7 for linux-arm-kernel@lists.infradead.org; Sun, 25 Feb 2024 09:03:06 +0000 Received: by mail-pg1-x536.google.com with SMTP id 41be03b00d2f7-5d8b276979aso1704783a12.2 for ; Sun, 25 Feb 2024 01:02:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=csie.ntu.edu.tw; s=google; t=1708851778; x=1709456578; darn=lists.infradead.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=V4hwb3pMKOhklL904VE2Zqtqr31z33P4MP5BzucroJg=; b=FcuoxgACJx2PWfuFMNxYC5S4bARRvYFWSU7LJpMoFtVJXWW+QqkOpXgWUzMrjHbEUF FUf1Xg9hiJUMrqYDJqwaMKG1+Vm+Xy8lOOxZBT0gue6yCgLiMqjmdxU0780vHlRIJqOA KSc2nrMWWYN5qCYaydzAceVqbP2br7KgTqiogiizvxgd9jAA2lUNwvVLkIEUYm/6Gn6m EkTvAd3wgb/0mqfOOkTOMcSG31VPhy1MIV/ZEs8AozdnEsQ6llqZILrt37YYhlDuoqKs 5lgzQuxYrM4te1tdD85mewQBx2CWs+ILOM51X4xP4LjQHkQuxDoMGa9BVLB6PIiP8zM9 PsrA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1708851778; x=1709456578; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=V4hwb3pMKOhklL904VE2Zqtqr31z33P4MP5BzucroJg=; b=QkfSLIm/5teu+IWsEjzOeQf9QqOu9ZYw8485lHzvR2bkVsIHmMo7AU0dIQ8zLvN1Ar F4BfSj5EGf6a0rkU485YdEuKemZ2hzsWdpVzO7yx8Ea0jiFVLEaOdpUmWHizcPbemvCy sRjP4DfT4bfT56GyhwUBG0VZjFhlpoN1XwIR5FzsOg96JZTXRnRudYJmJjUTCjVyBgtR JYJ+iPhPfmXUBlnt0VtqaioOBp/XaZiEBMEyle4HkQhZBvRnp9yUWAAMDLNjXunX/BCX Y2he9eonSSPPgqSW4iJIu2498opM9/Z07Ev0V6+GVwUwm9/s4Bi4ps2WAQbs02GbRUXP wvyA== X-Gm-Message-State: AOJu0YxTygKT9yTPeBBSNHlQqtCzX11ALaXOyfpK1KTQHNqLd4o7VO0a 1ds5KSTI0qkz+ImRl/SyYGCHpEf+Nd40kTF2YV/BVMuvAwHXnGRBPUw3098Mwic5wKD2aAr9UDr r8IKCZhjkVxDGDcqeVmbfVDcVbf1g/nPhST4D35tXFVribzBUEOb0jBpiQNxUO4BO7g== X-Google-Smtp-Source: AGHT+IGKAsn5LYGykt9Ucw4vyFygaP3Xutj4HGQWD9tAELbXQUR6KtKqhIGhHTiJVu0ALIpwr2a0Vw== X-Received: by 2002:a17:90b:3609:b0:29a:c027:3983 with SMTP id ml9-20020a17090b360900b0029ac0273983mr6549pjb.36.1708851778031; Sun, 25 Feb 2024 01:02:58 -0800 (PST) Received: from localhost.localdomain (2001-b011-3808-dc23-dcdd-edc7-9b03-9c72.dynamic-ip6.hinet.net. [2001:b011:3808:dc23:dcdd:edc7:9b03:9c72]) by smtp.gmail.com with ESMTPSA id o18-20020a17090ac09200b0029a3da37123sm2298071pjs.23.2024.02.25.01.02.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 25 Feb 2024 01:02:57 -0800 (PST) From: Wei-Lin Chang To: maz@kernel.org, oliver.upton@linux.dev, james.morse@arm.com, suzuki.poulose@arm.com, yuzenghui@huawei.com, catalin.marinas@arm.com, will@kernel.org Cc: linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev, linux-kernel@vger.kernel.org, sauravsc@amazon.com, Wei-Lin Chang Subject: [PATCH 0/1] KVM: arm64: Affinity level 3 support Date: Sun, 25 Feb 2024 17:02:36 +0800 Message-Id: <20240225090237.775573-1-r09922117@csie.ntu.edu.tw> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 X-Gm-Spam: 0 X-Gm-Phishy: 0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240225_010304_413859_1C940982 X-CRM114-Status: GOOD ( 10.33 ) 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 Hi everyone, By supporting Aff3, we not only allow broader usage, but also get the chance to fix the issue pointed out by Saurav [1]. The current code returns 0s for GICR_TYPER[63:56], causing guests to fail when its VCPUs tries to find a matching redistributor, when the VMM programs non-zero values for VCPUs' MPIDR_EL1.Aff3. For testing, both 64-bit (with ICH_VTR_EL2.A3V == 1) and 32-bit guests are ran using QEMU, Aff3 usage is emulated by modifying reset_mpidr to write non-zero test values to MPIDR_EL1.Aff3 when Aff3 is valid, and populating the Aff3 field of kvm_sys_reg_set_user's user given value if r->reg == MPIDR_EL1. The 64-bit case is checked to have MPIDR_EL1.Aff3 populated and both 64-bit and 32-bit guests seem to work with interrupts being delivered properly. Note: I checked with Saurav to make sure he isn't planning on working on this as well. Also thanks for the maintainers for giving directions for improvements in [1]. [1]: https://lore.kernel.org/kvmarm/20240205184326.78814-1-sauravsc@amazon.com/ Wei-Lin Chang (1): KVM: arm64: Affinity level 3 support arch/arm64/kvm/sys_regs.c | 24 +++++++++++++++++++++--- arch/arm64/kvm/vgic/vgic-debug.c | 2 +- arch/arm64/kvm/vgic/vgic-mmio-v3.c | 18 +++++++++++------- include/kvm/arm_vgic.h | 7 ++++++- 4 files changed, 39 insertions(+), 12 deletions(-)