[alsa-devel] [PATCH] ASoC: Intel: Fix some error handling path in 'sst_platform_get_resources()'
Pierre-Louis Bossart
pierre-louis.bossart at linux.intel.com
Sun Jan 28 21:12:24 CET 2018
On 1/27/18 1:40 PM, Christophe JAILLET wrote:
> Several error handling paths set 'ret' to an error code, but the function
> always returns 0 (i.e. success)
>
> Return 'ret' instead in order to return the error code.
>
> Signed-off-by: Christophe JAILLET <christophe.jaillet at wanadoo.fr>
> ---
> I guess that the code needs more correction. For this first try, I've left
> the logic as-is, but I don't really see why we call 'pci_release_regions()'
> in the normal path.
> A 'return 0;' before the 'do_release_regions' label would sound more
> logical to me.
The code looks indeed weird, but I am a bit concerned about changing it
without actually running tests. The state of this driver is questionable
(firmware not available in the regular firmware tree, no know test
running on Edison/Merrifield), so changes should really be parked and
merged as a batch with likely other needed changes. This has been on my
TODO list for some time but it's likely going to be a post-March topic.
> ---
> sound/soc/intel/atom/sst/sst_pci.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/sound/soc/intel/atom/sst/sst_pci.c b/sound/soc/intel/atom/sst/sst_pci.c
> index 6906ee624cf6..8cae20802b7c 100644
> --- a/sound/soc/intel/atom/sst/sst_pci.c
> +++ b/sound/soc/intel/atom/sst/sst_pci.c
> @@ -105,9 +105,12 @@ static int sst_platform_get_resources(struct intel_sst_drv *ctx)
> goto do_release_regions;
> }
> dev_dbg(ctx->dev, "DRAM Ptr %p\n", ctx->dram);
> +
> + ret = 0;
> +
> do_release_regions:
> pci_release_regions(pci);
> - return 0;
> + return ret;
> }
>
> /*
>
More information about the Alsa-devel
mailing list