From patchwork Sat Jun 17 04:40:36 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Liam Ni X-Patchwork-Id: 13283409 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8FAA3EB64D9 for ; Sat, 17 Jun 2023 04:40:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EAF966B0072; Sat, 17 Jun 2023 00:40:55 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E607F6B0075; Sat, 17 Jun 2023 00:40:55 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D4E5F6B0078; Sat, 17 Jun 2023 00:40:55 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id C9B0F6B0072 for ; Sat, 17 Jun 2023 00:40:55 -0400 (EDT) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 989A71A0EC8 for ; Sat, 17 Jun 2023 04:40:55 +0000 (UTC) X-FDA: 80910989670.13.A0680BE Received: from mail-oi1-f171.google.com (mail-oi1-f171.google.com [209.85.167.171]) by imf03.hostedemail.com (Postfix) with ESMTP id E160020007 for ; Sat, 17 Jun 2023 04:40:53 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=TmUuyayM; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf03.hostedemail.com: domain of zhiguangni01@gmail.com designates 209.85.167.171 as permitted sender) smtp.mailfrom=zhiguangni01@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1686976853; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:content-type: content-transfer-encoding:in-reply-to:references:dkim-signature; bh=JdTXgdzdalPUjI3Ht3T1J7by7Wvs6eS5DA4nj1ZXZls=; b=3kUnYdUiQLf84JuO+gZljeEOF9E/0zjwm8h3v1EydqOLpHO/TuNd0MIKlPQKQhAeIkU5mS JAQeM+Lox7dqPHD1mPKvQVVjEvlYz7Z7pcsVKZBUgFy+REtMCBoAwd60j6TWJE18DwDMyi ziU6jkUiW6PNWPFsG1gOqtXVZrWjInk= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=TmUuyayM; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf03.hostedemail.com: domain of zhiguangni01@gmail.com designates 209.85.167.171 as permitted sender) smtp.mailfrom=zhiguangni01@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1686976853; a=rsa-sha256; cv=none; b=aoK1y4YK/DeGj1ful3cqSiG1rSZw0Ic+ii6peyCYU6tBPH7rFEaSzBDikST1suyAQzQ01J apJHsxatwQz89HE9eA8qpR4X4TwIk3j2f7bNxDTbwxs0gi8piH/a8Kp9DfmB8/IhiboGqh K3JI912HtzL1/2SmT7NOyap3U99mrto= Received: by mail-oi1-f171.google.com with SMTP id 5614622812f47-39ebd5a22e0so77894b6e.3 for ; Fri, 16 Jun 2023 21:40:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686976853; x=1689568853; h=message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=JdTXgdzdalPUjI3Ht3T1J7by7Wvs6eS5DA4nj1ZXZls=; b=TmUuyayMRWJtcc7lll42NWrHN9ZTGtFNwyTVMVacmssHpZENrIWp01v69I1vBIDcKc GgXNjou394k0gyc/QbrYQz+WhwbuNXlf4xsBLvjSzOEF816LLgMWTKD4mjrAs4o3BG8N 5aYRL0BvfVGKNTp34xnxaLO96YbmNwqWV68RmbQpJDv0TC0kqslkmMAajG7b4lJ+ZA4A QtQKpz+F1HaOB1Kl2uqGcBC2yYXPS4asqtxtiUGbh0kL9TBOU2A9dC6JSpbRZ29zNY5j 97hBT2S74RlieT9iQmLqKPgFtjlcBY/yFoD+DMP2Z5Dwl1rCR/R2LhYINAbjl7/YgWsg BH1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686976853; x=1689568853; h=message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JdTXgdzdalPUjI3Ht3T1J7by7Wvs6eS5DA4nj1ZXZls=; b=e2zAsVcbRQaYPZD63faxbSOJUac+ug8NXDtR+huhyBbb7tRt7u6P9QE2wc1p7T7IlF 3CYPOKljXWOu2PxOJ6oWDNXZOYqBws9E9g2rx8AVZ7oz45E5FdpLLXv89U47qw1gSN81 XNc4xcK0L/WALtdTlbz1s9PoDcP1rEyk9Y+zaEUqRgGJtLrn5md/WfxKkHQJVWFCZVuC fsBfWIO0RV7BTqA69BLp/ylxvUgZBE42GeBw/9GIR9G6SC6BfiZ+svfVcBsLoGClzUt9 8DIyjgyZ3TlSeHPDRkZ1JNNa93wLjlVtNl+ztkEGIxWrqvq5E4gBwkhEdNY+r9TyfQdY 7zcA== X-Gm-Message-State: AC+VfDyxnPJmXzSMNVVAh3XyUTRSVSlKzDPqPPxr4qifYvkw0r9ZdbAa VKDnU+pd/gYr/roTNKpMt0E= X-Google-Smtp-Source: ACHHUZ4gYURqhUUkMPEdrxMDKQayn+10xNi14I/kungRha1hXNiO8wzNWYoiyPAkYT35KE/zYTCRfw== X-Received: by 2002:a05:6808:f92:b0:39a:a77a:eb48 with SMTP id o18-20020a0568080f9200b0039aa77aeb48mr5206055oiw.0.1686976852938; Fri, 16 Jun 2023 21:40:52 -0700 (PDT) Received: from localhost.localdomain ([112.213.33.6]) by smtp.gmail.com with ESMTPSA id kg14-20020a170903060e00b001b06361a38dsm3413397plb.116.2023.06.16.21.40.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 16 Jun 2023 21:40:52 -0700 (PDT) From: Liam Ni To: dave.hansen@linux.intel.com, luto@kernel.org, peterz@infradead.org, tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, x86@kernel.org, hpa@zytor.com, akpm@linux-foundation.org, rppt@kernel.org Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, zhiguangni01@gmail.com Subject: [PATCH] mm/sparse:avoid null pointer access in memory_present() Date: Sat, 17 Jun 2023 14:40:36 +1000 Message-Id: <20230617044036.3985524-1-zhiguangni01@gmail.com> X-Mailer: git-send-email 2.17.1 X-Rspam-User: X-Stat-Signature: 9wthemcmr6xhka3uzhaipbc51ya6noo1 X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: E160020007 X-HE-Tag: 1686976853-334796 X-HE-Meta: U2FsdGVkX19mx4rjSfH2Mtn+8pVjsl7ZOaWQlzuQL1ofyZ9ja82E9hi7nnRMU76GCH+batxhjfomywGaPlNug0acJxUH/XnBbZoSWvSFnWRtEENyik5axghGzH0iWnmxLGVlmz7Tl6PcHDRIln75EjAksDwgEcKcKRJUf83w9VX/ThNLslA5lgucgAWWam8tdGOXok/3/FDtGBuBDXHnh+YWR1yIzsiPjZ6d+Vm3UM2OzZGWFf3iyBn2bTV3Yt6HG7qR30Zr4cLN9f/v4XecHvAFDk5Yw3yUcmkWZDHQ97hDCeWl5ZkBSzyUzL6NVK1u8d/5S6g8ktkoL/gXTFO9UsPS/Ps+uiJPG/NikmqFhx8wFXlBLH81723dAo4Nib9+BE9fqXt0SS9S2H1xgOThc2UNE2eOefAAbogkj7n1iLMn0m2sOBXH36rxUCRetd3b9VGe6pt55N3AGIwzpRNhU7aqibEVJOnx6ZSsO0aR1AwhKE++GxQ4zj9O/uCHlbAYdh1kjk5HHjsU2O64wvvWE78VRpw7ZDk6RjBroXPTuQuOz7IHMd8B7mJGO193MA2Ykg/06D6M6BymBGd/VWqJPRAd3VQysWfSJzRDGbvJiGcIBHxMD1zZW390T+o/kY3p/tcWd61VsPqO2sllMYV0CLIe8zjindY9RX5JFa/C7aMoYoSIBnzLBZlvRU4xQaYZ1VCogSpkewsTgNq4gXR7swe3P79HarEsJaS2WB0OQQSSe3GNAKknpRofqIGYJilFtQ7yduWQrNMfh8Y0iMFkjM1r6gqV+VknNeJu+MzdnD38qVzJcIfWx9NyIiQ2tCHeNLQH6X+Ki/NiPeAHhTLEjaUHPMfYN8GAysNh8P+bMs+HtOyAV2jMK0m9AxiWq7b0qmRRUEK4nbzrG2+Vb/xbhj2jW7v1w+qg9P3ejSe9cpnnQhN1dzZzISq0X/kydweBvaBCKvAhfiAcbwSeBkX CG1DIItq DjjADOPFTqBMcOgxbQOJT9CKrjj9JkRM1rU8nyAaIh6ir5MmwNQVwZ9yB+6X2ib0g6zOAEAYEW2uGuaCp2UaG7NpbTSoBoCzPdR+Zetl3kbTylKCPB4tM7+XMceqhTQh0Os/TgrCT/8CbA94GhLjd52JdtljmJmGrZce7CfoIx0wRhdfnzQ0kO+IakhTgEKEYVqrgSz4/BZT07HTSNNhWcdb104pEx+LriC5RR5rechFesVm24CnQ/0AZEiha5AoYdj1ZODS42M3vujnJ2ahwuEwAOT66Tn3Y4N8HzAdhPIBp90dFRQG0gesv9fM7I7E9YaLtb+uhsbLqGbly812AYRUztNwI7tQ7lJrwoneiu3rGJVnykSg8PRksshwbS33kjb+tMcrLarlOdJ4BqPLpJpepJhJ7ZmxvDw0D6XpjPQ82ndQcLPQTYlE2hRrTIPu/pSEpfONBd1PCaNp5LCW1bbEqID5S2l/HJyTd X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: __nr_to_section() may return a null pointer, before accessing the member variable section_mem_map, we should first determine whether it is a null pointer. Signed-off-by: Liam Ni --- mm/sparse.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/sparse.c b/mm/sparse.c index 4e6e3a9d49dc..37fa3818bc25 100644 --- a/mm/sparse.c +++ b/mm/sparse.c @@ -258,7 +258,7 @@ static void __init memory_present(int nid, unsigned long start, unsigned long en set_section_nid(section, nid); ms = __nr_to_section(section); - if (!ms->section_mem_map) { + if (ms && !ms->section_mem_map) { ms->section_mem_map = sparse_encode_early_nid(nid) | SECTION_IS_ONLINE; __section_mark_present(ms, section);