From patchwork Fri Dec 6 12:55:12 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wei Yongjun X-Patchwork-Id: 3295591 Return-Path: X-Original-To: patchwork-linux-fbdev@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id B01B6C0D4A for ; Fri, 6 Dec 2013 12:55:20 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 8880A20528 for ; Fri, 6 Dec 2013 12:55:18 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 6C102204EC for ; Fri, 6 Dec 2013 12:55:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754386Ab3LFMzO (ORCPT ); Fri, 6 Dec 2013 07:55:14 -0500 Received: from mail-bk0-f42.google.com ([209.85.214.42]:55345 "EHLO mail-bk0-f42.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753588Ab3LFMzN (ORCPT ); Fri, 6 Dec 2013 07:55:13 -0500 Received: by mail-bk0-f42.google.com with SMTP id w11so284348bkz.1 for ; Fri, 06 Dec 2013 04:55:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:cc:content-type; bh=Zbq0ABzMb72LIJCEtqzW2p0edLj4aSCZQhDGVE/QHBo=; b=EF1+xZw1sw29LeOmXmZx3LpeGTNtITGFQVPTYengqv7gavYoCu3TYok3od+0yENVcl L/GoAIdSXFlekwAWGucAIHzhS+IDxP1ENNX1ps6+BrDSroXkSO/n6bCKrOhRjvNYf4HT KwuIKr07Biom0DVoiN85KjOZ4QKUdogcKEcTqnc+EuW5EcUEA9DBq355a5qqk9xZ5/Ch mGc2oaTBCDI/ZOR05OXjXWX8Q9vHa5/qlVtWF10zoI40ilwqCuAPyzdKXcMnvkvQ7UtS xQJ3h/tpJt8oH7kJbSUHJ/ed+2Afic14PyrgUkklQOvGcAkeW4MwHpgOVqfkAz98zD3J nq7g== MIME-Version: 1.0 X-Received: by 10.204.200.138 with SMTP id ew10mr1077665bkb.34.1386334512448; Fri, 06 Dec 2013 04:55:12 -0800 (PST) Received: by 10.204.74.130 with HTTP; Fri, 6 Dec 2013 04:55:12 -0800 (PST) Date: Fri, 6 Dec 2013 20:55:12 +0800 Message-ID: Subject: [PATCH] ARM: OMAPFB: panel-sony-acx565akm: fix missing unlock in acx565akm_panel_power_on() From: Wei Yongjun To: tomi.valkeinen@ti.com, plagnioj@jcrosoft.com, aaro.koskinen@iki.fi Cc: yongjun_wei@trendmicro.com.cn, linux-omap@vger.kernel.org, linux-fbdev@vger.kernel.org Sender: linux-fbdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-fbdev@vger.kernel.org X-Spam-Status: No, score=-7.0 required=5.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, T_DKIM_INVALID, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Wei Yongjun Add the missing unlock before return from function acx565akm_panel_power_on() in the error handling case. Signed-off-by: Wei Yongjun --- drivers/video/omap2/displays-new/panel-sony-acx565akm.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/drivers/video/omap2/displays-new/panel-sony-acx565akm.c b/drivers/video/omap2/displays-new/panel-sony-acx565akm.c index d94f35d..69aa4a1 100644 --- a/drivers/video/omap2/displays-new/panel-sony-acx565akm.c +++ b/drivers/video/omap2/displays-new/panel-sony-acx565akm.c @@ -536,7 +536,7 @@ static int acx565akm_panel_power_on(struct omap_dss_device *dssdev) r = in->ops.sdi->enable(in); if (r) { pr_err("%s sdi enable failed\n", __func__); - return r; + goto out; } /*FIXME tweak me */ @@ -547,7 +547,8 @@ static int acx565akm_panel_power_on(struct omap_dss_device *dssdev) if (ddata->enabled) { dev_dbg(&ddata->spi->dev, "panel already enabled\n"); - return 0; + r = 0; + goto out; } /* @@ -571,6 +572,10 @@ static int acx565akm_panel_power_on(struct omap_dss_device *dssdev) mutex_unlock(&ddata->mutex); return acx565akm_bl_update_status(ddata->bl_dev); + +out: + mutex_unlock(&ddata->mutex); + return r; } static void acx565akm_panel_power_off(struct omap_dss_device *dssdev)