From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753288AbcFFVht (ORCPT ); Mon, 6 Jun 2016 17:37:49 -0400 Received: from mail-wm0-f67.google.com ([74.125.82.67]:36407 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752931AbcFFVhr (ORCPT ); Mon, 6 Jun 2016 17:37:47 -0400 From: Sudip Mukherjee To: Andrew Morton Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, Sudip Mukherjee Subject: [PATCH] mm/page_owner: avoid null pointer dereference Date: Mon, 6 Jun 2016 22:37:39 +0100 Message-Id: <1465249059-7883-1-git-send-email-sudipm.mukherjee@gmail.com> X-Mailer: git-send-email 1.9.1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org We have dereferenced page_ext before checking it. Lets check it first and then used it. Signed-off-by: Sudip Mukherjee --- mm/page_owner.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/mm/page_owner.c b/mm/page_owner.c index 587dcca..8fa5083 100644 --- a/mm/page_owner.c +++ b/mm/page_owner.c @@ -291,13 +291,15 @@ void __dump_page_owner(struct page *page) .skip = 0 }; depot_stack_handle_t handle; - gfp_t gfp_mask = page_ext->gfp_mask; - int mt = gfpflags_to_migratetype(gfp_mask); + gfp_t gfp_mask; + int mt; if (unlikely(!page_ext)) { pr_alert("There is not page extension available.\n"); return; } + gfp_mask = page_ext->gfp_mask; + mt = gfpflags_to_migratetype(gfp_mask); if (!test_bit(PAGE_EXT_OWNER, &page_ext->flags)) { pr_alert("page_owner info is not active (free page?)\n"); -- 1.9.1