public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Matt Evans <mattev@meta.com>
To: Leon Romanovsky <leon@kernel.org>
Cc: Bjorn Helgaas <bhelgaas@google.com>,
	Logan Gunthorpe <logang@deltatee.com>,
	Ankit Agrawal <ankita@nvidia.com>,
	Alex Williamson <alex@shazbot.org>,
	Niklas Schnelle <schnelle@linux.ibm.com>,
	linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] PCI/P2PDMA: Avoid returning a provider for non_mappable_bars
Date: Thu, 23 Apr 2026 16:48:56 +0100	[thread overview]
Message-ID: <46ba7198-c5fd-44ca-9b35-b9970f400fdd@meta.com> (raw)
In-Reply-To: <20260422151906.GB28413@unreal>

Hi Leon,

On 22/04/2026 16:19, Leon Romanovsky wrote:
> 
> On Wed, Apr 22, 2026 at 03:22:53PM +0100, Matt Evans wrote:
>> Hi Leon,
>>
>> On 21/04/2026 20:49, Leon Romanovsky wrote:
>>>
>>> On Tue, Apr 21, 2026 at 10:43:51AM -0700, Matt Evans wrote:
>>>> Extend pcim_p2pdma_provider()'s checks to exclude functions that have
>>>> pdev->non_mappable_bars set.
>>>>
>>>> Consumers such as VFIO were previously able to map these for access by
>>>> the CPU or P2P.  Update the comment on non_mappable_bars to show it
>>>> refers to any access, not just userspace CPU access.
>>>>
>>>> Fixes: 372d6d1b8ae3c ("PCI/P2PDMA: Refactor to separate core P2P functionality from memory allocation")
>>>
>>> I don't object to the patch, but this Fixes line doesn't look correct.
>>> non_mappable_bars applies only to s390, which doesn't support p2p. That
>>> wasn't prevented before 372d6d1b8ae3c refactoring too.
>>
>> Thanks; I'd chosen that commit as it adds the function that the additional
>> test is being added to.
> 
> Can I suggest slightly different solution?
> If CONFIG_..._S390 is set, we will unset CONFIG_PCI_P2PDMA and pcim_p2pdma_provider()
> will be compiled to return NULL, without changing non_mappable_bars
> description.

Where we got to in

    https://lore.kernel.org/kvm/20260415181623.1021090-1-mattev@meta.com/

was that non_mappable_bars could be used in future for non-s390 quirks, 
i.e. s390 is the current (but potentially not only) user.  Secondly, it 
isn't a P2P-specific issue because in

    https://lore.kernel.org/kvm/20260416131815.2729131-1-mattev@meta.com/

I'm aiming to add mmap() support to VFIO DMABUFs, which (without a fix 
like this) would allow CPU access too.


Thanks,


Matt


  parent reply	other threads:[~2026-04-23 15:49 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-21 17:43 [PATCH] PCI/P2PDMA: Avoid returning a provider for non_mappable_bars Matt Evans
2026-04-21 18:14 ` Logan Gunthorpe
2026-04-21 19:49 ` Leon Romanovsky
2026-04-22 14:22   ` Matt Evans
2026-04-22 15:19     ` Leon Romanovsky
2026-04-23 14:55       ` Niklas Schnelle
2026-04-26 11:22         ` Leon Romanovsky
2026-04-23 15:48       ` Matt Evans [this message]
2026-04-22  9:19 ` Niklas Schnelle
2026-04-22 15:01 ` Alex Williamson
2026-04-23 16:46   ` Matt Evans

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=46ba7198-c5fd-44ca-9b35-b9970f400fdd@meta.com \
    --to=mattev@meta.com \
    --cc=alex@shazbot.org \
    --cc=ankita@nvidia.com \
    --cc=bhelgaas@google.com \
    --cc=leon@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=logang@deltatee.com \
    --cc=schnelle@linux.ibm.com \
    /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