[PATCH] platform/mellanox: nvsw-sn2201: Add check for platform_device_add_resources

Chen Ni posted 1 patch 1 year, 8 months ago
drivers/platform/mellanox/nvsw-sn2201.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
[PATCH] platform/mellanox: nvsw-sn2201: Add check for platform_device_add_resources
Posted by Chen Ni 1 year, 8 months ago
Add check for the return value of platform_device_add_resources() and
return the error if it fails in order to catch the error.

Signed-off-by: Chen Ni <nichen@iscas.ac.cn>
---
 drivers/platform/mellanox/nvsw-sn2201.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/platform/mellanox/nvsw-sn2201.c b/drivers/platform/mellanox/nvsw-sn2201.c
index 3ef655591424..abe7be602f84 100644
--- a/drivers/platform/mellanox/nvsw-sn2201.c
+++ b/drivers/platform/mellanox/nvsw-sn2201.c
@@ -1198,6 +1198,7 @@ static int nvsw_sn2201_config_pre_init(struct nvsw_sn2201 *nvsw_sn2201)
 static int nvsw_sn2201_probe(struct platform_device *pdev)
 {
 	struct nvsw_sn2201 *nvsw_sn2201;
+	int ret;
 
 	nvsw_sn2201 = devm_kzalloc(&pdev->dev, sizeof(*nvsw_sn2201), GFP_KERNEL);
 	if (!nvsw_sn2201)
@@ -1205,8 +1206,10 @@ static int nvsw_sn2201_probe(struct platform_device *pdev)
 
 	nvsw_sn2201->dev = &pdev->dev;
 	platform_set_drvdata(pdev, nvsw_sn2201);
-	platform_device_add_resources(pdev, nvsw_sn2201_lpc_io_resources,
+	ret = platform_device_add_resources(pdev, nvsw_sn2201_lpc_io_resources,
 				      ARRAY_SIZE(nvsw_sn2201_lpc_io_resources));
+	if (ret)
+		return ret;
 
 	nvsw_sn2201->main_mux_deferred_nr = NVSW_SN2201_MAIN_MUX_DEFER_NR;
 	nvsw_sn2201->main_mux_devs = nvsw_sn2201_main_mux_brdinfo;
-- 
2.25.1
Re: [PATCH] platform/mellanox: nvsw-sn2201: Add check for platform_device_add_resources
Posted by Hans de Goede 1 year, 7 months ago
Hi,

On 6/5/24 5:27 AM, Chen Ni wrote:
> Add check for the return value of platform_device_add_resources() and
> return the error if it fails in order to catch the error.
> 
> Signed-off-by: Chen Ni <nichen@iscas.ac.cn>

Thank you for your patch, I've applied this patch to my review-hans 
branch:
https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans

Note it will show up in my review-hans branch once I've pushed my
local branch there, which might take a while.

I will include this patch in my next fixes pull-req to Linus
for the current kernel development cycle.

Regards,

Hans



> ---
>  drivers/platform/mellanox/nvsw-sn2201.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/platform/mellanox/nvsw-sn2201.c b/drivers/platform/mellanox/nvsw-sn2201.c
> index 3ef655591424..abe7be602f84 100644
> --- a/drivers/platform/mellanox/nvsw-sn2201.c
> +++ b/drivers/platform/mellanox/nvsw-sn2201.c
> @@ -1198,6 +1198,7 @@ static int nvsw_sn2201_config_pre_init(struct nvsw_sn2201 *nvsw_sn2201)
>  static int nvsw_sn2201_probe(struct platform_device *pdev)
>  {
>  	struct nvsw_sn2201 *nvsw_sn2201;
> +	int ret;
>  
>  	nvsw_sn2201 = devm_kzalloc(&pdev->dev, sizeof(*nvsw_sn2201), GFP_KERNEL);
>  	if (!nvsw_sn2201)
> @@ -1205,8 +1206,10 @@ static int nvsw_sn2201_probe(struct platform_device *pdev)
>  
>  	nvsw_sn2201->dev = &pdev->dev;
>  	platform_set_drvdata(pdev, nvsw_sn2201);
> -	platform_device_add_resources(pdev, nvsw_sn2201_lpc_io_resources,
> +	ret = platform_device_add_resources(pdev, nvsw_sn2201_lpc_io_resources,
>  				      ARRAY_SIZE(nvsw_sn2201_lpc_io_resources));
> +	if (ret)
> +		return ret;
>  
>  	nvsw_sn2201->main_mux_deferred_nr = NVSW_SN2201_MAIN_MUX_DEFER_NR;
>  	nvsw_sn2201->main_mux_devs = nvsw_sn2201_main_mux_brdinfo;