From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752217AbdA3FFZ (ORCPT ); Mon, 30 Jan 2017 00:05:25 -0500 Received: from mailout4.samsung.com ([203.254.224.34]:55441 "EHLO mailout4.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751723AbdA3FFR (ORCPT ); Mon, 30 Jan 2017 00:05:17 -0500 X-AuditID: b6c32a12-f79596d000001321-1f-588ec9611f69 From: Shailendra Verma To: Krzysztof Kozlowski , Sangbeom Kim , Sylwester Nawrocki , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org, p.shailesh@samsung.com, ashish.kalra@samsung.com, Shailendra Verma , Shailendra Verma Subject: [PATCH] Sound: soc: samsung - Fix possible NULL derefrence. Date: Mon, 30 Jan 2017 10:34:19 +0530 Message-id: <1485752659-30185-1-git-send-email-shailendra.v@samsung.com> X-Mailer: git-send-email 1.7.9.5 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrHIsWRmVeSWpSXmKPExsWy7bCmiG7iyb4Ig2vnpS2uXDzEZHF/2jd2 i6kPn7BZnD+/gd3i25UOJovLu+awWeyY0spi0bmrn9Xi8Jt2VouLK74wWdyaN5PNYtG3V8wW G76vZXTg9djwuYnNY+esu+wem1Z1snnse7uMzaNvyypGj/VbrrJ4fN4kF8AexWWTkpqTWZZa pG+XwJXx99JNxoJ97BU/52xjb2Ccz9bFyMkhIWAicfP+CUYIW0ziwr31QHEuDiGBpYwSG/ou sIIkhAQ+M0rs6baHaVj2YyUrRNFKRonfqx6ygCTYBAwlXvf9ZQJJiAjcYZZ48mEvWEJYwEXi yeH7YCtYBFQl2j50gcV5BTwkfnU8AlrHATRVQWLOJBuQXgmB32wS1/qWQcVlJTYdYIZY7CLR dqIZ6mphiVfHt7BD2FISTbdPsUD0HmOUePx8MROEc5lRYsvpZVBV9hLXbr0Gs5kF+CQWr38A tYBXoqNNCKLEQ+LN5VlQCxwl1n56wQzxfazEsVMTGCcwSi5gZFjFKJZaUJybnlpsXGCiV5yY W1yal66XnJ+7iREcy1pCOxiXrPA6xCjAwajEw+uQ3xchxJpYVlyZe4hRgoNZSYS3fCdQiDcl sbIqtSg/vqg0J7X4EKM0B4uSOO/HSusIIYH0xJLU7NTUgtQimCwTB6dUA6N4pZahQcvLyXOW ZTyZs6zmW+eH4t+7+won2CVrF9kL2FkKSm4ol68t+Mrs/XwDE8vDCWuftndOSJ7yfNe/RGnn s+wTHL8pmG68UiodmPewQ37WVs/oV25Xn/dlXYws497DYFOz4AcX2+6vZjdiTQtvB+jfNv/p vepknWAXY4XikQWa/z7FVSixFGckGmoxFxUnAgCr3lwo4QIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrELMWRmVeSWpSXmKPExsWSnbNCVTfxZF+EwcKfPBZXLh5isrg/7Ru7 xdSHT9gszp/fwG7x7UoHk8XlXXPYLHZMaWWx6NzVz2px+E07q8XFFV+YLG7Nm8lmsejbK2aL Dd/XMjrwemz43MTmsXPWXXaPTas62Tz2vV3G5tG3ZRWjx/otV1k8Pm+SC2CPcrPJSE1MSS1S SM1Lzk/JzEu3VQoNcdO1UFLIS8xNtVWK0PUNCVJSKEvMKQXyjAzQgINzgHuwkr5dglvG30s3 GQv2sVf8nLONvYFxPlsXIyeHhICJxLIfK1khbDGJC/fWA8W5OIQEljNK7F7+G6yITcBQ4nXf XyaQhIjAM2aJBSsOgnUIC7hIPDl8nxHEZhFQlWj70MUCYvMKeEj86ngE1MwBNFVBYs4kmwmM nAsYGVYxiqUWFOem5xYXGBjrFSfmFpfmpesl5+duYgSG77bDShI7GBes8DrEKMDBqMTD++No X4QQa2JZcWXuIUYJDmYlEd7ynUAh3pTEyqrUovz4otKc1OJDjKZA2ycyS4km5wNjK68k3tDE 1MLCwsTS2NjYwkRJnDd2+rNwIYH0xJLU7NTUgtQimD4mDk6pBsaUp7+l7wlvzl/733uCh8p2 Xj6zmBkr836/elfbPN/47eWsf54yU1d4872YuvtC3OKLaVaW0ooMIr+VRT5dZ6hNWH4yVGbR 1K9fjl77uzorj13Zy3wjx8kY40U7fZvCywzZ/z2I3bxGX25aHJeAYZvi0iA3ueteywo45NiO X95uf0w1YlqDs44SS3FGoqEWc1FxIgB59ocddQIAAA== X-MTR: 20000000000000000@CPGS X-CMS-MailID: 20170130050433epcas3p158c643fc3cba0b3b616dc24a50e11bc0 X-Msg-Generator: CA X-Sender-IP: 182.195.34.24 X-Local-Sender: =?UTF-8?B?U2hhaWxlbmRyYSBWZXJtYRtTUkktTm9pZGEtQ29tbWVyY2lh?= =?UTF-8?B?bCBSJkQgIFN5c3RlbSBTL1cgR3JvdXAb7IK87ISx7KCE7J6QG0xlYWQgRW5n?= =?UTF-8?B?aW5lZXIvQ29ycG9yYXRlIEVuZ2luZWVy?= X-Global-Sender: =?UTF-8?B?U2hhaWxlbmRyYSBWZXJtYRtTUkktTm9pZGEtQ29tbWVyY2lh?= =?UTF-8?B?bCBSJkQgIFN5c3RlbSBTL1cgR3JvdXAbU2Ftc3VuZyBFbGVjdHJvbmljcxtM?= =?UTF-8?B?ZWFkIEVuZ2luZWVyL0NvcnBvcmF0ZSBFbmdpbmVlcg==?= X-Sender-Code: =?UTF-8?B?QzEwG1NXQUhRG0MxMElaMDFJWjAxODEyMA==?= CMS-TYPE: 103P X-HopCount: 7 X-CMS-RootMailID: 20170130050433epcas3p158c643fc3cba0b3b616dc24a50e11bc0 X-RootMTR: 20170130050433epcas3p158c643fc3cba0b3b616dc24a50e11bc0 References: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org of_device_get_match_data could return NULL, and so can cause a NULL pointer dereference later. Signed-off-by: Shailendra Verma --- sound/soc/samsung/i2s.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/sound/soc/samsung/i2s.c b/sound/soc/samsung/i2s.c index 7825bff..b5acce2 100644 --- a/sound/soc/samsung/i2s.c +++ b/sound/soc/samsung/i2s.c @@ -1224,8 +1224,13 @@ static int samsung_i2s_probe(struct platform_device *pdev) const struct samsung_i2s_dai_data *i2s_dai_data; int ret; - if (IS_ENABLED(CONFIG_OF) && pdev->dev.of_node) + if (IS_ENABLED(CONFIG_OF) && pdev->dev.of_node) { i2s_dai_data = of_device_get_match_data(&pdev->dev); + if (!i2s_dai_data) { + dev_err(&pdev->dev, "no device match found\n"); + return -ENODEV; + } + } else i2s_dai_data = (struct samsung_i2s_dai_data *) platform_get_device_id(pdev)->driver_data; -- 1.7.9.5