Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932799AbbFIKTS (ORCPT ); Tue, 9 Jun 2015 06:19:18 -0400 Received: from mailout1.samsung.com ([203.254.224.24]:34111 "EHLO mailout1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932184AbbFIKS4 (ORCPT ); Tue, 9 Jun 2015 06:18:56 -0400 X-AuditID: cbfee691-f79ca6d00000456a-ac-5576bd7ec643 From: Inha Song To: broonie@kernel.org, lee.jones@linaro.org Cc: sameo@linux.intel.com, patches@opensource.wolfsonmicro.com, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org, Inha Song Subject: [alsa-devel] [PATCH] mfd: wm8994: Fix NULL pointer exception on missing pdata Date: Tue, 09 Jun 2015 19:18:32 +0900 Message-id: <1433845112-371-1-git-send-email-ideal.song@samsung.com> X-Mailer: git-send-email 2.0.0.390.gcb682f8 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrJLMWRmVeSWpSXmKPExsWyRsSkRLdub1mowYKVvBZXLh5ispj68Amb xa6/9xkt7n89ymhxedccNovlb/+zWZzuZnVg99jwuYnNY9OqTjaPO9f2sHnMOxno8XLibzaP vi2rGD0+b5ILYI/isklJzcksSy3St0vgytjcL1pwnrNicp90A2MrRxcjJ4eEgIlE1/vXbBC2 mMSFe+uBbC4OIYGljBI/mhaxwBSdO7eAEcQWEpjOKLHzWw5E0UQmifnTbzOBJNgENCS+f97M DGKLCOhIfP54jBmkiFlgIaPE1ZlrgBwODmGBCInFvxJBalgEVCUe/uoAq+cVcJGYf2YbO8Qy bYl9DTPBrpAQaGeXeLp/IyNEg4DEt8mHWEDmSAjISmw6wAxRLylxcMUNlgmMggsYGVYxiqYW JBcUJ6UXmeoVJ+YWl+al6yXn525iBIbw6X/PJu5gvH/A+hCjAAejEg+vonJZqBBrYllxZe4h RlOgDROZpUST84GRklcSb2hsZmRhamJqbGRuaaYkzqsj/TNYSCA9sSQ1OzW1ILUovqg0J7X4 ECMTB6dUA6PSgT+dsfYz/x5RMbnHvkLwhd6dMxPELy8+kpwdnPVsX9kn8/Ryl2NPAjL6Pm27 OEfV+kWpC+8pdj/F2m0HbfpyUk27k58ENs3eeyEp7und5rxaPX5xwUtce91TV2j/uL541gnH j6LPpktrn13rZBOqFDUhwyX30gJ/YSmLqlYTznsGx0U1rZVYijMSDbWYi4oTARSpGeRcAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprMIsWRmVeSWpSXmKPExsVy+t9jQd26vWWhBm2nWS2uXDzEZDH14RM2 i11/7zNa3P96lNHi8q45bBbL3/5nszjdzerA7rHhcxObx6ZVnWwed67tYfOYdzLQ4+XE32we fVtWMXp83iQXwB7VwGiTkZqYklqkkJqXnJ+SmZduq+QdHO8cb2pmYKhraGlhrqSQl5ibaqvk 4hOg65aZA3SPkkJZYk4pUCggsbhYSd8O04TQEDddC5jGCF3fkCC4HiMDNJCwhjFjc79owXnO isl90g2MrRxdjJwcEgImEufOLWCEsMUkLtxbzwZiCwlMZ5TY+S2ni5ELyJ7IJDF/+m0mkASb gIbE98+bmUFsEQEdic8fjzGDFDELLGSUuDpzDZDDwSEsECGx+FciSA2LgKrEw18dYPW8Ai4S 889sY4dYpi2xr2Em2wRG7gWMDKsYRVMLkguKk9JzjfSKE3OLS/PS9ZLzczcxgiPkmfQOxlUN FocYBTgYlXh4TyiUhQqxJpYVV+YeYpTgYFYS4WXpAgrxpiRWVqUW5ccXleakFh9iNAXaPpFZ SjQ5Hxi9eSXxhsYmZkaWRuaGFkbG5krivCfzfUKFBNITS1KzU1MLUotg+pg4OKUaGDV+zCqd XKUW1PJyY//Mhj+/3y458PJd4M+5zv4ceXrcCl+D6l88OytqaqvqsIjvcPynmcsijC7N4y4t zlrEOCE7qFZbWvfPjlKtWXVlM7b4Vm1PEa7VSUo/smCteFb1luzuib+anFd//vLDapdLf62H W4xavPGNQ/yGKc+SHtWqS+w50si/WomlOCPRUIu5qDgRAJnQwsOmAgAA DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1444 Lines: 37 If we use the dev_get_platdata, pdata can be NULL in DT environments. Actually, NULL pointer exception is occurs with error messages like this: [ 1.226583] Unable to handle kernel NULL pointer dereference at virtual address 00000044 [ 1.467910] [] (wm8994_irq_init) from [] (wm8994_i2c_probe+0x684/0x858) [ 1.476241] [] (wm8994_i2c_probe) from [] (i2c_device_probe+0x11c/0x17c) In wm8994-core, we already checked wheter platform data is NULL and set the wm8994->pdata to platform data if platform data is not NULL. So, we can use wm8994->pdata instead of platform data. Signed-off-by: Inha Song --- drivers/mfd/wm8994-irq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/mfd/wm8994-irq.c b/drivers/mfd/wm8994-irq.c index a14407e..ec2c891 100644 --- a/drivers/mfd/wm8994-irq.c +++ b/drivers/mfd/wm8994-irq.c @@ -193,7 +193,7 @@ int wm8994_irq_init(struct wm8994 *wm8994) { int ret; unsigned long irqflags; - struct wm8994_pdata *pdata = dev_get_platdata(wm8994->dev); + struct wm8994_pdata *pdata = &wm8994->pdata; if (!wm8994->irq) { dev_warn(wm8994->dev, -- 2.0.0.390.gcb682f8 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/