Message ID | 20250218172500.807733-5-tabba@google.com (mailing list archive) |
---|---|
State | New |
Headers | show
Return-Path: <owner-linux-mm@kvack.org> X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id B2621C021AA for <linux-mm@archiver.kernel.org>; Tue, 18 Feb 2025 17:25:16 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EBC5C280166; Tue, 18 Feb 2025 12:25:14 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id E44D728015D; Tue, 18 Feb 2025 12:25:14 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C4874280166; Tue, 18 Feb 2025 12:25:14 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 95D3728015D for <linux-mm@kvack.org>; Tue, 18 Feb 2025 12:25:14 -0500 (EST) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 3E3571402D7 for <linux-mm@kvack.org>; Tue, 18 Feb 2025 17:25:14 +0000 (UTC) X-FDA: 83133741348.19.53AC2EA Received: from mail-wm1-f74.google.com (mail-wm1-f74.google.com [209.85.128.74]) by imf28.hostedemail.com (Postfix) with ESMTP id 58717C000A for <linux-mm@kvack.org>; Tue, 18 Feb 2025 17:25:12 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=tzswN34Q; spf=pass (imf28.hostedemail.com: domain of 3dsK0ZwUKCBMCtuutz77z4x.v75416DG-553Etv3.7Az@flex--tabba.bounces.google.com designates 209.85.128.74 as permitted sender) smtp.mailfrom=3dsK0ZwUKCBMCtuutz77z4x.v75416DG-553Etv3.7Az@flex--tabba.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1739899512; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=eTW5My6K2OM+Dzwm+PfBz15qR/KnyXT0mlOIBk4Z2/A=; b=e8dgGtZuVloQLfhsKcPZjiRlP+gJrvbIGI/lk5H3k8L/UojDKpv8nnxVFfLORUg1VU0brF mKdF4IhBjyAgL+egxHbfqJ1kJfpzpYx5xSUFB+WrfH3I/gJzPXBCt7JVwioBEi8/DGXSb4 CYMpkF+ITxqAQmaZfJMA/+PfHlZ8jYo= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=tzswN34Q; spf=pass (imf28.hostedemail.com: domain of 3dsK0ZwUKCBMCtuutz77z4x.v75416DG-553Etv3.7Az@flex--tabba.bounces.google.com designates 209.85.128.74 as permitted sender) smtp.mailfrom=3dsK0ZwUKCBMCtuutz77z4x.v75416DG-553Etv3.7Az@flex--tabba.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1739899512; a=rsa-sha256; cv=none; b=UcpH4qHf+Xgx9EnmmlK4Dv8o0IGsFNDFcfrfQIOTh6PtYH8/GqzTP+oiWi8z8Gq/k1aruC vMz3K9672Y8KEF80Ahte7GQBzX6H8qquYQBIVEmrKHor6UmxJozfeoSMBP6/NiaoT382Gx LtX/49P8w4F3+IOMK27AnnDX/x3bJtE= Received: by mail-wm1-f74.google.com with SMTP id 5b1f17b1804b1-43935bcec74so30154855e9.3 for <linux-mm@kvack.org>; Tue, 18 Feb 2025 09:25:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1739899511; x=1740504311; darn=kvack.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=eTW5My6K2OM+Dzwm+PfBz15qR/KnyXT0mlOIBk4Z2/A=; b=tzswN34Qf5lGxinVWq3bOUwtCvSYV0ke8d0Qw2X+qSU2jrsRTDYQxZvTQ7lfUHTlTf Cw/0Fbyqi/nKFytQSZ8MI1RPa0N+GrWcm06J8W6IaQo+qpF36KQPZdejt/+J4s8Uk9yp uS46nmEnX0xWDKVz+BbNOSZFevoovy8pkPUZY7vyzswL820VYi/VqobZEuQF1D4i62wb skuAuzwqEg5VJPohmnoElJ/VDqH35VrritiEoQU9ZNHzOozQMLAXS8TNzmu8KtfIg+iV 8LSxR0NF9WHyGIfaknyMBH1f+lGMZ+aFCk9B/5jQe2nykkcaP4izsxDoHjOr5IgotcGk Ttpg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739899511; x=1740504311; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=eTW5My6K2OM+Dzwm+PfBz15qR/KnyXT0mlOIBk4Z2/A=; b=Yk9GBa9eJudsJE/S7i7kRPrlLno/vLZtKwstHoUkg26i/2ez7mB9SeBS6hVfqhutAs +oxa1Uh8N+mnw47WRU3cMjZUTbPVBpRfmEIRGdm2ZpvvXCKo+Ctdfned+vE1ahseZoP1 VHHAWDACcqjvoYd4lCj8S4pZQzAiQI9vyklw4dr2+wDUQjn2/ZWm7k8LT4hgMwa+zNc7 lX9oJSnOuEVSEL2vLQu0wII6MWPnob6YIKG/kcHNCvJmgMDIbc+VeDolwCRPOuUOeyn/ llMN0UOGTFXahubucHLBvTPvLQzh+tyISvQBj/oqNnjwC8lk51b7MXIQfkKF9HBzA6gk f2QA== X-Forwarded-Encrypted: i=1; AJvYcCWsHYYVgWBo/bHuLn9dx838Y3IOG30Mzn84zQwNZqqRvKvkfiG5/JGJmYG7wqO+AkYxLFz3Pbukvg==@kvack.org X-Gm-Message-State: AOJu0YzWZt67YykmGKaqRXmIKcn4DkMcpKdWHlw1j0UxMJqMR2KEslUm Ir9PjmX8i/9ZlncinyKbDRzU83Fteo2TNl1JQ4wcbk2CzI0zMZUyaCo4Oi6zVXqt44fHVxujSQ= = X-Google-Smtp-Source: AGHT+IHuQgBmWKLX/iaLAIhwX+Ygl7SCrjQmYq5mlPdxwxv1m1H3cuEySvE1kherBoZWNYm/GzLxu4kvpQ== X-Received: from wmsd12.prod.google.com ([2002:a05:600c:3acc:b0:439:3df1:f296]) (user=tabba job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:1550:b0:439:9377:fa17 with SMTP id 5b1f17b1804b1-4399377fb82mr36630915e9.18.1739899510991; Tue, 18 Feb 2025 09:25:10 -0800 (PST) Date: Tue, 18 Feb 2025 17:24:54 +0000 In-Reply-To: <20250218172500.807733-1-tabba@google.com> Mime-Version: 1.0 References: <20250218172500.807733-1-tabba@google.com> X-Mailer: git-send-email 2.48.1.601.g30ceb7b040-goog Message-ID: <20250218172500.807733-5-tabba@google.com> Subject: [PATCH v4 04/10] KVM: guest_memfd: Add KVM capability to check if guest_memfd is shared From: Fuad Tabba <tabba@google.com> To: kvm@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-mm@kvack.org Cc: pbonzini@redhat.com, chenhuacai@kernel.org, mpe@ellerman.id.au, anup@brainfault.org, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, seanjc@google.com, viro@zeniv.linux.org.uk, brauner@kernel.org, willy@infradead.org, akpm@linux-foundation.org, xiaoyao.li@intel.com, yilun.xu@intel.com, chao.p.peng@linux.intel.com, jarkko@kernel.org, amoorthy@google.com, dmatlack@google.com, isaku.yamahata@intel.com, mic@digikod.net, vbabka@suse.cz, vannapurve@google.com, ackerleytng@google.com, mail@maciej.szmigiero.name, david@redhat.com, michael.roth@amd.com, wei.w.wang@intel.com, liam.merwick@oracle.com, isaku.yamahata@gmail.com, kirill.shutemov@linux.intel.com, suzuki.poulose@arm.com, steven.price@arm.com, quic_eberman@quicinc.com, quic_mnalajal@quicinc.com, quic_tsoni@quicinc.com, quic_svaddagi@quicinc.com, quic_cvanscha@quicinc.com, quic_pderrin@quicinc.com, quic_pheragu@quicinc.com, catalin.marinas@arm.com, james.morse@arm.com, yuzenghui@huawei.com, oliver.upton@linux.dev, maz@kernel.org, will@kernel.org, qperret@google.com, keirf@google.com, roypat@amazon.co.uk, shuah@kernel.org, hch@infradead.org, jgg@nvidia.com, rientjes@google.com, jhubbard@nvidia.com, fvdl@google.com, hughd@google.com, jthoughton@google.com, tabba@google.com Content-Type: text/plain; charset="UTF-8" X-Rspam-User: X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: 58717C000A X-Stat-Signature: yrqtr4uxbojewm66u7kxgoyff7k94zm1 X-HE-Tag: 1739899512-28205 X-HE-Meta: U2FsdGVkX1+K15itLr2VjM9WZSGqGEtwnMMVcWAMzpb6uoQHtC7wO0CS++zTrMY8Wvz7VAt3XFuFSCCtt3qHz9x7pcwSS88r2xPp2I7QSXyjoKuhupb+uuGQxbUt8PgvVkobkEC4PYKwQf2RnTwiAMzypYC0YhgLfasCEs7xI9cFaQgx4fczSmoGLjJ8fXE6VSmqJNKgY/N+1zPlK2B/O9y6YiFhHEFNSrJxSxyoqOXoYOfkxYW6xl5ZOdds+couYUzTDRIc8EF4KTkJr9ySAFNTVK8o4Qg7d2ZHIr6ITr1EE1b4WMUIZiLkrlGy8+Q/51abytAWj1vz7hLVixrLKypOzRdettTSEuerBAY8MxGRQPtYahCK6AkgduEdqG//nhFtx9ERmTt2PzRSvZKM6Ma4k3WpLNoRetcZBonCe28/zwPgM6m+4F9nQS7pSNEWQyls1OJlyk+DL4F5yAfFnt7rvoMQYiZStuLFYgr6vQZNzMHzWGfP91zqBgsZXVLS93Nu8WOXYOdLDFDwgCY/FLemQzU9nR5mlIROBq9ooMrIfsWBu9dj4FZU+od6ZPofVtSJHXavW2Mk+F46UZ/g3B4it2spRSRKzTVEENypq3UWkB2700c8BJ/xJlbmzN3bh7XYKGICFLzETFD3ukwAY8daKJLOs9vsjH9IvY/trVi0RMG4MYK2YWJ/E3DAHduhLZsV+7z5NUWMN4DZaNlt+I6Ag2Db7+5IV+1TpW4rFeWsOXteT9cwbdMtauUXiFGwd4tIsEqk1rMrO9PalLdHTLtgAvoIHnjvqC0YIDcd+lwe1Zx8wyLxhbcqtr/isDHxiAKtAC+Ikfg/sRn+8RD6tH1mtJVMbR8GBeKWJeWvBPRrmsI5CKbrabyoMhqCM0twgfMsZ21kt/NBSzmJhCCEWbim6eebIhrfV8v2nsFxLjcS7LNHhBgWPHXBPKzZpQqPxF4ZgmMGsIgIfm0eOha zmNMq6/o wJT6wqzQDJcMrrFXls9Et+vVwS2ruVgwBIVGrvEtaApgz4lt1TPzsF82GdR13A40Ve4bkzQz3qKCdbYkRkCRzCpVMkcjktiG7ysU7GuRE//SR8YPcZHFNk8iVyWa3RLVxGu+vbZXnmQiE5NQ4tIcuiT5hV51jFpB/3Yi9v1ozyE7ETpJPPGkmg8AH8YLYaQUgubBcw3vDu/uzLj0uCb05oIDWM4/kkVZUndqBTFSrYezZqU4ZRB6RgSRszv89bZlE+i7FAQ2f5lfPCpiuHwdjrDF0MXf1/swF5Z21ZXnDd7apujco9+XHFikWuaFm6Xdf4UzvTVFLaaPbuiR35N6YJb1gOEocI+m6KPXGZowBWnadoDFPUlp80LV5EV41gmVKkjVPFQGlgpm618Uc15Ngg42jEIYsAxtH7xrRRlFTLCNaDk/1UKD1MZ/EasQ0+MXCGOGWpF1WzM7ynfIS/Sb3p5JiYTEuQtGDu3wZueVRv9YJog1/ruVUTLSyIAxmeLPVUk0Zm1vEzlGVfAWjQeXP+a8FVt6ks74IPfGrEc3sG+sdCFrIvWS7wvMQD0jOQGUVfmwhZpKCpNh1MkPEXyO662fADvQyAF9pmT6U9UiMbkmQtNWV6YRKWS47EXlkg3CIhOw9Pt3ouxAe3WgqXqQMKIJeAA== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000030, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: <linux-mm.kvack.org> List-Subscribe: <mailto:majordomo@kvack.org> List-Unsubscribe: <mailto:majordomo@kvack.org> |
Series |
KVM: Mapping guest_memfd backed memory at the host for software protected VMs
|
expand
|
diff --git a/include/uapi/linux/kvm.h b/include/uapi/linux/kvm.h index 45e6d8fca9b9..117937a895da 100644 --- a/include/uapi/linux/kvm.h +++ b/include/uapi/linux/kvm.h @@ -929,6 +929,7 @@ struct kvm_enable_cap { #define KVM_CAP_PRE_FAULT_MEMORY 236 #define KVM_CAP_X86_APIC_BUS_CYCLES_NS 237 #define KVM_CAP_X86_GUEST_MODE 238 +#define KVM_CAP_GMEM_SHARED_MEM 239 struct kvm_irq_routing_irqchip { __u32 irqchip; diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c index ba0327e2d0d3..38f0f402ea46 100644 --- a/virt/kvm/kvm_main.c +++ b/virt/kvm/kvm_main.c @@ -4830,6 +4830,10 @@ static int kvm_vm_ioctl_check_extension_generic(struct kvm *kvm, long arg) #ifdef CONFIG_KVM_PRIVATE_MEM case KVM_CAP_GUEST_MEMFD: return !kvm || kvm_arch_has_private_mem(kvm); +#endif +#ifdef CONFIG_KVM_GMEM_SHARED_MEM + case KVM_CAP_GMEM_SHARED_MEM: + return !kvm || kvm_arch_gmem_supports_shared_mem(kvm); #endif default: break;
Add the KVM capability KVM_CAP_GMEM_SHARED_MEM, which indicates that the VM supports shared memory in guest_memfd, or that the host can create VMs that support shared memory. Supporting shared memory implies that memory can be mapped when shared with the host. Signed-off-by: Fuad Tabba <tabba@google.com> --- include/uapi/linux/kvm.h | 1 + virt/kvm/kvm_main.c | 4 ++++ 2 files changed, 5 insertions(+)