[alsa-devel] [PATCH 2/3] ASoC: blackfin: Use common error handling code in sport_create()

SF Markus Elfring elfring at users.sourceforge.net
Fri Aug 11 22:42:20 CEST 2017


From: Markus Elfring <elfring at users.sourceforge.net>
Date: Fri, 11 Aug 2017 22:02:47 +0200

Add a jump target so that a bit of exception handling can be better reused
at the end of this function.

Signed-off-by: Markus Elfring <elfring at users.sourceforge.net>
---
 sound/soc/blackfin/bf6xx-sport.c | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/sound/soc/blackfin/bf6xx-sport.c b/sound/soc/blackfin/bf6xx-sport.c
index 1bc3e0a47a57..fcddebf2558c 100644
--- a/sound/soc/blackfin/bf6xx-sport.c
+++ b/sound/soc/blackfin/bf6xx-sport.c
@@ -394,19 +394,18 @@ struct sport_device *sport_create(struct platform_device *pdev)
 	sport->pdev = pdev;
 
 	ret = sport_get_resource(sport);
-	if (ret) {
-		kfree(sport);
-		return NULL;
-	}
+	if (ret)
+		goto free_data;
 
 	ret = sport_request_resource(sport);
-	if (ret) {
-		kfree(sport);
-		return NULL;
-	}
+	if (ret)
+		goto free_data;
 
 	dev_dbg(dev, "SPORT create success\n");
 	return sport;
+free_data:
+	kfree(sport);
+	return NULL;
 }
 EXPORT_SYMBOL(sport_create);
 
-- 
2.14.0



More information about the Alsa-devel mailing list