From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934518AbdA0LmC (ORCPT ); Fri, 27 Jan 2017 06:42:02 -0500 Received: from mailout3.samsung.com ([203.254.224.33]:42269 "EHLO mailout3.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933238AbdA0LNA (ORCPT ); Fri, 27 Jan 2017 06:13:00 -0500 X-AuditID: b6c32a11-f79046d00000131e-81-588b2b00e98c From: Shailendra Verma To: Mark Yao , David Airlie , Heiko Stuebner , dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, p.shailesh@samsung.com, ashish.kalra@samsung.com, Shailendra Verma , Shailendra Verma Subject: [PATCH] Gpu: drm: rockchip - Fix possible NULL derefrence. Date: Fri, 27 Jan 2017 16:41:50 +0530 Message-id: <1485515510-3129-1-git-send-email-shailendra.v@samsung.com> X-Mailer: git-send-email 1.7.9.5 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrOIsWRmVeSWpSXmKPExsWy7bCmiC6DdneEwYHPhha9504yWdyf9o3d 4srX92wW/x+9ZrXY9Pgaq8XlXXPYLD49+M9ssWPKASYg0cpicWveTDaLRd9eMTtwe+ycdZfd Y/u3B6we97uPM3lsXlLv8XfWfhaPvi2rGD22X5vH7PF5k1wARxSXTUpqTmZZapG+XQJXxvob zUwFO7gqzlz4ydLAeIOji5GDQ0LAROL3Jt8uRk4gU0ziwr31bF2MXBxCAksZJd5suMkI4Xxm lDhw/SM7RJWJxOcn/6ASKxklnt1/zgaSYBMwlHjd95cJJCEi0Mcs8fnGRlaQhLCAs8TXmafA ulkEVCWm/+pjAbF5Bdwlnk7cwQ5xhoLEnEk2IL0SAp/ZJG4sucwMEZeV2HSAGWKxi8TJM7tZ IWxhiVfHt0AdJCXRdPsUC0TvMUaJx88XM0E4lxkltpxeBlVlL3Ht1mswm1mAT2Lx+gdsEAt4 JTrahCBMD4n300Mhqh0ltj1+AvaXkECsxN67b5gmMEouYGRYxSiWWlCcm55abFxgrFecmFtc mpeul5yfu4kRHL1agjsY56zwOsQowMGoxMN74kxXhBBrYllxZe4hRgkOZiURXl2x7ggh3pTE yqrUovz4otKc1OJDjNIcLErivB8rrSOEBNITS1KzU1MLUotgskwcnFINjEZ//svmvTzlnlcd 7NXMOL1O5266liR7+WT37oehTydUHF7WWG0S6DRDLsDb//6R/kr15TEHeo3fP/+dIjBlkZi3 8Fz7P/27AgPv/a/knBzLa756VdvUDKW3Ww5vs3ZqmxumGXRX5YaFq8uKqdduzSyt5Z9yMeLP i4Mfvjafknjyhu/5KqWkOiWW4oxEQy3mouJEAKJ83OvaAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrDLMWRmVeSWpSXmKPExsWSnbNCVZdBuzvCYNctRYvecyeZLO5P+8Zu ceXrezaL/49es1psenyN1eLyrjlsFp8e/Ge22DHlABOQaGWxuDVvJpvFom+vmB24PXbOusvu sf3bA1aP+93HmTw2L6n3+DtrP4tH35ZVjB7br81j9vi8SS6AI8rNJiM1MSW1SCE1Lzk/JTMv 3VYpNMRN10JJIS8xN9VWKULXNyRISaEsMacUyDMyQAMOzgHuwUr6dgluGetvNDMV7OCqOHPh J0sD4w2OLkZODgkBE4nPT/4xQthiEhfurWfrYuTiEBJYzihxaspNZpAEm4ChxOu+v0wgCRGB GcwSy19NYwdJCAs4S3ydeQrMZhFQlZj+q48FxOYVcJd4OnEHUJwDaKqCxJxJNhMYORcwMqxi FEstKM5Nzy0uMDDWK07MLS7NS9dLzs/dxAgM2W2HlSR2MC5Y4XWIUYCDUYmH98P7rggh1sSy 4srcQ4wSHMxKIry6Yt0RQrwpiZVVqUX58UWlOanFhxhNgbZPZJYSTc4HxlNeSbyhiamFhYWJ pbGxsYWJkjhv7PRn4UIC6YklqdmpqQWpRTB9TBycUg2M8693dv+8X8u67FmK6P1QJWbL+dtd 71QVfj4dcKr6953dN0OKb2y73nOD4b/fuxPKsbeYs7e6qWeLqlW++XNEfpH2//P1lz9Ii3XI Fxfd33df9+y+nfvU1+aKL3aY2+p5M/g/83cVsapTMVqbYr8e61/duD7ooqDf2/mPcoS26XRv O/zmRmjBRSWW4oxEQy3mouJEAAgs+mxvAgAA X-MTR: 20000000000000000@CPGS X-CMS-MailID: 20170127111200epcas3p34bf747c6c3c0da798ddaf34788d1a324 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: 20170127111200epcas3p34bf747c6c3c0da798ddaf34788d1a324 X-RootMTR: 20170127111200epcas3p34bf747c6c3c0da798ddaf34788d1a324 References: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org of_match_device could return NULL, and so can cause a NULL pointer dereference later. Signed-off-by: Shailendra Verma --- drivers/gpu/drm/rockchip/dw-mipi-dsi.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw-mipi-dsi.c b/drivers/gpu/drm/rockchip/dw-mipi-dsi.c index ca22e5e..dbb99cf 100644 --- a/drivers/gpu/drm/rockchip/dw-mipi-dsi.c +++ b/drivers/gpu/drm/rockchip/dw-mipi-dsi.c @@ -1082,15 +1082,22 @@ static enum drm_mode_status rk3288_mipi_dsi_mode_valid( static int dw_mipi_dsi_bind(struct device *dev, struct device *master, void *data) { - const struct of_device_id *of_id = - of_match_device(dw_mipi_dsi_dt_ids, dev); - const struct dw_mipi_dsi_plat_data *pdata = of_id->data; + const struct of_device_id *of_id; + const struct dw_mipi_dsi_plat_data *pdata; struct platform_device *pdev = to_platform_device(dev); struct drm_device *drm = data; struct dw_mipi_dsi *dsi; struct resource *res; int ret; + of_id = of_match_device(dw_mipi_dsi_dt_ids, dev); + if (!of_id) { + dev_err(dev, "Error: No device match found\n"); + return -ENODEV; + } + + pdata = of_id->data; + dsi = devm_kzalloc(dev, sizeof(*dsi), GFP_KERNEL); if (!dsi) return -ENOMEM; -- 1.7.9.5