Le 13/08/2026 à 05:53, Jiangshan Yi a écrit :
[Vous ne recevez pas souvent de courriers de [email protected]. Découvrez 
pourquoi ceci est important à https://aka.ms/LearnAboutSenderIdentification ]

When the number of requested VFs exceeds MAX_VFS_FOR_MAP_PE, the
message prints that limit but labels it "Configurable VFs". Print
each limit with its own message so both are reported when both are
exceeded.

Signed-off-by: Jiangshan Yi <[email protected]>
---
  arch/powerpc/platforms/pseries/pci.c | 10 ++++++----
  1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/arch/powerpc/platforms/pseries/pci.c 
b/arch/powerpc/platforms/pseries/pci.c
index d11a64a086c1..1e1903bf3f1d 100644
--- a/arch/powerpc/platforms/pseries/pci.c
+++ b/arch/powerpc/platforms/pseries/pci.c
@@ -133,10 +133,12 @@ static int pseries_pci_sriov_enable(struct pci_dev *pdev, 
u16 num_vfs)
         /* First integer stores max config */
         max_config_vfs = of_read_number(&max_vfs[0], 1);
         if (max_config_vfs < num_vfs || num_vfs > MAX_VFS_FOR_MAP_PE) {
-               dev_err(&pdev->dev,
-                       "Num VFs %x > %x Configurable VFs\n",
-                       num_vfs, (num_vfs > MAX_VFS_FOR_MAP_PE) ?
-                       MAX_VFS_FOR_MAP_PE : max_config_vfs);
+               if (max_config_vfs < num_vfs)
+                       dev_err(&pdev->dev, "Num VFs %x > %x Configurable 
VFs\n",
+                               num_vfs, max_config_vfs);
+               if (num_vfs > MAX_VFS_FOR_MAP_PE)
+                       dev_err(&pdev->dev, "Num VFs %x > %x PE mapping 
limit\n",
+                               num_vfs, MAX_VFS_FOR_MAP_PE);
                 return -EINVAL;
         }

What about the following instead, to avoid the double 'if' ?

diff --git a/arch/powerpc/platforms/pseries/pci.c b/arch/powerpc/platforms/pseries/pci.c
index d11a64a086c1..6fc13f4a79a3 100644
--- a/arch/powerpc/platforms/pseries/pci.c
+++ b/arch/powerpc/platforms/pseries/pci.c
@@ -132,11 +132,14 @@ static int pseries_pci_sriov_enable(struct pci_dev *pdev, u16 num_vfs)

        /* First integer stores max config */
        max_config_vfs = of_read_number(&max_vfs[0], 1);
-       if (max_config_vfs < num_vfs || num_vfs > MAX_VFS_FOR_MAP_PE) {
-               dev_err(&pdev->dev,
-                       "Num VFs %x > %x Configurable VFs\n",
-                       num_vfs, (num_vfs > MAX_VFS_FOR_MAP_PE) ?
-                       MAX_VFS_FOR_MAP_PE : max_config_vfs);
+       if (max_config_vfs < num_vfs) {
+               dev_err(&pdev->dev, "Num VFs %x > %x Configurable VFs\n",
+                       num_vfs, max_config_vfs);
+               return -EINVAL;
+       }
+       if (num_vfs > MAX_VFS_FOR_MAP_PE) {
+               dev_err(&pdev->dev, "Num VFs %x > %x PE mapping limit\n",
+                       num_vfs, MAX_VFS_FOR_MAP_PE);
                return -EINVAL;
        }



Reply via email to