From patchwork Tue Aug 11 12:00:27 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?b?64yA7J246riwL1RpemVuIFBsYXRmb3JtIExhYihTUikv7IK87ISx7KCE7J6Q?= X-Patchwork-Id: 6991951 Return-Path: X-Original-To: patchwork-dri-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id D3FA1C05AC for ; Tue, 11 Aug 2015 12:01:07 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 0E73D2065A for ; Tue, 11 Aug 2015 12:01:07 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id E03792057F for ; Tue, 11 Aug 2015 12:01:01 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 33B156E5A9; Tue, 11 Aug 2015 05:01:01 -0700 (PDT) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mailout4.samsung.com (mailout4.samsung.com [203.254.224.34]) by gabe.freedesktop.org (Postfix) with ESMTPS id 05B586E5A9 for ; Tue, 11 Aug 2015 05:01:00 -0700 (PDT) Received: from epcpsbgr4.samsung.com (u144.gpu120.samsung.co.kr [203.254.230.144]) by mailout4.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTP id <0NSX006002P4GTA0@mailout4.samsung.com> for dri-devel@lists.freedesktop.org; Tue, 11 Aug 2015 21:00:40 +0900 (KST) Received: from epcpsbgm1new.samsung.com ( [172.20.52.116]) by epcpsbgr4.samsung.com (EPCPMTA) with SMTP id F1.C3.20564.8E3E9C55; Tue, 11 Aug 2015 21:00:40 +0900 (KST) X-AuditID: cbfee690-f796f6d000005054-d5-55c9e3e89abe Received: from epmmp1.local.host ( [203.254.227.16]) by epcpsbgm1new.samsung.com (EPCPMTA) with SMTP id C2.98.23663.8E3E9C55; Tue, 11 Aug 2015 21:00:40 +0900 (KST) Received: from localhost.localdomain ([10.252.83.67]) by mmp1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0NSX00DWW2P4Q660@mmp1.samsung.com>; Tue, 11 Aug 2015 21:00:40 +0900 (KST) From: Inki Dae To: dri-devel@lists.freedesktop.org Subject: [PATCH] drm/atomic: fix null pointer access to mode_fixup callback Date: Tue, 11 Aug 2015 21:00:27 +0900 Message-id: <1439294427-9723-1-git-send-email-inki.dae@samsung.com> X-Mailer: git-send-email 1.9.1 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrFLMWRmVeSWpSXmKPExsWyRsSkRPfF45OhBtMWy1j0njvJZLHw4V1m iytf37NZTLo/gcXi+cIfzA6sHnu/LWDx2DnrLrvH9m8PWD3udx9n8ujbsooxgDWKyyYlNSez LLVI3y6BK+Ptqj1sBdvYKma2iDYwLmTtYuTkkBAwkXh4/gszhC0mceHeerYuRi4OIYEVjBJn Xt5nhymau2QhC0RiKaPElk3dTBDOd0aJCUuOgVWxCahKTFxxnw3EFhFQlvg7cRUjiM0skCIx +dR5sBphAW+J/o+tYDUsQPVLV94Bq+EVcJZYceIK1DY5iZPHJrOCLJAQ+MwmsfF7DzNEg4DE t8mHgM7gAErISmw6AHW2pMTBFTdYJjAKLmBkWMUomlqQXFCclF5kolecmFtcmpeul5yfu4kR GKSn/z2bsIPx3gHrQ4wCHIxKPLwCnidDhVgTy4orcw8xmgJtmMgsJZqcD4yFvJJ4Q2MzIwtT E1NjI3NLMyVx3tdSP4OFBNITS1KzU1MLUovii0pzUosPMTJxcEo1MPYYL17Ys2Drv+MZiRF3 dkbK9f4R8f5XcoVt5uuN21r97HU/Ni39Nvn1279V8vqBVzLEOjpsd4e6y++IWnngteWehWEJ s8KU5T2iYxQyGATnxHy63zHHYk736x0L7hwXXPLfwnJ9h3TCFtf2aXzuz3Iv7qqoMr9netpq 580WewmpSSGzKraz1yuxFGckGmoxFxUnAgDlAFUTTQIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFmpnkeLIzCtJLcpLzFFi42I5/e+xgO6LxydDDaasFrXoPXeSyWLhw7vM Fle+vmezmHR/AovF84U/mB1YPfZ+W8DisXPWXXaP7d8esHrc7z7O5NG3ZRVjAGtUA6NNRmpi SmqRQmpecn5KZl66rZJ3cLxzvKmZgaGuoaWFuZJCXmJuqq2Si0+ArltmDtB6JYWyxJxSoFBA YnGxkr4dpgmhIW66FjCNEbq+IUFwPUYGaCBhDWPG21V72Aq2sVXMbBFtYFzI2sXIySEhYCIx d8lCFghbTOLCvfVsXYxcHEICSxkltmzqZoJwvjNKTFhyjB2kik1AVWLiivtsILaIgLLE34mr GEFsZoEUicmnzoPVCAt4S/R/bAWrYQGqX7ryDlgNr4CzxIoTV9ghtslJnDw2mXUCI/cCRoZV jBKpBckFxUnpuYZ5qeV6xYm5xaV56XrJ+bmbGMGR8ExqB+PBXe6HGAU4GJV4eAU8T4YKsSaW FVfmHmKU4GBWEuHlOA0U4k1JrKxKLcqPLyrNSS0+xGgKdMBEZinR5HxglOaVxBsam5gZWRqZ G1oYGZsrifPKbtgcKiSQnliSmp2aWpBaBNPHxMEp1cCYfe4f637pp7sWaXtcZXiRKGi06cTy vU0pSarV0xbJLfi9e/r5HS+stWtfO6ZwLWXS9Gjcv/iNd9mhyT9MHv7xvqHiaxPy/c/RwlTh BWFf5eJT33P2Z+53m2vfHDw3/PR0b6e8SasSX0lUsbboFL4WtrQvrj65N7l5rfu/XmHxP29f mRoUfHuhxFKckWioxVxUnAgAfxTa1ZoCAAA= DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected Cc: daniel.vetter@ffwll.ch X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable 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 This patch fixes null pointer access incurred when encoder driver didn't set its own mode_fixup callback. mode_fixup callback shoudn't be called if the callback of drm_encoder_helper_funcs is NULL. Signed-off-by: Inki Dae Reviewed-By: Maarten Lankhorst --- drivers/gpu/drm/drm_atomic_helper.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c index 5b59d5ad..b69469c 100644 --- a/drivers/gpu/drm/drm_atomic_helper.c +++ b/drivers/gpu/drm/drm_atomic_helper.c @@ -299,6 +299,9 @@ mode_fixup(struct drm_atomic_state *state) return ret; } } else { + if (!funcs->mode_fixup) + continue; + ret = funcs->mode_fixup(encoder, &crtc_state->mode, &crtc_state->adjusted_mode); if (!ret) {