From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id A5C69C433EF for ; Mon, 25 Jul 2022 08:13:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232728AbiGYINE (ORCPT ); Mon, 25 Jul 2022 04:13:04 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33518 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229620AbiGYINC (ORCPT ); Mon, 25 Jul 2022 04:13:02 -0400 Received: from mail.nfschina.com (unknown [IPv6:2400:dd01:100f:2:72e2:84ff:fe10:5f45]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 6D73313CEC for ; Mon, 25 Jul 2022 01:13:01 -0700 (PDT) Received: from localhost (unknown [127.0.0.1]) by mail.nfschina.com (Postfix) with ESMTP id 9C8431E80D0F; Mon, 25 Jul 2022 16:08:00 +0800 (CST) X-Virus-Scanned: amavisd-new at test.com Received: from mail.nfschina.com ([127.0.0.1]) by localhost (mail.nfschina.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gGgk4OeEg4Bp; Mon, 25 Jul 2022 16:07:58 +0800 (CST) Received: from localhost.localdomain (unknown [180.167.10.98]) (Authenticated sender: renyu@nfschina.com) by mail.nfschina.com (Postfix) with ESMTPA id 71D7B1E80D05; Mon, 25 Jul 2022 16:07:57 +0800 (CST) From: Ren Yu To: keescook@chromium.org, arnd@arndb.de, gregkh@linuxfoundation.org, linux-kernel@vger.kernel.org Cc: liqiong@nfschina.com, yuzhe@nfschina.com, Ren Yu Subject: [PATCH 2/3] lkdtm/perms: Check possible NULL pointer returned by kmalloc(),vmalloc() Date: Mon, 25 Jul 2022 16:11:53 +0800 Message-Id: <20220725081153.20228-1-renyu@nfschina.com> X-Mailer: git-send-email 2.11.0 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org As the possible alloc failure of the kmalloc() and vmalloc(),the return pointer could be NULL.therefore it should be better to check it. Signed-off-by: Ren Yu --- drivers/misc/lkdtm/perms.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/misc/lkdtm/perms.c b/drivers/misc/lkdtm/perms.c index b93404d65650..34b43b9ea1f1 100644 --- a/drivers/misc/lkdtm/perms.c +++ b/drivers/misc/lkdtm/perms.c @@ -180,6 +180,9 @@ static void lkdtm_EXEC_STACK(void) static void lkdtm_EXEC_KMALLOC(void) { u32 *kmalloc_area = kmalloc(EXEC_SIZE, GFP_KERNEL); + if (!kmalloc_area) + return; + execute_location(kmalloc_area, CODE_WRITE); kfree(kmalloc_area); } @@ -187,6 +190,9 @@ static void lkdtm_EXEC_KMALLOC(void) static void lkdtm_EXEC_VMALLOC(void) { u32 *vmalloc_area = vmalloc(EXEC_SIZE); + if (!vmalloc_area) + return; + execute_location(vmalloc_area, CODE_WRITE); vfree(vmalloc_area); } -- 2.11.0