public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jason Gunthorpe <jgg@nvidia.com>
To: Ankit Soni <Ankit.Soni@amd.com>
Cc: Vasant Hegde <vasant.hegde@amd.com>,
	iommu@lists.linux.dev, suravee.suthikulpanit@amd.com,
	joro@8bytes.org, will@kernel.org, robin.murphy@arm.com,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3 1/2] iommu/amd: Remove PT_FEAT_DYNAMIC_TOP from PT_FORCE_ENABLED_FEATURES
Date: Thu, 12 Mar 2026 08:22:23 -0300	[thread overview]
Message-ID: <20260312112223.GF1448102@nvidia.com> (raw)
In-Reply-To: <rkohijfap7j4kqbspdp67ygdjy2witildk54ar7ty6hogpqzxk@n6dzmnipzbxf>

On Thu, Mar 12, 2026 at 04:10:13AM +0000, Ankit Soni wrote:
> On Wed, Mar 11, 2026 at 01:44:03PM -0300, Jason Gunthorpe wrote:
> > On Wed, Mar 11, 2026 at 09:54:55PM +0530, Vasant Hegde wrote:
> > > 
> > > + Jason
> > > 
> > > On 3/9/2026 7:35 PM, Ankit Soni wrote:
> > > > Dynamic top is used to grow the page table levels. However, if the VA
> > > > size is small and the initial page table level already covers the entire
> > > > address space, table growth is not required. In that case, the generic
> > > > page table framework clears PT_FEAT_DYNAMIC_TOP, which in turn causes
> > > > error -EOPNOTSUPP and leads to domain initialization failure.
> > > > 
> > > > Remove PT_FEAT_DYNAMIC_TOP from PT_FORCE_ENABLED_FEATURES, since during
> > > > domain allocation AMD IOMMU driver explicitly sets PT_FEAT_DYNAMIC_TOP
> > > > via cfg.common.features, this keeps normal runtime behavior unchanged.
> > > > 
> > > 
> > > Fixes: 879ced2bab1 ("iommupt: Add the AMD IOMMU v1 page table format")
> > 
> > No.. There is no bug here.
> > 
> > I don't really understand why you'd want to do this, the driver still
> > sets PT_FEAT_DYNAMIC_TOP, so what is the issue?
> > 
> > It shouldn't be removed from PT_FORCE_ENABLED_FEATURES, something else
> > is wrong.
> > 
> > Jason
> 
> When hw_max_vasz_lg2 = 32 and starting_level = 2, top_range.max_vasz_lg2
> comes back as 32 (clamped by min(32, 39)), so it matches
> common->max_vasz_lg2. The 'pt_init_common()' clears dynamic top because 
> "the table can't grow beyond its current level." with next condition in
> this function, domain init will fail with "-EOPNOTSUPP".

Ok, that is much clearer, but this is not the way to fix it.

First it needs test coverage added

And probably we should remove that if but it should be checked closely.

Jason

  reply	other threads:[~2026-03-12 11:22 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-09 14:05 [PATCH v3 0/2] Respect VASIZE for address limits Ankit Soni
2026-03-09 14:05 ` [PATCH v3 1/2] iommu/amd: Remove PT_FEAT_DYNAMIC_TOP from PT_FORCE_ENABLED_FEATURES Ankit Soni
2026-03-11 16:24   ` Vasant Hegde
2026-03-11 16:44     ` Jason Gunthorpe
2026-03-12  4:10       ` Ankit Soni
2026-03-12 11:22         ` Jason Gunthorpe [this message]
2026-03-12 14:42           ` Ankit Soni
2026-03-09 14:05 ` [PATCH v3 2/2] iommu/amd: Adhere to IVINFO[VASIZE] for address limits Ankit Soni
2026-03-11 16:36   ` Vasant Hegde
2026-03-12 13:45   ` Jason Gunthorpe

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260312112223.GF1448102@nvidia.com \
    --to=jgg@nvidia.com \
    --cc=Ankit.Soni@amd.com \
    --cc=iommu@lists.linux.dev \
    --cc=joro@8bytes.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robin.murphy@arm.com \
    --cc=suravee.suthikulpanit@amd.com \
    --cc=vasant.hegde@amd.com \
    --cc=will@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox