From patchwork Tue Oct 24 13:46:34 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Suren Baghdasaryan X-Patchwork-Id: 13434605 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 C7B2FC00A8F for ; Tue, 24 Oct 2023 13:48:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 37E976B0298; Tue, 24 Oct 2023 09:48:07 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2E1D66B0299; Tue, 24 Oct 2023 09:48:07 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1330C6B029A; Tue, 24 Oct 2023 09:48:07 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id EDD9A6B0298 for ; Tue, 24 Oct 2023 09:48:06 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id CCFE41205CD for ; Tue, 24 Oct 2023 13:48:06 +0000 (UTC) X-FDA: 81380483772.28.BAED71E Received: from mail-yw1-f201.google.com (mail-yw1-f201.google.com [209.85.128.201]) by imf26.hostedemail.com (Postfix) with ESMTP id F2889140018 for ; Tue, 24 Oct 2023 13:48:04 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=rGv7NPgr; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf26.hostedemail.com: domain of 3E8s3ZQYKCLgqspclZemmejc.amkjglsv-kkitYai.mpe@flex--surenb.bounces.google.com designates 209.85.128.201 as permitted sender) smtp.mailfrom=3E8s3ZQYKCLgqspclZemmejc.amkjglsv-kkitYai.mpe@flex--surenb.bounces.google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1698155285; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=nhDAtTQGKDGtY2/txJr7AfaYGvHf9XTIsotRfIG2XI4=; b=YTHqPPylkunSrEs4jgpo5uCuwQskHFydsYEDrcukMTNNdbwsNWxG0QDoRcastQ7At5ZbuX +2Wpqa4RRrVOrMwytdk+KJK/edXzqp3hEf1++H5xk+Gqyoz6rzHGXlrzd9ufrSMrKT7wSG 1RvoBmeA/pvhRDKnn/C8FLmu6GHIabA= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=rGv7NPgr; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf26.hostedemail.com: domain of 3E8s3ZQYKCLgqspclZemmejc.amkjglsv-kkitYai.mpe@flex--surenb.bounces.google.com designates 209.85.128.201 as permitted sender) smtp.mailfrom=3E8s3ZQYKCLgqspclZemmejc.amkjglsv-kkitYai.mpe@flex--surenb.bounces.google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1698155285; a=rsa-sha256; cv=none; b=d8slMygfXuPZTx+xMH6sfXKy/9NtdWRWG+Sjluo4uDjvD+gGBPTin1v37/mX0vA9zlEE10 4a6M9uGFIiFaTv4jKz8Yhdsu0cBTjpRqVnssMKQqVGok98DU9l+4guFeeNHA5Q9HClxMbq +08R0qHMQCkBduuEsArspRBqKRTbZzU= Received: by mail-yw1-f201.google.com with SMTP id 00721157ae682-5a7ac9c1522so62114527b3.0 for ; Tue, 24 Oct 2023 06:48:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1698155284; x=1698760084; darn=kvack.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=nhDAtTQGKDGtY2/txJr7AfaYGvHf9XTIsotRfIG2XI4=; b=rGv7NPgrK3sWoNBex3wMkbmmOknlTmaJJIwZLOcp3x+OlEZdHGLJeBMTK5sxFMCcUx 2XHca4eR5kPaBolRltvdOu4zLzAv1Evn9ab5NNcZcFque1QYezfr7eKvauuAJD94PmZ6 G1I0ON1gTbqEwOhJFsKKuXl3hdOzekft5RjneCDSDKHHTLzBKD7O/SnCiAJnMIUIZu9D l7O396cWH2vaeJ9P+QZpEGQnGpDz8xOcFtg0ptgC7IB8WogapjE5a4ukP8HjN8xy6n3m y22UbgUz8y0KIFJgu5RnrTEIXH/4BLwqhZNR+34fb0C8SK1EjMhZZ3Pa0cwCZSUX/jKh L/5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1698155284; x=1698760084; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=nhDAtTQGKDGtY2/txJr7AfaYGvHf9XTIsotRfIG2XI4=; b=DB0qfj2Mdsql8UkFT6aaTKrT1JFrJqNIxoeS0LZNBLiRwd4ekv2dvwG31URsTqya28 NDsUddqrButmrga3g5uRaByzbi8cQHOLyvivpFgbN1sLPcpCl+HqK9vAE1vDPTZ+mX7o 8j70toC7JHUionqKzrCOWGttA71CxPBI6tutOmbhWhb1fdtyv5edX6UqUkq/0feRxZ9N Hoe5I6rTkw4++3di00apgcGIpXvDkWD0vGVNV05nOjrh0HDgbBJF7MEbdYKRKsztEsoy LH4T3EZco9C5r5LeZGU73GBr/AGHdIXZJ8Q0yrUnLkJpBhKUizj9H2PlK3/UMf3kmUKd tZOA== X-Gm-Message-State: AOJu0YzoNdwYL9jO87zD8YOUdRaYSTWpBEcm7fzWYdl7hWi/PX9TDioj mD9SpewyQEm6/SK/HpFHHcUAJbrlboc= X-Google-Smtp-Source: AGHT+IEqWGHLJsK7BvvDJRxELns2H70hhRTn4578toCcoqAqCoHJoeJS8HRj9/dFP0FFd7ukqdr613N1OPo= X-Received: from surenb-desktop.mtv.corp.google.com ([2620:15c:211:201:45ba:3318:d7a5:336a]) (user=surenb job=sendgmr) by 2002:a25:8541:0:b0:d89:b072:d06f with SMTP id f1-20020a258541000000b00d89b072d06fmr231639ybn.7.1698155283973; Tue, 24 Oct 2023 06:48:03 -0700 (PDT) Date: Tue, 24 Oct 2023 06:46:34 -0700 In-Reply-To: <20231024134637.3120277-1-surenb@google.com> Mime-Version: 1.0 References: <20231024134637.3120277-1-surenb@google.com> X-Mailer: git-send-email 2.42.0.758.gaed0368e0e-goog Message-ID: <20231024134637.3120277-38-surenb@google.com> Subject: [PATCH v2 37/39] codetag: debug: mark codetags for reserved pages as empty From: Suren Baghdasaryan To: akpm@linux-foundation.org Cc: kent.overstreet@linux.dev, mhocko@suse.com, vbabka@suse.cz, hannes@cmpxchg.org, roman.gushchin@linux.dev, mgorman@suse.de, dave@stgolabs.net, willy@infradead.org, liam.howlett@oracle.com, corbet@lwn.net, void@manifault.com, peterz@infradead.org, juri.lelli@redhat.com, ldufour@linux.ibm.com, catalin.marinas@arm.com, will@kernel.org, arnd@arndb.de, tglx@linutronix.de, mingo@redhat.com, dave.hansen@linux.intel.com, x86@kernel.org, peterx@redhat.com, david@redhat.com, axboe@kernel.dk, mcgrof@kernel.org, masahiroy@kernel.org, nathan@kernel.org, dennis@kernel.org, tj@kernel.org, muchun.song@linux.dev, rppt@kernel.org, paulmck@kernel.org, pasha.tatashin@soleen.com, yosryahmed@google.com, yuzhao@google.com, dhowells@redhat.com, hughd@google.com, andreyknvl@gmail.com, keescook@chromium.org, ndesaulniers@google.com, vvvvvv@google.com, gregkh@linuxfoundation.org, ebiggers@google.com, ytcoode@gmail.com, vincent.guittot@linaro.org, dietmar.eggemann@arm.com, rostedt@goodmis.org, bsegall@google.com, bristot@redhat.com, vschneid@redhat.com, cl@linux.com, penberg@kernel.org, iamjoonsoo.kim@lge.com, 42.hyeyoo@gmail.com, glider@google.com, elver@google.com, dvyukov@google.com, shakeelb@google.com, songmuchun@bytedance.com, jbaron@akamai.com, rientjes@google.com, minchan@google.com, kaleshsingh@google.com, surenb@google.com, kernel-team@android.com, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, iommu@lists.linux.dev, linux-arch@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-modules@vger.kernel.org, kasan-dev@googlegroups.com, cgroups@vger.kernel.org X-Rspam-User: X-Stat-Signature: 6tuwgkdchswaqnwu1ykjfb68ax11de61 X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: F2889140018 X-HE-Tag: 1698155284-535850 X-HE-Meta: U2FsdGVkX1+KlcGx8xtb5aqXIc47zeNLIXCdgsimAnxWCs1/ywHU1pGp06c0uQhL2WWdBegdpeJfYUJpFAigyHhZW6vPD9b8xxf5rNYoWIPqIV5Pydrkiv9C6eQTQG8z/1fzfQSSi7RF9rdO7PahM0D1JZEtiMUR+TLxH1BmcGw3S7Z+VIJ/jp4ufQBcyphE74UHmHDkJNrVx9LRSNFT9fXtLVsuBSYrvcZA4riarp00fBOWarKWCPzefz3S/pSUowYokdIq0slqmzb+tD2zfo8ujk3Wu9guWP3Qlx0u87dD32tcYQ3BsNPn1ofB0vgoqhqkAasXkWlPXTqkcZht/KSyd82q6mc6X53pMSrgu/emu1E26F7tP5pyOVa6K61tMUyBLcp2BcPNEuDEO6s/OC8jnNiIwiOSvOlcI97qZ1ogIxqp470FIhlXvYtp8bVBquts1M8HwmjiwWIsD2/NfsDSU3CTh6AXQXcC/4LiWHLe7Fv2IOYA6qYpmQZlq5kjmFRnq6yARpcds9e0y44zHCvxDFVDNJhYTer8kYEHwaSwofevCM+WG3jjqruhqO8q4E5A0rFwGiHcoz54OvKw0cH6Y8gDWL28MDBTGi5FZKfipy0VI2EcJ7x7fIt0FEcBAUsgN2FccKA++dw1niXJT0XXm4/Y/BRPVfpwnXU3U0M1XdC+EHYlTSramqzpHIPoGkS4iJnYOqeBeA87zWETL2K+DZt/Zi2lqjV+ym/huFIgFfUPdePqWDb6HdWuWHt6UnYu1xOPWK03uIAb/rkwZ6tfC8aUZYk0nmDE0E9daroDjpvfskpPQpDK8b4eYC8W26mMMen2BKzNF9FyAFKw3x2M0BPbq6dF6iufHSBQdXh4YpHW5vcaM4BP1jSDDVUPNuH5M0jtThJLx/J35V3iBYtMfftBbpnnbMO7K+m8KiT7sMsQqKD4zRzog7iht6U1RIaVsZJpu/s9KSN9ixf 9xWUus7y CxaOOypLJhmi1H8FyOqfXofm8iQV2ZFmqmsUf+434dfkJsD941Mr10vu46EmtDi4jPgRv4qC6JLDSqe2MqhtMgrQq+LHuycfKnr94+11Ig+6grxM8hqmN7spojS1ZQRJ06OZ4BMQ7HPGQC0bAstFhcgWXgA/OKReXtavhuUJMocgn1/mSMNoTTO6HzYzIAWPazp2ooloGoatqMILH9Il0e1nqxsa64D8Fbm+H08I9dqpJv4tizV4RME5Qi06f4rp3UALrmn363bZvQupQLPR320WEpwIV9fcatl8yGBHJ4jKXRtl23dP8I8hzu+jEKop4qVVL9XspfsTrxEwSw89lKMUSiGHS1wVbHJGt1S+rt4OPEPKoYetaPp+fiOLZ41tTnT00fP6reKgHHOz0uFWhcZMIFMlq4N4vGVenoYqZGrsaQYu4gFUx7ox671fcfowFA43g85HI2kkXq9GgxB6lro9EbaPOYqzCH+WVbBSM2+vjw8HqRgnqhsujTdwN5Eor2jt3Nnof+Fc/FeUB6GKiBebNMqYHVkRkIOUhiWdr8zRx0BosjnYAOnXUqKfMDZjC8F1uDCXGJVB7Mp+FUuJb0QN47Tjz3GEl3JM1emwYoZMqEqTWMeCK4NJSAFEJYE5n82qGMknnObk3wmHFxnB7kgdGtWb4ak0GaXnHoPFivixDISiMgEmCJ1jcow03r2tMq2M56EdoPwgaOeUs7VbLTxgRLg== 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: List-Subscribe: List-Unsubscribe: To avoid debug warnings while freeing reserved pages which were not allocated with usual allocators, mark their codetags as empty before freeing. Maybe we can annotate reserved pages correctly and avoid this? Signed-off-by: Suren Baghdasaryan --- include/linux/alloc_tag.h | 2 ++ include/linux/mm.h | 8 ++++++++ include/linux/pgalloc_tag.h | 2 ++ 3 files changed, 12 insertions(+) diff --git a/include/linux/alloc_tag.h b/include/linux/alloc_tag.h index 1f3207097b03..102caf62c2a9 100644 --- a/include/linux/alloc_tag.h +++ b/include/linux/alloc_tag.h @@ -95,6 +95,7 @@ static inline void set_codetag_empty(union codetag_ref *ref) #else /* CONFIG_MEM_ALLOC_PROFILING_DEBUG */ static inline bool is_codetag_empty(union codetag_ref *ref) { return false; } +static inline void set_codetag_empty(union codetag_ref *ref) {} #endif /* CONFIG_MEM_ALLOC_PROFILING_DEBUG */ @@ -155,6 +156,7 @@ static inline void alloc_tag_sub(union codetag_ref *ref, size_t bytes) {} static inline void alloc_tag_sub_noalloc(union codetag_ref *ref, size_t bytes) {} static inline void alloc_tag_add(union codetag_ref *ref, struct alloc_tag *tag, size_t bytes) {} +static inline void set_codetag_empty(union codetag_ref *ref) {} #endif diff --git a/include/linux/mm.h b/include/linux/mm.h index bf5d0b1b16f4..310129414833 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -5,6 +5,7 @@ #include #include #include +#include #include #include #include @@ -3077,6 +3078,13 @@ extern void reserve_bootmem_region(phys_addr_t start, /* Free the reserved page into the buddy system, so it gets managed. */ static inline void free_reserved_page(struct page *page) { + union codetag_ref *ref; + + ref = get_page_tag_ref(page); + if (ref) { + set_codetag_empty(ref); + put_page_tag_ref(ref); + } ClearPageReserved(page); init_page_count(page); __free_page(page); diff --git a/include/linux/pgalloc_tag.h b/include/linux/pgalloc_tag.h index 0174aff5e871..ae9b0f359264 100644 --- a/include/linux/pgalloc_tag.h +++ b/include/linux/pgalloc_tag.h @@ -93,6 +93,8 @@ static inline void pgalloc_tag_split(struct page *page, unsigned int nr) #else /* CONFIG_MEM_ALLOC_PROFILING */ +static inline union codetag_ref *get_page_tag_ref(struct page *page) { return NULL; } +static inline void put_page_tag_ref(union codetag_ref *ref) {} static inline void pgalloc_tag_add(struct page *page, struct task_struct *task, unsigned int order) {} static inline void pgalloc_tag_sub(struct page *page, unsigned int order) {}