diff mbox series

[SRU,Bionic/Focal/Hirsute/Impish/hwe-5.8/oem-5.10] bnx2x: Fix enabling network interfaces without VFs

Message ID 20211001022006.231236-1-cascardo@canonical.com
State Accepted
Headers show
Series [SRU,Bionic/Focal/Hirsute/Impish/hwe-5.8/oem-5.10] bnx2x: Fix enabling network interfaces without VFs | expand

Commit Message

Thadeu Lima de Souza Cascardo Oct. 1, 2021, 2:20 a.m. UTC
From: Adrian Bunk <bunk@kernel.org>

BugLink: https://bugs.launchpad.net/bugs/1945707

This function is called to enable SR-IOV when available,
not enabling interfaces without VFs was a regression.

Fixes: 65161c35554f ("bnx2x: Fix missing error code in bnx2x_iov_init_one()")
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Reported-by: YunQiang Su <wzssyqa@gmail.com>
Tested-by: YunQiang Su <wzssyqa@gmail.com>
Cc: stable@vger.kernel.org
Acked-by: Shai Malin <smalin@marvell.com>
Link: https://lore.kernel.org/r/20210912190523.27991-1-bunk@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
(cherry picked from commit 52ce14c134a003fee03d8fc57442c05a55b53715)
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
---
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Thadeu Lima de Souza Cascardo Oct. 1, 2021, 2:26 a.m. UTC | #1
On Thu, Sep 30, 2021 at 11:20:06PM -0300, Thadeu Lima de Souza Cascardo wrote:
> From: Adrian Bunk <bunk@kernel.org>
> 
> BugLink: https://bugs.launchpad.net/bugs/1945707

For some reason, I can't add the SRU template to the bug description, so I
added it as a comment.

And here it is as well:

[Impact]
bnx2x driver won't add all devices ports/interfaces.

[Test case]
Boot system with bnx2x device and verify all ports/interfaces have been added.

[Potential regression]
bnx2x devices won't be properly probed. Devices won't be added or SR-IOV won't be correctly supported.

Cascardo.


> 
> This function is called to enable SR-IOV when available,
> not enabling interfaces without VFs was a regression.
> 
> Fixes: 65161c35554f ("bnx2x: Fix missing error code in bnx2x_iov_init_one()")
> Signed-off-by: Adrian Bunk <bunk@kernel.org>
> Reported-by: YunQiang Su <wzssyqa@gmail.com>
> Tested-by: YunQiang Su <wzssyqa@gmail.com>
> Cc: stable@vger.kernel.org
> Acked-by: Shai Malin <smalin@marvell.com>
> Link: https://lore.kernel.org/r/20210912190523.27991-1-bunk@kernel.org
> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
> (cherry picked from commit 52ce14c134a003fee03d8fc57442c05a55b53715)
> Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
> ---
>  drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> index 9108b497b3c9..03eb0179ec00 100644
> --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> @@ -1225,7 +1225,7 @@ int bnx2x_iov_init_one(struct bnx2x *bp, int int_mode_param,
>  
>  	/* SR-IOV capability was enabled but there are no VFs*/
>  	if (iov->total == 0) {
> -		err = -EINVAL;
> +		err = 0;
>  		goto failed;
>  	}
>  
> -- 
> 2.30.2
> 
> 
> -- 
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team
Stefan Bader Oct. 1, 2021, 8:52 a.m. UTC | #2
On 01.10.21 04:26, Thadeu Lima de Souza Cascardo wrote:
> On Thu, Sep 30, 2021 at 11:20:06PM -0300, Thadeu Lima de Souza Cascardo wrote:
>> From: Adrian Bunk <bunk@kernel.org>
>>
>> BugLink: https://bugs.launchpad.net/bugs/1945707
> 
> For some reason, I can't add the SRU template to the bug description, so I
> added it as a comment.

Odd, I had no problem. Its duplicated into the description as well now.

-Stefan

> 
> And here it is as well:
> 
> [Impact]
> bnx2x driver won't add all devices ports/interfaces.
> 
> [Test case]
> Boot system with bnx2x device and verify all ports/interfaces have been added.
> 
> [Potential regression]
> bnx2x devices won't be properly probed. Devices won't be added or SR-IOV won't be correctly supported.
> 
> Cascardo.
> 
> 
>>
>> This function is called to enable SR-IOV when available,
>> not enabling interfaces without VFs was a regression.
>>
>> Fixes: 65161c35554f ("bnx2x: Fix missing error code in bnx2x_iov_init_one()")
>> Signed-off-by: Adrian Bunk <bunk@kernel.org>
>> Reported-by: YunQiang Su <wzssyqa@gmail.com>
>> Tested-by: YunQiang Su <wzssyqa@gmail.com>
>> Cc: stable@vger.kernel.org
>> Acked-by: Shai Malin <smalin@marvell.com>
>> Link: https://lore.kernel.org/r/20210912190523.27991-1-bunk@kernel.org
>> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
>> (cherry picked from commit 52ce14c134a003fee03d8fc57442c05a55b53715)
>> Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
>> ---
>>   drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
>> index 9108b497b3c9..03eb0179ec00 100644
>> --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
>> +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
>> @@ -1225,7 +1225,7 @@ int bnx2x_iov_init_one(struct bnx2x *bp, int int_mode_param,
>>   
>>   	/* SR-IOV capability was enabled but there are no VFs*/
>>   	if (iov->total == 0) {
>> -		err = -EINVAL;
>> +		err = 0;
>>   		goto failed;
>>   	}
>>   
>> -- 
>> 2.30.2
>>
>>
>> -- 
>> kernel-team mailing list
>> kernel-team@lists.ubuntu.com
>> https://lists.ubuntu.com/mailman/listinfo/kernel-team
>
Stefan Bader Oct. 1, 2021, 8:58 a.m. UTC | #3
On 01.10.21 04:20, Thadeu Lima de Souza Cascardo wrote:
> From: Adrian Bunk <bunk@kernel.org>
> 
> BugLink: https://bugs.launchpad.net/bugs/1945707
> 
> This function is called to enable SR-IOV when available,
> not enabling interfaces without VFs was a regression.
> 
> Fixes: 65161c35554f ("bnx2x: Fix missing error code in bnx2x_iov_init_one()")
> Signed-off-by: Adrian Bunk <bunk@kernel.org>
> Reported-by: YunQiang Su <wzssyqa@gmail.com>
> Tested-by: YunQiang Su <wzssyqa@gmail.com>
> Cc: stable@vger.kernel.org
> Acked-by: Shai Malin <smalin@marvell.com>
> Link: https://lore.kernel.org/r/20210912190523.27991-1-bunk@kernel.org
> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
> (cherry picked from commit 52ce14c134a003fee03d8fc57442c05a55b53715)
> Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
Acked-by: Stefan Bader <stefan.bader@canonical.com>
> ---

Looks straight forward with the description.

-Stefan

>   drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> index 9108b497b3c9..03eb0179ec00 100644
> --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> @@ -1225,7 +1225,7 @@ int bnx2x_iov_init_one(struct bnx2x *bp, int int_mode_param,
>   
>   	/* SR-IOV capability was enabled but there are no VFs*/
>   	if (iov->total == 0) {
> -		err = -EINVAL;
> +		err = 0;
>   		goto failed;
>   	}
>   
>
Tim Gardner Oct. 1, 2021, 2:17 p.m. UTC | #4
Acked-by: Tim Gardner <tim.gardner@canonical.com>

On 9/30/21 8:20 PM, Thadeu Lima de Souza Cascardo wrote:
> From: Adrian Bunk <bunk@kernel.org>
> 
> BugLink: https://bugs.launchpad.net/bugs/1945707
> 
> This function is called to enable SR-IOV when available,
> not enabling interfaces without VFs was a regression.
> 
> Fixes: 65161c35554f ("bnx2x: Fix missing error code in bnx2x_iov_init_one()")
> Signed-off-by: Adrian Bunk <bunk@kernel.org>
> Reported-by: YunQiang Su <wzssyqa@gmail.com>
> Tested-by: YunQiang Su <wzssyqa@gmail.com>
> Cc: stable@vger.kernel.org
> Acked-by: Shai Malin <smalin@marvell.com>
> Link: https://lore.kernel.org/r/20210912190523.27991-1-bunk@kernel.org
> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
> (cherry picked from commit 52ce14c134a003fee03d8fc57442c05a55b53715)
> Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
> ---
>   drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> index 9108b497b3c9..03eb0179ec00 100644
> --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> @@ -1225,7 +1225,7 @@ int bnx2x_iov_init_one(struct bnx2x *bp, int int_mode_param,
>   
>   	/* SR-IOV capability was enabled but there are no VFs*/
>   	if (iov->total == 0) {
> -		err = -EINVAL;
> +		err = 0;
>   		goto failed;
>   	}
>   
>
Stefan Bader Oct. 4, 2021, 3:29 p.m. UTC | #5
On 01.10.21 04:20, Thadeu Lima de Souza Cascardo wrote:
> From: Adrian Bunk <bunk@kernel.org>
> 
> BugLink: https://bugs.launchpad.net/bugs/1945707
> 
> This function is called to enable SR-IOV when available,
> not enabling interfaces without VFs was a regression.
> 
> Fixes: 65161c35554f ("bnx2x: Fix missing error code in bnx2x_iov_init_one()")
> Signed-off-by: Adrian Bunk <bunk@kernel.org>
> Reported-by: YunQiang Su <wzssyqa@gmail.com>
> Tested-by: YunQiang Su <wzssyqa@gmail.com>
> Cc: stable@vger.kernel.org
> Acked-by: Shai Malin <smalin@marvell.com>
> Link: https://lore.kernel.org/r/20210912190523.27991-1-bunk@kernel.org
> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
> (cherry picked from commit 52ce14c134a003fee03d8fc57442c05a55b53715)
> Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
> ---

Applied to focal:linux-hwe-5.8/hwe-5.8. Thanks.

-Stefan

>   drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> index 9108b497b3c9..03eb0179ec00 100644
> --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> @@ -1225,7 +1225,7 @@ int bnx2x_iov_init_one(struct bnx2x *bp, int int_mode_param,
>   
>   	/* SR-IOV capability was enabled but there are no VFs*/
>   	if (iov->total == 0) {
> -		err = -EINVAL;
> +		err = 0;
>   		goto failed;
>   	}
>   
>
AceLan Kao Oct. 6, 2021, 11:43 a.m. UTC | #6
Included this fix through stable update
Stefan Bader Oct. 11, 2021, 3:39 p.m. UTC | #7
On 01.10.21 04:20, Thadeu Lima de Souza Cascardo wrote:
> From: Adrian Bunk <bunk@kernel.org>
> 
> BugLink: https://bugs.launchpad.net/bugs/1945707
> 
> This function is called to enable SR-IOV when available,
> not enabling interfaces without VFs was a regression.
> 
> Fixes: 65161c35554f ("bnx2x: Fix missing error code in bnx2x_iov_init_one()")
> Signed-off-by: Adrian Bunk <bunk@kernel.org>
> Reported-by: YunQiang Su <wzssyqa@gmail.com>
> Tested-by: YunQiang Su <wzssyqa@gmail.com>
> Cc: stable@vger.kernel.org
> Acked-by: Shai Malin <smalin@marvell.com>
> Link: https://lore.kernel.org/r/20210912190523.27991-1-bunk@kernel.org
> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
> (cherry picked from commit 52ce14c134a003fee03d8fc57442c05a55b53715)
> Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
> ---

Applied to hirsute:linux/master-next. Thanks.

-Stefan

>   drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> index 9108b497b3c9..03eb0179ec00 100644
> --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> @@ -1225,7 +1225,7 @@ int bnx2x_iov_init_one(struct bnx2x *bp, int int_mode_param,
>   
>   	/* SR-IOV capability was enabled but there are no VFs*/
>   	if (iov->total == 0) {
> -		err = -EINVAL;
> +		err = 0;
>   		goto failed;
>   	}
>   
>
Kelsey Skunberg Oct. 12, 2021, 10:36 p.m. UTC | #8
These were applied via an upstream patch set.

Thank you!

-Kelsey

On 2021-09-30 23:20:06 , Thadeu Lima de Souza Cascardo wrote:
> From: Adrian Bunk <bunk@kernel.org>
> 
> BugLink: https://bugs.launchpad.net/bugs/1945707
> 
> This function is called to enable SR-IOV when available,
> not enabling interfaces without VFs was a regression.
> 
> Fixes: 65161c35554f ("bnx2x: Fix missing error code in bnx2x_iov_init_one()")
> Signed-off-by: Adrian Bunk <bunk@kernel.org>
> Reported-by: YunQiang Su <wzssyqa@gmail.com>
> Tested-by: YunQiang Su <wzssyqa@gmail.com>
> Cc: stable@vger.kernel.org
> Acked-by: Shai Malin <smalin@marvell.com>
> Link: https://lore.kernel.org/r/20210912190523.27991-1-bunk@kernel.org
> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
> (cherry picked from commit 52ce14c134a003fee03d8fc57442c05a55b53715)
> Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
> ---
>  drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> index 9108b497b3c9..03eb0179ec00 100644
> --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
> @@ -1225,7 +1225,7 @@ int bnx2x_iov_init_one(struct bnx2x *bp, int int_mode_param,
>  
>  	/* SR-IOV capability was enabled but there are no VFs*/
>  	if (iov->total == 0) {
> -		err = -EINVAL;
> +		err = 0;
>  		goto failed;
>  	}
>  
> -- 
> 2.30.2
> 
> 
> -- 
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team
Paolo Pisati Oct. 13, 2021, 12:51 p.m. UTC | #9
On Thu, Sep 30, 2021 at 11:20:06PM -0300, Thadeu Lima de Souza Cascardo wrote:
> From: Adrian Bunk <bunk@kernel.org>
> 
> BugLink: https://bugs.launchpad.net/bugs/1945707
diff mbox series

Patch

diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
index 9108b497b3c9..03eb0179ec00 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
@@ -1225,7 +1225,7 @@  int bnx2x_iov_init_one(struct bnx2x *bp, int int_mode_param,
 
 	/* SR-IOV capability was enabled but there are no VFs*/
 	if (iov->total == 0) {
-		err = -EINVAL;
+		err = 0;
 		goto failed;
 	}