Re: [PATCH] backlight: adp5520: fix error handling in adp5520_bl_probe()
On Sat, 09 Jul 2016, Alexey Khoroshilov wrote: > If adp5520_bl_setup() fails, sysfs group left unremoved. > > By the way, fix overcomplicated assignement of error code. > > Found by Linux Driver Verification project (linuxtesting.org). > > Signed-off-by: Alexey Khoroshilov> --- > drivers/video/backlight/adp5520_bl.c | 12 ++-- > 1 file changed, 10 insertions(+), 2 deletions(-) Applied, thanks. > diff --git a/drivers/video/backlight/adp5520_bl.c > b/drivers/video/backlight/adp5520_bl.c > index dd88ba1d71ce..35373e2065b2 100644 > --- a/drivers/video/backlight/adp5520_bl.c > +++ b/drivers/video/backlight/adp5520_bl.c > @@ -332,10 +332,18 @@ static int adp5520_bl_probe(struct platform_device > *pdev) > } > > platform_set_drvdata(pdev, bl); > - ret |= adp5520_bl_setup(bl); > + ret = adp5520_bl_setup(bl); > + if (ret) { > + dev_err(>dev, "failed to setup\n"); > + if (data->pdata->en_ambl_sens) > + sysfs_remove_group(>dev.kobj, > + _bl_attr_group); > + return ret; > + } > + > backlight_update_status(bl); > > - return ret; > + return 0; > } > > static int adp5520_bl_remove(struct platform_device *pdev) -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog
Re: [PATCH] backlight: adp5520: fix error handling in adp5520_bl_probe()
On Sat, 09 Jul 2016, Alexey Khoroshilov wrote: > If adp5520_bl_setup() fails, sysfs group left unremoved. > > By the way, fix overcomplicated assignement of error code. > > Found by Linux Driver Verification project (linuxtesting.org). > > Signed-off-by: Alexey Khoroshilov > --- > drivers/video/backlight/adp5520_bl.c | 12 ++-- > 1 file changed, 10 insertions(+), 2 deletions(-) Applied, thanks. > diff --git a/drivers/video/backlight/adp5520_bl.c > b/drivers/video/backlight/adp5520_bl.c > index dd88ba1d71ce..35373e2065b2 100644 > --- a/drivers/video/backlight/adp5520_bl.c > +++ b/drivers/video/backlight/adp5520_bl.c > @@ -332,10 +332,18 @@ static int adp5520_bl_probe(struct platform_device > *pdev) > } > > platform_set_drvdata(pdev, bl); > - ret |= adp5520_bl_setup(bl); > + ret = adp5520_bl_setup(bl); > + if (ret) { > + dev_err(>dev, "failed to setup\n"); > + if (data->pdata->en_ambl_sens) > + sysfs_remove_group(>dev.kobj, > + _bl_attr_group); > + return ret; > + } > + > backlight_update_status(bl); > > - return ret; > + return 0; > } > > static int adp5520_bl_remove(struct platform_device *pdev) -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog
Re: [PATCH] backlight: adp5520: fix error handling in adp5520_bl_probe()
On 09.07.2016 00:19, Alexey Khoroshilov wrote: If adp5520_bl_setup() fails, sysfs group left unremoved. By the way, fix overcomplicated assignement of error code. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey KhoroshilovAcked-by: Michael Hennerich --- drivers/video/backlight/adp5520_bl.c | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/video/backlight/adp5520_bl.c b/drivers/video/backlight/adp5520_bl.c index dd88ba1d71ce..35373e2065b2 100644 --- a/drivers/video/backlight/adp5520_bl.c +++ b/drivers/video/backlight/adp5520_bl.c @@ -332,10 +332,18 @@ static int adp5520_bl_probe(struct platform_device *pdev) } platform_set_drvdata(pdev, bl); - ret |= adp5520_bl_setup(bl); + ret = adp5520_bl_setup(bl); + if (ret) { + dev_err(>dev, "failed to setup\n"); + if (data->pdata->en_ambl_sens) + sysfs_remove_group(>dev.kobj, + _bl_attr_group); + return ret; + } + backlight_update_status(bl); - return ret; + return 0; } static int adp5520_bl_remove(struct platform_device *pdev) -- Greetings, Michael -- Analog Devices GmbH Otl-Aicher Strasse 60-64 80807 München Sitz der Gesellschaft München, Registergericht München HRB 40368, Geschäftsführer: Peter Kolberg, Ali Raza Husain, Eileen Wynne
Re: [PATCH] backlight: adp5520: fix error handling in adp5520_bl_probe()
On 09.07.2016 00:19, Alexey Khoroshilov wrote: If adp5520_bl_setup() fails, sysfs group left unremoved. By the way, fix overcomplicated assignement of error code. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov Acked-by: Michael Hennerich --- drivers/video/backlight/adp5520_bl.c | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/video/backlight/adp5520_bl.c b/drivers/video/backlight/adp5520_bl.c index dd88ba1d71ce..35373e2065b2 100644 --- a/drivers/video/backlight/adp5520_bl.c +++ b/drivers/video/backlight/adp5520_bl.c @@ -332,10 +332,18 @@ static int adp5520_bl_probe(struct platform_device *pdev) } platform_set_drvdata(pdev, bl); - ret |= adp5520_bl_setup(bl); + ret = adp5520_bl_setup(bl); + if (ret) { + dev_err(>dev, "failed to setup\n"); + if (data->pdata->en_ambl_sens) + sysfs_remove_group(>dev.kobj, + _bl_attr_group); + return ret; + } + backlight_update_status(bl); - return ret; + return 0; } static int adp5520_bl_remove(struct platform_device *pdev) -- Greetings, Michael -- Analog Devices GmbH Otl-Aicher Strasse 60-64 80807 München Sitz der Gesellschaft München, Registergericht München HRB 40368, Geschäftsführer: Peter Kolberg, Ali Raza Husain, Eileen Wynne
[PATCH] backlight: adp5520: fix error handling in adp5520_bl_probe()
If adp5520_bl_setup() fails, sysfs group left unremoved. By the way, fix overcomplicated assignement of error code. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov--- drivers/video/backlight/adp5520_bl.c | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/video/backlight/adp5520_bl.c b/drivers/video/backlight/adp5520_bl.c index dd88ba1d71ce..35373e2065b2 100644 --- a/drivers/video/backlight/adp5520_bl.c +++ b/drivers/video/backlight/adp5520_bl.c @@ -332,10 +332,18 @@ static int adp5520_bl_probe(struct platform_device *pdev) } platform_set_drvdata(pdev, bl); - ret |= adp5520_bl_setup(bl); + ret = adp5520_bl_setup(bl); + if (ret) { + dev_err(>dev, "failed to setup\n"); + if (data->pdata->en_ambl_sens) + sysfs_remove_group(>dev.kobj, + _bl_attr_group); + return ret; + } + backlight_update_status(bl); - return ret; + return 0; } static int adp5520_bl_remove(struct platform_device *pdev) -- 1.9.1
[PATCH] backlight: adp5520: fix error handling in adp5520_bl_probe()
If adp5520_bl_setup() fails, sysfs group left unremoved. By the way, fix overcomplicated assignement of error code. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov --- drivers/video/backlight/adp5520_bl.c | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/video/backlight/adp5520_bl.c b/drivers/video/backlight/adp5520_bl.c index dd88ba1d71ce..35373e2065b2 100644 --- a/drivers/video/backlight/adp5520_bl.c +++ b/drivers/video/backlight/adp5520_bl.c @@ -332,10 +332,18 @@ static int adp5520_bl_probe(struct platform_device *pdev) } platform_set_drvdata(pdev, bl); - ret |= adp5520_bl_setup(bl); + ret = adp5520_bl_setup(bl); + if (ret) { + dev_err(>dev, "failed to setup\n"); + if (data->pdata->en_ambl_sens) + sysfs_remove_group(>dev.kobj, + _bl_attr_group); + return ret; + } + backlight_update_status(bl); - return ret; + return 0; } static int adp5520_bl_remove(struct platform_device *pdev) -- 1.9.1