From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pf1-f200.google.com (mail-pf1-f200.google.com [209.85.210.200]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5FB5835C19D for ; Wed, 22 Jul 2026 22:26:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.200 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784759190; cv=none; b=FL2qLjdox1mEaw7NaGG+X8MbEiePl9LEeFZbi8BWS9MqXUG3s3JnL0/d+RYrdBlHAOu+IWSTMPW/+PU9zorfb2IKlSpxJFOzSjoGIbeuDepDLY4CsarKvS18TZ8Pvwbby0mCNNyYLG6V9pc3pHiRoGPqnNNcbrqE4HVLc6s7SK4= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784759190; c=relaxed/simple; bh=VnD3Bpu6SQo7s8kYJiYD4WRAvJSHFyyrB3+VCI1FZOU=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=L0QRkTN7wpWBVqWJTIrfHv+KLMuaSMy+oCn9TcM3VjvOw7gAbFlg6yjLB7rvqQDNJ3Z+c+kv5HwX45SOGzEgbln7ajTYoq1ewmH4tCNWNe9+Fy/YcGyxlfs3o3tZJsOHgvhXq81w8qr8SeEG1uchkOgDAr8RbSCgnOc4JZmxpUU= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--seanjc.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=BkzQBDlo; arc=none smtp.client-ip=209.85.210.200 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--seanjc.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="BkzQBDlo" Received: by mail-pf1-f200.google.com with SMTP id d2e1a72fcca58-8488ac68185so24443786b3a.2 for ; Wed, 22 Jul 2026 15:26:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20251104; t=1784759189; x=1785363989; darn=vger.kernel.org; h=content-type:cc:to:from:subject:message-id:references:mime-version :in-reply-to:date:from:to:cc:subject:date:message-id:reply-to :content-type; bh=laTo4SBwQXEAnLcKiaqv4FvHxqBPf3bTLFGxEPIn6aI=; b=BkzQBDloZPxezwQ1ZrEL6pGPkqQSbmKZnv3RA/8GJWIG3OZSiT4lGcMDv8U29N9YBc hMfd3Hy3hPuFsjy9wv/Pd7k3mle+s59wUCv57xJD1WjHlmnRQ9bp1uKAXfB7hSH8VYfO vfnBiNB5N5C/GK/UXMDzhxIQvRnDQH27gMzOESHZwXPbWkS8zyuAITUZNLZph+9G9E00 36BWYaSwtGeJNJNf5yTuTEQX+7HYVVSsB+7MwpAnmWeRVh46BSDxg7uxlJ5WEnNY/r8y HnOAbIDhLNRwHCi3J55hIKNNecGYHVSRyJ0NrtE9vqL+FnSwAN1gcbhEmVk/8f1So69V Q4UQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784759189; x=1785363989; h=content-type: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:content-type; bh=laTo4SBwQXEAnLcKiaqv4FvHxqBPf3bTLFGxEPIn6aI=; b=oi5nxV4YGWubGvFnmXUdwhxKrsVq1zhyYRDpeEQlwOoMBqPEqAGy1hbJ6DswU+wBbY OkCAH8qNRroVw8r97RtuVWfgpuh8e/wXSyQx+JH8P3ANz1Cq7pXnZAceFWCSDbxTMg7h aZEK3rl8xM+PdrXLXZBppIYVfXn0gfPWIEV+LeDQ0/jrO0VOdwuOM6EnVGq7z1nA/upj pMOnoMmyFmCFSSu+ru6BQqfeNrkFRbK4IqXaQCztzBZtkCYEMLRpuFUvlf4DYPwXVw6N IQOn8PDDlQYa4Q3woo/kI7H6xak6Nmy6cT5haelRBRFepOWJFeUI2wQgybSx4vn//T0j am3g== X-Forwarded-Encrypted: i=1; AHgh+RobqpsKs8BR5dknwQYW/Ft8YhM1bCiCXrUTMcJZSnukGf8sLmBbBGNPvdjcY649kkB+qLqg6kfWZP6Cv0E=@vger.kernel.org X-Gm-Message-State: AOJu0Yxbp2YFsGO/SVpmYVSzMeImaK0kWZHsl/2Y08CJA80t1bAC5iKT 96epK6RrSMcWmrFABMtDO9++3Umh2/M5JJUBln0pDPbmiXouYS75R16JsH87fiRhH0VFKf6dG6p eae/bcQ== X-Received: from pfde19.prod.google.com ([2002:aa7:8c53:0:b0:84a:894f:23e6]) (user=seanjc job=prod-delivery.src-stubby-dispatcher) by 2002:a05:6a00:3a05:b0:848:56ff:6ced with SMTP id d2e1a72fcca58-84e2b7e5a66mr797401b3a.8.1784759188398; Wed, 22 Jul 2026 15:26:28 -0700 (PDT) Date: Wed, 22 Jul 2026 15:26:27 -0700 In-Reply-To: <20260616004155.1435766-4-yosry@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20260616004155.1435766-1-yosry@kernel.org> <20260616004155.1435766-4-yosry@kernel.org> Message-ID: Subject: Re: [RFC PATCH v2 03/25] KVM: VMX: Generalize VPID allocation to be vendor-neutral From: Sean Christopherson To: Yosry Ahmed Cc: Paolo Bonzini , Jim Mattson , Maxim Levitsky , Vitaly Kuznetsov , Tom Lendacky , kvm@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="us-ascii" On Tue, Jun 16, 2026, Yosry Ahmed wrote: > diff --git a/arch/x86/kvm/mmu/mmu.c b/arch/x86/kvm/mmu/mmu.c > index 9368a71336fe4..e021ed562502f 100644 > --- a/arch/x86/kvm/mmu/mmu.c > +++ b/arch/x86/kvm/mmu/mmu.c > @@ -8192,4 +8192,68 @@ void kvm_mmu_init_memslot_memory_attributes(struct kvm *kvm, > } > } > } > + > +static struct { > + spinlock_t lock; > + unsigned long *bitmap; > + unsigned int nr; > +} tlb_tags; > + > +int kvm_init_tlb_tags(unsigned int nr) > +{ > + if (WARN_ON_ONCE(!nr)) I think we should cap @nr at 0xffff, i.e. at VMX_NR_VPIDS -1. If we end up on a system (e.g. in a VM) that supports 4 billion ASIDs, KVM will burn 64MiB for the bitmap, without any reasonable hope of actually consuming anywhere near that many ASIDs. Burning at most 1024 bytes is far more reasonable. To provide some defence against future systems, maybe pr_warn() or something if the number of ASIDs is capped?