[alsa-devel] [PATCH] sound/isa/sc6000.c: add missing sc6000_setup_board
Takashi Iwai
tiwai at suse.de
Thu Apr 19 13:48:24 CEST 2012
At Thu, 19 Apr 2012 08:40:40 +0200,
Julia Lawall wrote:
>
> From: Julia Lawall <Julia.Lawall at lip6.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 at lip6.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,
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);
>
More information about the Alsa-devel
mailing list