Re: [PATCH] drm/tilcdc: fix wrong error handling

From: Sean Paul
Date: Fri Sep 23 2016 - 08:02:23 EST


On Fri, Sep 23, 2016 at 5:01 AM, Jyri Sarha <jsarha@xxxxxx> wrote:
> On 09/23/16 14:47, Sean Paul wrote:
>> On Fri, Sep 23, 2016 at 3:52 AM, Daniel Schultz <d.schultz@xxxxxxxxx> wrote:
>>> When 'component_bind_all' fails it should not try to unbind components
>>> in the error handling. This will produce a null pointer kernel panic when
>>> no component exist.
>>>
>>> This patch changes the order of the error handling. Now, it will only
>>> unbind components if the are bound. Otherwise, the module will jump to
>>> an error label below.
>>>
>>> Signed-off-by: Daniel Schultz <d.schultz@xxxxxxxxx>
>>
>> Reviewed-by: Sean Paul <seanpaul@xxxxxxxxxxxx>
>>
>
> Thanks, for both. Should I pick this one :)?
>

Yes, it's all yours! :)

Sean


> BR,
> Jyri
>
>>> ---
>>> drivers/gpu/drm/tilcdc/tilcdc_drv.c | 6 +++---
>>> 1 file changed, 3 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/tilcdc/tilcdc_drv.c b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
>>> index d278093..d491610 100644
>>> --- a/drivers/gpu/drm/tilcdc/tilcdc_drv.c
>>> +++ b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
>>> @@ -315,13 +315,13 @@ fail_irq_uninstall:
>>> fail_vblank_cleanup:
>>> drm_vblank_cleanup(dev);
>>>
>>> -fail_mode_config_cleanup:
>>> - drm_mode_config_cleanup(dev);
>>> -
>>> fail_component_cleanup:
>>> if (priv->is_componentized)
>>> component_unbind_all(dev->dev, dev);
>>>
>>> +fail_mode_config_cleanup:
>>> + drm_mode_config_cleanup(dev);
>>> +
>>> fail_external_cleanup:
>>> tilcdc_remove_external_encoders(dev);
>>>
>>> --
>>> 1.9.1
>>>
>