On 3/20/26 15:05, Koichiro Den wrote:
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 <[email protected]>
---
   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/[email protected]/

sure, thank you




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.

It is a good solution but does not match very well with the other existing API (See the STATUS_SRC/DST_ADDR_INVALID bits). Thus, we will keep the existing method of reporting errors using a second bit alongside the FAIL bit.



Best regards,
Koichiro


thank you

Christian


Best regards,
Koichiro

        EXPECT_FALSE(ret) TH_LOG("Test failed for BAR%d", variant->barno);
   }

--
2.34.1




Reply via email to