[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.02.1204190713200.1954@localhost6.localdomain6>
Date: Thu, 19 Apr 2012 07:14:05 +0200 (CEST)
From: Julia Lawall <julia.lawall@...6.fr>
To: Jingoo Han <jg1.han@...sung.com>
cc: 'Ryan Mallon' <rmallon@...il.com>,
'Florian Tobias Schandinat' <FlorianSchandinat@....de>,
kernel-janitors@...r.kernel.org, linux-fbdev@...r.kernel.org,
linux-kernel@...r.kernel.org,
'Julia Lawall' <Julia.Lawall@...6.fr>, joe@...ches.com
Subject: RE: [PATCH] drivers/video/ep93xx-fb.c: clean up error-handling
code
I don't know thw impact of the ./. I use the options
--nokeywords --nogit-fallback --subsystem --norolestats -f
julia
On Thu, 19 Apr 2012, Jingoo Han wrote:
>> -----Original Message-----
>> From: Ryan Mallon
>> Sent: Thursday, April 19, 2012 9:16 AM
>> To: Julia Lawall
>> Cc: Florian Tobias Schandinat; kernel-janitors@...r.kernel.org; linux-fbdev@...r.kernel.org; linux-
>> kernel@...r.kernel.org
>> Subject: Re: [PATCH] drivers/video/ep93xx-fb.c: clean up error-handling code
>>
>> On 19/04/12 05:37, Julia Lawall wrote:
>>
>>> From: Julia Lawall <Julia.Lawall@...6.fr>
>>>
>>> There were two problems in this code: failure of the setup function should
>>> free locally allocated resources like other nearby failures, and the test
>>> if (&info->cmap) can never be false. To generally clean things up, this
>>> patch reorders the error handling code at the failed label and adds labels
>>> so that the conditionals are not necessary.
>>>
>>> Signed-off-by: Julia Lawall <Julia.Lawall@...6.fr>
>>
>> Reviewed-by: Ryan Mallon <rmallon@...il.com>
>>
>> Oddly, scripts/get_maintainer.pl on this file doesn't return me, even
>> though, according to git blame, I am the author of 90% of the commits.
>> Should I have an entry in the MAINTAINERS file, or is
>> scripts/get_maintainer.pl not working properly?
>
> There are optional differences in using scripts/get_maintainer.pl.
> If you use './' ahead of file path, you will see your name.
>
> Without './' ahead of 'drivers/video/ep93xx-fb.c':
> ./scripts/get_maintainer.pl --file drivers/video/ep93xx-fb.c
> Florian Tobias Schandinat <FlorianSchandinat@....de> (maintainer:FRAMEBUFFER LAYER)
> linux-fbdev@...r.kernel.org (open list:FRAMEBUFFER LAYER)
> linux-kernel@...r.kernel.org (open list)
>
> With './' ahead of 'drivers/video/ep93xx-fb.c':
> ./scripts/get_maintainer.pl --file ./drivers/video/ep93xx-fb.c
> Ryan Mallon <rmallon@...il.com> (commit_signer:2/3=67%)
> Paul Gortmaker <paul.gortmaker@...driver.com> (commit_signer:1/3=33%)
> H Hartley Sweeten <hsweeten@...ionengravers.com> (commit_signer:1/3=33%)
> Jesper Juhl <jj@...osbits.net> (commit_signer:1/3=33%)
> Jiri Kosina <jkosina@...e.cz> (commit_signer:1/3=33%)
> linux-kernel@...r.kernel.org (open list)
>
>
> Best regards,
> Jingoo Han
>
>>
>> ~Ryan
>>
>>> ---
>>> Not tested.
>>>
>>> drivers/video/ep93xx-fb.c | 32 +++++++++++++++++---------------
>>> 1 file changed, 17 insertions(+), 15 deletions(-)
>>>
>>> diff --git a/drivers/video/ep93xx-fb.c b/drivers/video/ep93xx-fb.c
>>> index f8babbe..345d962 100644
>>> --- a/drivers/video/ep93xx-fb.c
>>> +++ b/drivers/video/ep93xx-fb.c
>>> @@ -507,16 +507,16 @@ static int __devinit ep93xxfb_probe(struct platform_device *pdev)
>>>
>>> err = fb_alloc_cmap(&info->cmap, 256, 0);
>>> if (err)
>>> - goto failed;
>>> + goto failed_cmap;
>>>
>>> err = ep93xxfb_alloc_videomem(info);
>>> if (err)
>>> - goto failed;
>>> + goto failed_videomem;
>>>
>>> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
>>> if (!res) {
>>> err = -ENXIO;
>>> - goto failed;
>>> + goto failed_resource;
>>> }
>>>
>>> /*
>>> @@ -532,7 +532,7 @@ static int __devinit ep93xxfb_probe(struct platform_device *pdev)
>>> fbi->mmio_base = ioremap(res->start, resource_size(res));
>>> if (!fbi->mmio_base) {
>>> err = -ENXIO;
>>> - goto failed;
>>> + goto failed_resource;
>>> }
>>>
>>> strcpy(info->fix.id, pdev->name);
>>> @@ -553,24 +553,24 @@ static int __devinit ep93xxfb_probe(struct platform_device *pdev)
>>> if (err == 0) {
>>> dev_err(info->dev, "No suitable video mode found\n");
>>> err = -EINVAL;
>>> - goto failed;
>>> + goto failed_mode;
>>> }
>>>
>>> if (mach_info->setup) {
>>> err = mach_info->setup(pdev);
>>> if (err)
>>> - return err;
>>> + goto failed_mode;
>>> }
>>>
>>> err = ep93xxfb_check_var(&info->var, info);
>>> if (err)
>>> - goto failed;
>>> + goto failed_check;
>>>
>>> fbi->clk = clk_get(info->dev, NULL);
>>> if (IS_ERR(fbi->clk)) {
>>> err = PTR_ERR(fbi->clk);
>>> fbi->clk = NULL;
>>> - goto failed;
>>> + goto failed_check;
>>> }
>>>
>>> ep93xxfb_set_par(info);
>>> @@ -585,15 +585,17 @@ static int __devinit ep93xxfb_probe(struct platform_device *pdev)
>>> return 0;
>>>
>>> failed:
>>> - if (fbi->clk)
>>> - clk_put(fbi->clk);
>>> - if (fbi->mmio_base)
>>> - iounmap(fbi->mmio_base);
>>> - ep93xxfb_dealloc_videomem(info);
>>> - if (&info->cmap)
>>> - fb_dealloc_cmap(&info->cmap);
>>> + clk_put(fbi->clk);
>>> +failed_check:
>>> if (fbi->mach_info->teardown)
>>> fbi->mach_info->teardown(pdev);
>>> +failed_mode:
>>> + iounmap(fbi->mmio_base);
>>> +failed_resource:
>>> + ep93xxfb_dealloc_videomem(info);
>>> +failed_videomem:
>>> + fb_dealloc_cmap(&info->cmap);
>>> +failed_cmap:
>>> kfree(info);
>>> platform_set_drvdata(pdev, NULL);
>>>
>>>
>>> --
>>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>>> the body of a message to majordomo@...r.kernel.org
>>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>>> Please read the FAQ at http://www.tux.org/lkml/
>>
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
>> the body of a message to majordomo@...r.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
> --
> To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists