Re: [PATCH 1/3] selftests: pci_endpoint: Skip subrange map test if iATU allocation fails
From: Koichiro Den
Date: Fri Mar 20 2026 - 10:06:53 EST
On Fri, Mar 20, 2026 at 11:04:28AM +0100, Christian Bruel wrote:
> Hello Koichiro, thank you for your comment
>
> On 3/19/26 02:28, Koichiro Den wrote:
> > On Wed, Mar 18, 2026 at 03:46:27PM +0100, Christian Bruel wrote:
> > > Handle -ENOSPC error. If the number of available inbound ATU entries is
> > > insufficient to map the subrange, skip the test instead of failing.
> > >
> > > Link: https://lore.kernel.org/linux-pci/20260317152707.GA85951@bhelgaas/T/#m87e4c24173097a0ea70195b71aab294ad8d6c283
> > > Signed-off-by: Christian Bruel <christian.bruel@xxxxxxxxxxx>
> > > ---
> > > tools/testing/selftests/pci_endpoint/pci_endpoint_test.c | 2 ++
> > > 1 file changed, 2 insertions(+)
> > >
> > > diff --git a/tools/testing/selftests/pci_endpoint/pci_endpoint_test.c b/tools/testing/selftests/pci_endpoint/pci_endpoint_test.c
> > > index c417fb3a198b2d92c3060938c23807cc8bea5573..8ea2fda4539d11eb22b22800a7cb8bbaa99c91ba 100644
> > > --- a/tools/testing/selftests/pci_endpoint/pci_endpoint_test.c
> > > +++ b/tools/testing/selftests/pci_endpoint/pci_endpoint_test.c
> > > @@ -88,6 +88,8 @@ TEST_F(pci_ep_bar, BAR_SUBRANGE_TEST)
> > > SKIP(return, "Subrange map is not supported");
> > > if (ret == -ENOBUFS)
> > > SKIP(return, "BAR is reserved");
> > > + if (ret == -ENOSPC)
> > > + SKIP(return, "Not enough ATU entries to allocate subrange");
> >
> > Thank you for handling this!
> >
> > pci_endpoint_test_bar_subrange() can also return -ENOSPC locally:
> > https://github.com/torvalds/linux/blob/v7.0-rc4/drivers/misc/pci_endpoint_test.c#L538
> > While that is a different resource limit case, I think it would still be
> > reasonable to treat it as SKIP as well.
>
> Regarding Niklas's feedback to use the local EINVAL instead of ENOSPC in
> pci_endpoint_test_bar_subrange(), I prefer to leave this for you to handle.
> That will cover this case.
So could you consider the following tiny patch as a prerequisite for your
series?
https://lore.kernel.org/linux-pci/20260320140139.2415480-1-den@xxxxxxxxxxxxx/
>
> >
> > If you agree and keep your current approach, then I think the SKIP message
> > might be better phrased more generically, e.g. "Insufficient resources".
>
> OK I agree, the error message should be less specific to DWC terminology,
> even though this case can currently only occur on it.
Yes, I agree. As mentioned in my reply to Niklas, the other -ENOSPC is better
replaced with -EINVAL, so I just submitted a tiny patch. That concern should be
resolved.
>
> >
> > If you prefer to keep that local case as FAIL (or at least distinguish it
> > with a different SKIP message), that would likely require a bit more
> > changes overall. Note: Niklas' earlier feedback on the SKIP message would
> > still apply.
>
> OK, as Niklas also suggested, I will not set an additional local bit besides
> the fail bit. The question is whether we should name it SKIP or NOSPC. I
> slightly prefer NOSPC, as this is what is used in the selftest to indicate
> skipping.
Personally, Niklas' "errno in struct pci_epf_test_reg" idea sounds the best
among the options discussed so far.
Best regards,
Koichiro
>
> thank you
>
> Christian
>
> >
> > Best regards,
> > Koichiro
> >
> > > EXPECT_FALSE(ret) TH_LOG("Test failed for BAR%d", variant->barno);
> > > }
> > >
> > > --
> > > 2.34.1
> > >
>