Re: [PATCH 2/9] sound/oss/dmasound/dmasound_awacs.c: ioremap balanced with iounmap

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 06 Oct 2006 11:08:53 +0530
Amol Lad <[email protected]> wrote:

> Signed-off-by: Amol Lad <[email protected]>
> ---
>  dmasound_awacs.c |   39 +++++++++++++++++++++++++++++++++++----
>  1 files changed, 35 insertions(+), 4 deletions(-)
> ---
> diff -uprN -X linux-2.6.19-rc1-orig/Documentation/dontdiff linux-2.6.19-rc1-orig/sound/oss/dmasound/dmasound_awacs.c linux-2.6.19-rc1/sound/oss/dmasound/dmasound_awacs.c
> --- linux-2.6.19-rc1-orig/sound/oss/dmasound/dmasound_awacs.c	2006-10-05 14:01:04.000000000 +0530
> +++ linux-2.6.19-rc1/sound/oss/dmasound/dmasound_awacs.c	2006-10-05 17:34:42.000000000 +0530
> @@ -3067,8 +3067,9 @@ printk("dmasound_pmac: Awacs/Screamer Co
>  		udelay(1);
>  
>  	/* Initialize beep stuff */
> -	if ((res=setup_beep()))
> -		return res ;
> +	res=setup_beep();
> +	if (res)
> +		goto out_unmap;
>  
>  #ifdef CONFIG_PM
>  	pmu_register_sleep_notifier(&awacs_sleep_notifier);
> @@ -3160,7 +3161,26 @@ printk("dmasound_pmac: Awacs/Screamer Co
>  	 */
>  	input_register_device(awacs_beep_dev);
>  
> -	return dmasound_init();
> +	res = dmasound_init();
> +	if (res)
> +		goto out_unmap1;
> +
> +	return 0;
> +	
> +out_unmap1:
> +	if (is_pbook_3X00)
> +		iounmap(latch_base);
> +	else if (is_pbook_g3)
> +		iounmap(macio_base);
> +out_unmap:
> +	if (i2s_node)
> +		iounmap(i2s);
> +	else
> +		iounmap(awacs);
> +	iounmap(awacs_txdma);
> +	iounmap(awacs_rxdma);
> +
> +	return res;
>  }
>  
>  static void __exit dmasound_awacs_cleanup(void)
> @@ -3177,8 +3197,19 @@ static void __exit dmasound_awacs_cleanu
>  			daca_cleanup();
>  			break;
>  	}
> -	dmasound_deinit();
>  
> +	if (is_pbook_3X00)
> +		iounmap(latch_base);
> +	else if (is_pbook_g3)
> +		iounmap(macio_base);
> +	if (i2s_node)
> +		iounmap(i2s);
> +	else
> +		iounmap(awacs);
> +	iounmap(awacs_txdma);
> +	iounmap(awacs_rxdma);
> +
> +	dmasound_deinit();
>  }
>  

man, this is taxing my attention span to the limit.  It'd be nice if
someone else could help out with the reviewing here..

This one could benefit from having a helper function which is called from
both places.


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux