From patchwork Mon Nov 8 08:38:36 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Evgeny Kuznetsov X-Patchwork-Id: 307892 X-Patchwork-Delegate: tony@atomide.com Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id oA88jN7V031685 for ; Mon, 8 Nov 2010 08:45:23 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754269Ab0KHIoz (ORCPT ); Mon, 8 Nov 2010 03:44:55 -0500 Received: from smtp.nokia.com ([192.100.122.230]:60965 "EHLO mgw-mx03.nokia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754264Ab0KHIoz (ORCPT ); Mon, 8 Nov 2010 03:44:55 -0500 Received: from esebh105.NOE.Nokia.com (esebh105.ntc.nokia.com [172.21.138.211]) by mgw-mx03.nokia.com (Switch-3.3.3/Switch-3.3.3) with ESMTP id oA88iW6R024393; Mon, 8 Nov 2010 10:44:39 +0200 Received: from vaebh104.NOE.Nokia.com ([10.160.244.30]) by esebh105.NOE.Nokia.com with Microsoft SMTPSVC(6.0.3790.4675); Mon, 8 Nov 2010 10:44:15 +0200 Received: from xesebe101.nee.nokia.com ([147.243.42.11]) by vaebh104.NOE.Nokia.com with Microsoft SMTPSVC(6.0.3790.4675); Mon, 8 Nov 2010 10:44:14 +0200 Received: from xesefe101.nee.nokia.com ([147.243.42.13]) by xesebe101.nee.nokia.com with Microsoft SMTPSVC(6.0.3790.4675); Mon, 8 Nov 2010 10:44:13 +0200 Received: from localhost.localdomain ([10.127.9.148]) by xesefe101.nee.nokia.com with Microsoft SMTPSVC(6.0.3790.4675); Mon, 8 Nov 2010 10:44:12 +0200 From: Evgeny Kuznetsov To: tony@atomide.com Cc: linux-omap@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux@arm.linux.org.uk, ext-eugeny.kuznetsov@nokia.com Subject: [PATCHv3 1/1] omap: Ptr "isr_reg" tracked as NULL was dereferenced Date: Mon, 8 Nov 2010 11:38:36 +0300 Message-Id: X-Mailer: git-send-email 1.6.3.3 X-OriginalArrivalTime: 08 Nov 2010 08:44:13.0184 (UTC) FILETIME=[1E754000:01CB7F21] X-Nokia-AV: Clean Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter1.kernel.org [140.211.167.41]); Mon, 08 Nov 2010 08:45:23 +0000 (UTC) diff --git a/arch/arm/plat-omap/gpio.c b/arch/arm/plat-omap/gpio.c index c05c653..e0e2fa7 100644 --- a/arch/arm/plat-omap/gpio.c +++ b/arch/arm/plat-omap/gpio.c @@ -1318,6 +1318,10 @@ static void gpio_irq_handler(unsigned int irq, struct irq_desc *desc) if (bank->method == METHOD_GPIO_44XX) isr_reg = bank->base + OMAP4_GPIO_IRQSTATUS0; #endif + + if (WARN_ON(!isr_reg)) + goto exit; + while(1) { u32 isr_saved, level_mask = 0; u32 enabled; @@ -1377,6 +1381,7 @@ static void gpio_irq_handler(unsigned int irq, struct irq_desc *desc) configured, we must unmask the bank interrupt only after handler(s) are executed in order to avoid spurious bank interrupt */ +exit: if (!unmasked) desc->chip->unmask(irq);