[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.02.1204191418420.1866@hadrien>
Date: Thu, 19 Apr 2012 14:21:59 +0200 (CEST)
From: Julia Lawall <julia.lawall@...6.fr>
To: Takashi Iwai <tiwai@...e.de>
cc: Jaroslav Kysela <perex@...ex.cz>, kernel-janitors@...r.kernel.org,
alsa-devel@...a-project.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] sound/isa/sc6000.c: add missing sc6000_setup_board
On Thu, 19 Apr 2012, Takashi Iwai wrote:
> At Thu, 19 Apr 2012 08:40:40 +0200,
> Julia Lawall wrote:
>>
>> From: Julia Lawall <Julia.Lawall@...6.fr>
>>
>> There seems to be no interaction between *port and the requested region, so
>> the clearing of *vport should take place if the request_region fails.
>>
>> Signed-off-by: Julia Lawall <Julia.Lawall@...6.fr>
>>
>> ---
>> Not tested. sc6000_setup_board seems rather complicated, so my reasoning
>> could be completely wrong.
>
> This setup is called first at sc6000_init_board(), which is called
> much later than these error paths. So, I don't think the need to call
> sc6000_setup_board(*vport, 0) at err_unmap1.
Thanks for the feedback. I guess then it is not needed on the failure
of devm_ioport_map either. Is it needed on the failure of
sc6000_init_board? That can fail either before or after the calls to
sc6000_setup_board hav taken place.
thanks,
julia
>
>
> thanks,
>
> Takashi
>
>>
>> sound/isa/sc6000.c | 5 +++--
>> 1 file changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/sound/isa/sc6000.c b/sound/isa/sc6000.c
>> index d97d0f3..57679cb 100644
>> --- a/sound/isa/sc6000.c
>> +++ b/sound/isa/sc6000.c
>> @@ -594,7 +594,7 @@ static int __devinit snd_sc6000_probe(struct device *devptr, unsigned int dev)
>> snd_printk(KERN_ERR PFX
>> "I/O port cannot be iomaped.\n");
>> err = -EBUSY;
>> - goto err_unmap1;
>> + goto err_unmap0;
>> }
>>
>> /* to make it marked as used */
>> @@ -678,9 +678,10 @@ static int __devinit snd_sc6000_probe(struct device *devptr, unsigned int dev)
>> return 0;
>>
>> err_unmap2:
>> - sc6000_setup_board(*vport, 0);
>> release_region(mss_port[dev], 4);
>> err_unmap1:
>> + sc6000_setup_board(*vport, 0);
>> +err_unmap0:
>> release_region(port[dev], 0x10);
>> err_exit:
>> snd_card_free(card);
>>
> --
> 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