From patchwork Thu Aug 18 13:21:04 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Liu Shixin X-Patchwork-Id: 12946993 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 B014EC00140 for ; Thu, 18 Aug 2022 12:50:38 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B6E958D0002; Thu, 18 Aug 2022 08:50:37 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B1E016B0074; Thu, 18 Aug 2022 08:50:37 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9E55F8D0002; Thu, 18 Aug 2022 08:50:37 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 8EE756B0073 for ; Thu, 18 Aug 2022 08:50:37 -0400 (EDT) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 2B1C8160BB9 for ; Thu, 18 Aug 2022 12:50:37 +0000 (UTC) X-FDA: 79812697314.07.1AD68F4 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by imf09.hostedemail.com (Postfix) with ESMTP id EB94F14009A for ; Thu, 18 Aug 2022 12:49:59 +0000 (UTC) Received: from dggpemm500021.china.huawei.com (unknown [172.30.72.57]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4M7l2B3HtXznTVN; Thu, 18 Aug 2022 20:44:18 +0800 (CST) Received: from dggpemm100009.china.huawei.com (7.185.36.113) by dggpemm500021.china.huawei.com (7.185.36.109) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.24; Thu, 18 Aug 2022 20:46:31 +0800 Received: from huawei.com (10.175.113.32) by dggpemm100009.china.huawei.com (7.185.36.113) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.24; Thu, 18 Aug 2022 20:46:30 +0800 From: Liu Shixin To: Muchun Song , Matthew Wilcox , Mike Kravetz , Oscar Salvador , Andrew Morton CC: , , Liu Shixin Subject: [PATCH -next] bootmem: remove the vmemmap pages from kmemleak in free_bootmem_page Date: Thu, 18 Aug 2022 21:21:04 +0800 Message-ID: <20220818132104.2144770-1-liushixin2@huawei.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-Originating-IP: [10.175.113.32] X-ClientProxiedBy: dggems703-chm.china.huawei.com (10.3.19.180) To dggpemm100009.china.huawei.com (7.185.36.113) X-CFilter-Loop: Reflected ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1660827007; a=rsa-sha256; cv=none; b=ib61L52+4pBA1SypBvcl6QudUrhFPhHp8nXvYo8+40tD3OXawTDDET6C2Gf+lTtM1PD+TS zLu0T2DASNSPgs7i7ZfPKu8cSZSDOH+5wutT9eKTCTB60oyIiuuGw1Q5iAApaZqQV9iya1 s/QaMuvqTP/dLyTLO2pwv5kUn6AZn2o= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei.com; spf=pass (imf09.hostedemail.com: domain of liushixin2@huawei.com designates 45.249.212.187 as permitted sender) smtp.mailfrom=liushixin2@huawei.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1660827007; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:in-reply-to: references; bh=0s+j2UXD0VMSTi1blowem5MQkVmSYrYpYFu3oLR5QR4=; b=2L/7ACkVTWwdUF/PZghIFLicDAIz1DI0z2MZj2drBTyigckh7qLvR4UrmTBfcAUamqVM5B gobFWRn6ZJcmKpy+zsh8RoQ78NMJG7Hr+bhECClFsRv/xQov3R+4W/JP/JrdKyn0SRo/qs Xt5TgIB4f3d0V+0NYpyohL0HmgrmdNQ= X-Rspam-User: Authentication-Results: imf09.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei.com; spf=pass (imf09.hostedemail.com: domain of liushixin2@huawei.com designates 45.249.212.187 as permitted sender) smtp.mailfrom=liushixin2@huawei.com X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: EB94F14009A X-Stat-Signature: 9jyb5ikx1edj3jj4sy8ahnjk3fn9f4nc X-HE-Tag: 1660826999-919715 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: The vmemmap pages is marked by kmemleak when allocated from memblock. Remove it from kmemleak when free the page. Otherwise, when we reuse the page, kmemleak may report such an error and then stop working. kmemleak: Cannot insert 0xffff98fb6eab3d40 into the object search tree (overlaps existing) kmemleak: Kernel memory leak detector disabled kmemleak: Object 0xffff98fb6be00000 (size 335544320): kmemleak: comm "swapper", pid 0, jiffies 4294892296 kmemleak: min_count = 0 kmemleak: count = 0 kmemleak: flags = 0x1 kmemleak: checksum = 0 kmemleak: backtrace: Fixes: f41f2ed43ca5 ("mm: hugetlb: free the vmemmap pages associated with each HugeTLB page") Signed-off-by: Liu Shixin --- include/linux/bootmem_info.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/include/linux/bootmem_info.h b/include/linux/bootmem_info.h index cc35d010fa94..899bc56948f7 100644 --- a/include/linux/bootmem_info.h +++ b/include/linux/bootmem_info.h @@ -3,6 +3,7 @@ #define __LINUX_BOOTMEM_INFO_H #include +#include /* * Types for free bootmem stored in page->lru.next. These have to be in @@ -38,9 +39,10 @@ static inline void free_bootmem_page(struct page *page) */ VM_BUG_ON_PAGE(page_ref_count(page) != 2, page); - if (magic == SECTION_INFO || magic == MIX_SECTION_INFO) + if (magic == SECTION_INFO || magic == MIX_SECTION_INFO) { + kmemleak_free_part(page_to_virt(page), PAGE_SIZE); put_page_bootmem(page); - else + } else VM_BUG_ON_PAGE(1, page); } #else