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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6ED1AD711BC for ; Wed, 20 Nov 2024 16:20:40 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EDE0D6B009F; Wed, 20 Nov 2024 11:20:39 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id E67126B00A0; Wed, 20 Nov 2024 11:20:39 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D2EA76B00A1; Wed, 20 Nov 2024 11:20:39 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id A71366B009F for ; Wed, 20 Nov 2024 11:20:39 -0500 (EST) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 6422CAE625 for ; Wed, 20 Nov 2024 16:20:39 +0000 (UTC) X-FDA: 82806983952.13.69F6273 Received: from mail-lj1-f179.google.com (mail-lj1-f179.google.com [209.85.208.179]) by imf30.hostedemail.com (Postfix) with ESMTP id E60A680011 for ; Wed, 20 Nov 2024 16:18:59 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=io5l0G89; spf=pass (imf30.hostedemail.com: domain of ajaygargnsit@gmail.com designates 209.85.208.179 as permitted sender) smtp.mailfrom=ajaygargnsit@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1732119545; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ImSW+JuDhb3RgJw1o2hGS9mRoFnCl9ZYkL7+gfakSyM=; b=b2TlO4We2fXGfJzOEhgkyUAt74Y4zieZTqUVCZcnV+JtYP/zsxhFQ6NBkfvktZvmPhqamX Lrn4BrO9pNknSnyc7N0Y/ADzjoH98jAMXA6rwV0eSEEUqjlXf1Y4LmEk82KXZJmw5/j7dP 5rVKZBiHC9kr8V6cfLnd/h7+7nagvZA= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1732119545; a=rsa-sha256; cv=none; b=C9SAmy+46kOELIzUNvY1XGKBUFKc+/qNJQM1RYXWtl10d5AMj96Cx0qwzTOfbWx1gTyHeY NG53+pKHR+WrZsozMBRKHe6x74kfaUMalhIRZ8hGdYeD1Ba67SHup5HyJz0BgalDSpLc0t /IoPAE/CdtcGD5Cd5/25vRo6xnsekyU= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=io5l0G89; spf=pass (imf30.hostedemail.com: domain of ajaygargnsit@gmail.com designates 209.85.208.179 as permitted sender) smtp.mailfrom=ajaygargnsit@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-lj1-f179.google.com with SMTP id 38308e7fff4ca-2fb49510250so56001821fa.0 for ; Wed, 20 Nov 2024 08:20:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1732119636; x=1732724436; darn=kvack.org; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=ImSW+JuDhb3RgJw1o2hGS9mRoFnCl9ZYkL7+gfakSyM=; b=io5l0G895XQheE4dQL0OKM0igv4rQJhu0jRJNb+ZHbJCZg4R8Kn4JadUdoHROywlxe 3nIUPe3PaoDQnjhsgwwA64dVCM4XGLIrWshCg8etTlBbRsYOZANYsZWKDgZF8rY+jcvo 84q6D4JMMG7fOOmz/Tc66KuFjb47u0W4I/9MwQ9ERarmTitz+owh+MqGDFTJdLwr3HUr S0oMdwY/X80JFFh/ndDdpZVU2MvTc0bhArfFu3oSgW1zmDTsYd63MV1qGo06JW0cJXtA khy5kHVTbekThAt3MaC4V7QRLO0//1fVox15HfGTGZmUCtnEgxtIBK3x2J+lLmIe5KvV Acjw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732119636; x=1732724436; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ImSW+JuDhb3RgJw1o2hGS9mRoFnCl9ZYkL7+gfakSyM=; b=X5Ai2sqDmUK7G/qVtUaIEgkEvIp6vIkxx1yl+z8TkCmYmhzxD9NMK7Eyh4pTeOexdT EvRM/vdTOJYLmC3pFwX+ImCgxlqEKX3ngy7C9r9z3KJAgqeHRxjXqr6fe9zzUY7UlPCA /s6IIsfRlJXaou8EVYfFPyadch/5VB2iM90t+RBoG9pQmJdEAhua13lnL/4ZI8FdI/MR nu1e3imVMt1UQ4v9nSjR/8/8/Y57Gg/Bpy1fhl9Ex4rSTYbGo0VaFRtL4x7Aw1tsrRib ahVwKO0I47khUqkmMkff9xEJvoEwDKIHCb4/0EjbkjNPJmDB34hFaua709I/tG0lqtz0 gLqQ== X-Forwarded-Encrypted: i=1; AJvYcCWAGtlAcmM1Jv9J004Zjayz4c32jzuUKkWFNoGEZ4BKiSyZUhbg+4M2+/Bm4wlUEtE7nxEua20kAA==@kvack.org X-Gm-Message-State: AOJu0Yy2zvjCzxsTDR9zOB5YrV6fFnZFGVO7u5TuTygqMdOBONg/pMdB TlXKf+AtX6NyMIWuYS6vecxea+gNp/k8bl39wdfNHMC5eOQRijVpxWCDGNFkHppKUKy4OVk2ez/ y7S11R1a0wxoDhyYdse9//NuwohU= X-Google-Smtp-Source: AGHT+IHNRQW/uxvLO+ngyUCL/BIFpVe/+hHdEEcutNrMQSMyWScoaAXP0lL3BqY9nHe93PE2jdPKH7UlnQJM0kusp+A= X-Received: by 2002:a2e:a541:0:b0:2fb:5688:55c0 with SMTP id 38308e7fff4ca-2ff8dcdcb27mr21196231fa.38.1732119635474; Wed, 20 Nov 2024 08:20:35 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Ajay Garg Date: Wed, 20 Nov 2024 21:50:18 +0530 Message-ID: Subject: Re: Queries regarding consolidated picture of virtualization and SPT/EPT/IOMMU/DMAR/PT To: Linux Kernel Mailing List , iommu@lists.linux-foundation.org, kvm@vger.kernel.org, Linux Memory Management List Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam10 X-Stat-Signature: z9c6z15y9g3ykntd1gihspq6bby8uuzg X-Rspamd-Queue-Id: E60A680011 X-Rspam-User: X-HE-Tag: 1732119539-728676 X-HE-Meta: U2FsdGVkX187Bx/BIM3oKBV0eK/zBvi1ZH6oi+nfa8J45QQhbTgdBdtRW+H/6XWpk5slvjuX1KiHGy8R69peXfvxRVXqsXO47ceAp6EM9mPvYXstiILp690rw8aMAowyZ8p0W9rhI9PR/XJZnSuHxjs3xeX/lxax3czwpsCBYkgMoEh7PQimoEi+SucaaVr/d1HLYd9lRXmU/Uw5c0L59WoS+2dJrn5AM1bRsF9swnNk0D9wNFWIXpj+ErOpS9+ltFZSl46EQqxotcwd/cclo4/QQ4kPlDmggI00iWRc4GkpimyrcDQCEFf67QJJTjnjvJ1fnEWdd8BcdZfHjPuLJ97iDjMyTHM9X1Xt5EXYnU2nJOqQa7omib8mTmA+/2agSqJP/Rzg3zkvYf36QpvguueQQHull3AiWPcyT0JzmtgO/OR80hD8H+3XGwqccWZ3Iv9UTtuCQTemLl7/iabUBKyLgGbpHm2L3x6DdCMapvVh49h8xlazWTqqFlIUTSGBqcNVrceDAQ7r9FSN1TMipEsBdLGo2HKjBeCOmWHG92ebLzXr530LNNPyBxIt9zkpmn1vFfBc6PI7EuWuX6E/GS8RbtyxY9topAYTn1c1GniY0ZvQGl9BEzOLcNIZz9BU8M4iYRUBCoHyPWJG+v97gr5kJL88L6NMFRSrO6ATTeYFyPZAX20+DSc7cYaBNTycg8NiZaOh0z5CoSISYNrLCFo3MycbJfa0VLGAAjsvPVh7fePpz3gOCxGMUwHgbGqQeRfiMmnWTrVJlX3faNGHFhI9FhYtubTnUOY1kkBhRkHN06+GTvl8jvx5SOx+KabGc7EkaxobGYi/i59p7g1QZ9QISlBg9gR6prWuCPLmHQLhfFJJ66V1WPme3eH1VgzE+cV/rIAH8C9l0Jvgc+EUPKJC6tfNUhdz9FzRXu06AXqqlwD9kEFp/jvDg+l2iJRLPVRsJ6M5aRTfFuHMJJC 3QCIeZER i4JKED7OSa4L64IzkWxJGokTt0vx1VW2r2vxzRx94eB4AKPclOHbOg2UUOYn4ZQG2Le4/8b4UO+AFhCb1gHlapSab7A9NmeYeCNgMyvnPqf4iVkau2Cqz6t+ovLvvLx6CKyjhh3mWkzJYhsbxMofEjx9ywQz/AxMeJ0aDUlISYlPKdoqpdaSFoB87P6CTwgM43S+Lw49U+wHbBucG8W/02KSjLyWDqhVWqTAxx+6c7XAt3Dr4VXThAqKCn7/uFRXZB5HFp5748Qb4riHgEX0sIPSroae/Y6x0sCRBe1wN6JE+Uis= X-Bogosity: Ham, tests=bogofilter, spamicity=0.052692, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Hi everyone. Will be grateful for some insight if I am on the right path :) On Mon, Nov 18, 2024 at 11:30=E2=80=AFPM Ajay Garg = wrote: > > Hi everyone. > > I understand in a para-virtualization environment, VMM maintains a > shadow-page-table (SPT) per process per guest, for GVA =3D> HPA > translation. The hardware/MMU is passed a single pointer to this > shadow-page-table. The guest is aware that it is running in a > virtualization environment, and communicates with VMM to help maintain > the shadow-page-table. > > In full-virtualization/HVM virtualization, the guest is unaware that > it is running in a virtualized environment, and all GVA =3D> GPA are > private. The VMM is obviously aware of all HVA =3D> HPA mappings; plus > GPA =3D> HVA is trivial as it's only an offset difference (Extended Page > Table, EPT). The hardware/MMU is passed three things : > > * Pointer to guest page-table, for GVA =3D> GPA. > * Offset, for GPA =3D> HVA. > * Pointer to host page-table, for HVA =3D> HPA. > > In both the above cases, DMA is a challenge (without IOMMU), as > device-addresses would need to be physically-contiguous. This would in > turn mean that all of GPA needs to be physically-contiguous, which in > turn means that the host would need to spawn guest-process with all of > memory (HVA) which is physically-contiguous - very hard to meet > generally. > > *_Kindly correct me if I have made a mistake so far at conceptual level._= * > > > Now, enters IOMMU, providing the ability to DMA with non-contiguous > device-addresses. > Now, my queries are simple : > > * > Is IOMMU DMA-Remapping mode (DMAR) analogous to a para-virtualization > environment (as per previous brief context)? > > * > Is IOMMU Pass-through (PT) mode analogous to a HVM environment (as per > previous brief context)? > > > Many thanks in advance for your time; hopefully I have not been a > complete idiot .. > > > Thanks and Regards, > Ajay