From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Engestrom Subject: Re: [PATCH] drm/mm: avoid possible null pointer dereference Date: Mon, 23 May 2016 11:27:14 +0100 Message-ID: <20160523102714.GA13596@imgtec.com> References: <1463602639-4861-1-git-send-email-xypron.glpk@gmx.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mailapp01.imgtec.com (mailapp01.imgtec.com [195.59.15.196]) by gabe.freedesktop.org (Postfix) with ESMTP id 6B8596E561 for ; Mon, 23 May 2016 10:27:22 +0000 (UTC) Content-Disposition: inline In-Reply-To: <1463602639-4861-1-git-send-email-xypron.glpk@gmx.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Heinrich Schuchardt Cc: linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCBNYXkgMTgsIDIwMTYgYXQgMTA6MTc6MTlQTSArMDIwMCwgSGVpbnJpY2ggU2NodWNo YXJkdCB3cm90ZToKPiBEbyBub3QgZGVyZWZlcmVuY2Ugbm9kZSBiZWZvcmUgdGhlIGNoZWNrIGlm IG5vZGUgaXMgTlVMTC4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBIZWlucmljaCBTY2h1Y2hhcmR0IDx4 eXByb24uZ2xwa0BnbXguZGU+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fbW0uYyB8IDQg KysrLQo+ICAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCj4g Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fbW0uYyBiL2RyaXZlcnMvZ3B1L2Ry bS9kcm1fbW0uYwo+IGluZGV4IDA0ZGU2ZmQuLmNiMzlmNDUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2RybV9tbS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9tbS5jCj4gQEAg LTE3OSwxMiArMTc5LDE0IEBAIHN0YXRpYyB2b2lkIGRybV9tbV9pbnNlcnRfaGVscGVyKHN0cnVj dCBkcm1fbW1fbm9kZSAqaG9sZV9ub2RlLAo+ICBpbnQgZHJtX21tX3Jlc2VydmVfbm9kZShzdHJ1 Y3QgZHJtX21tICptbSwgc3RydWN0IGRybV9tbV9ub2RlICpub2RlKQo+ICB7Cj4gIAlzdHJ1Y3Qg ZHJtX21tX25vZGUgKmhvbGU7Cj4gLQl1NjQgZW5kID0gbm9kZS0+c3RhcnQgKyBub2RlLT5zaXpl Owo+ICsJdTY0IGVuZDsKPiAgCXU2NCBob2xlX3N0YXJ0Owo+ICAJdTY0IGhvbGVfZW5kOwo+ICAK PiAgCUJVR19PTihub2RlID09IE5VTEwpOwo+ICAKPiArCWVuZCA9IG5vZGUtPnN0YXJ0ICsgbm9k ZS0+c2l6ZTsKPiArCj4gIAkvKiBGaW5kIHRoZSByZWxldmFudCBob2xlIHRvIGFkZCBvdXIgbm9k ZSB0byAqLwo+ICAJZHJtX21tX2Zvcl9lYWNoX2hvbGUoaG9sZSwgbW0sIGhvbGVfc3RhcnQsIGhv bGVfZW5kKSB7Cj4gIAkJaWYgKGhvbGVfc3RhcnQgPiBub2RlLT5zdGFydCB8fCBob2xlX2VuZCA8 IGVuZCkKPiAtLSAKPiAyLjEuNAoKUmV2aWV3ZWQtYnk6IEVyaWMgRW5nZXN0cm9tIDxlcmljLmVu Z2VzdHJvbUBpbWd0ZWMuY29tPgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9k cmktZGV2ZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753542AbcEWK1Y (ORCPT ); Mon, 23 May 2016 06:27:24 -0400 Received: from mailapp01.imgtec.com ([195.59.15.196]:43902 "EHLO mailapp01.imgtec.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752753AbcEWK1X (ORCPT ); Mon, 23 May 2016 06:27:23 -0400 Date: Mon, 23 May 2016 11:27:14 +0100 From: Eric Engestrom To: Heinrich Schuchardt CC: David Airlie , , Subject: Re: [PATCH] drm/mm: avoid possible null pointer dereference Message-ID: <20160523102714.GA13596@imgtec.com> References: <1463602639-4861-1-git-send-email-xypron.glpk@gmx.de> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Disposition: inline In-Reply-To: <1463602639-4861-1-git-send-email-xypron.glpk@gmx.de> User-Agent: Mutt/1.6.1 (2016-04-27) X-Originating-IP: [10.60.4.28] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, May 18, 2016 at 10:17:19PM +0200, Heinrich Schuchardt wrote: > Do not dereference node before the check if node is NULL. > > Signed-off-by: Heinrich Schuchardt > --- > drivers/gpu/drm/drm_mm.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/drm_mm.c b/drivers/gpu/drm/drm_mm.c > index 04de6fd..cb39f45 100644 > --- a/drivers/gpu/drm/drm_mm.c > +++ b/drivers/gpu/drm/drm_mm.c > @@ -179,12 +179,14 @@ static void drm_mm_insert_helper(struct drm_mm_node *hole_node, > int drm_mm_reserve_node(struct drm_mm *mm, struct drm_mm_node *node) > { > struct drm_mm_node *hole; > - u64 end = node->start + node->size; > + u64 end; > u64 hole_start; > u64 hole_end; > > BUG_ON(node == NULL); > > + end = node->start + node->size; > + > /* Find the relevant hole to add our node to */ > drm_mm_for_each_hole(hole, mm, hole_start, hole_end) { > if (hole_start > node->start || hole_end < end) > -- > 2.1.4 Reviewed-by: Eric Engestrom