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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 10C8BC3ABCB for ; Mon, 12 May 2025 19:42:57 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B7EFA6B000A; Mon, 12 May 2025 15:42:56 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B2BF86B0082; Mon, 12 May 2025 15:42:56 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9F3236B0083; Mon, 12 May 2025 15:42:56 -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 7F73F6B000A for ; Mon, 12 May 2025 15:42:56 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 7A82914089C for ; Mon, 12 May 2025 19:42:56 +0000 (UTC) X-FDA: 83435278752.26.3983BC1 Received: from mail-il1-f173.google.com (mail-il1-f173.google.com [209.85.166.173]) by imf24.hostedemail.com (Postfix) with ESMTP id A3FF5180012 for ; Mon, 12 May 2025 19:42:54 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=purestorage.com header.s=google2022 header.b=EINroefv; spf=pass (imf24.hostedemail.com: domain of cachen@purestorage.com designates 209.85.166.173 as permitted sender) smtp.mailfrom=cachen@purestorage.com; dmarc=pass (policy=reject) header.from=purestorage.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1747078974; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=BCppAkhIlYysyFp+yAudxUYBLR/mkSMlj7KkzrKduyU=; b=gFbpVWa+iVPPrve4hdJ3WyVMh2hQVxuZ1AmBJMaVBFg+QICCqttxZOZk8Gsdj/yLbpVEhq AfDD/15TiKUJsRHE6VWTQV9EtS4Uapq9M9lWwpWgzWlhAIT3hSktXTLKMYTnQWVdT2Acu9 LskY5y75WrMSjitkWQ25LeHrRBhmWOE= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=purestorage.com header.s=google2022 header.b=EINroefv; spf=pass (imf24.hostedemail.com: domain of cachen@purestorage.com designates 209.85.166.173 as permitted sender) smtp.mailfrom=cachen@purestorage.com; dmarc=pass (policy=reject) header.from=purestorage.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1747078974; a=rsa-sha256; cv=none; b=1ZJG7RuLjNbN91I1ZfuqiesZcp7pu9ht2tqoJe4h8gGZl2C51Jg4aIA7YkOMohOJ4rV0Ow HlozMLSvdtg9luYpsFbY1su+seerP1Y+GHCtkQV4Fp85ZPFfuXnslkISkiVgSLfyujUCiC y75qV6zUnyjsm8gMjI3eQDOilFsP/pc= Received: by mail-il1-f173.google.com with SMTP id e9e14a558f8ab-3d90215ff34so2445055ab.0 for ; Mon, 12 May 2025 12:42:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=purestorage.com; s=google2022; t=1747078973; x=1747683773; darn=kvack.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=BCppAkhIlYysyFp+yAudxUYBLR/mkSMlj7KkzrKduyU=; b=EINroefv2ozCcjimIHBYR3AmSlU7FOX4zooajj4it96pam8xZHqhlhCePLK7P7zbyA lqfl/wig/1gjV+hR4kMERGlsk63hpiyAFKSHESIvHLsmUsBDGEMAmNCe5StWv0qr6Zqa ThRMVQbu0T238T/0Kl2fNiL7LF2WY+4BOZIkicNuXBw59LMENxktiPIzdOsQ0Lz8dBx7 ROrTsW7DKeaNmsRpNpbfroLP7jxbPwNAa/bd8vnykXYjAoHBK3U8blEEpKVyCXufhGBH 1zRa5zWYOpT4es7mRVjUIoflsnhMuy3kCzZNyzOrTQVv1aq1yJ/dSDWAO1AvF6159+I9 dinw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747078973; x=1747683773; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=BCppAkhIlYysyFp+yAudxUYBLR/mkSMlj7KkzrKduyU=; b=wZDZnJ0JP28t7eYC4o0hF4J0kCpDljvBSfFVsmUynsedKKT5uZpsZMzRKbcorC9cEr Xz8Ir/VLcW0IgxiikWtQY7r91Uw/qNMj42cR5VEYQ5JPXZ0V9YsXCorU8TlOKwmAdxg/ AcoC369PZElWwivZA33PNJk+W+duri5KeLUEdbe/wNRgwYoNzrQ4iS7Lr1Miuy9dhQxe xMmLJUjflStLX6zHJokffASXW84uwm37D1hQXrlVEJTkcP9lJKMwOSvif4yBgicqwgIA Dx+c3cTSDzqpCKd4BJeWmPD2EOc/lo5gEMuEVeNx9Vs4o/6S5y9gfdXDZ6UfoGfGFJwj 0KnA== X-Gm-Message-State: AOJu0Yx96NmwSJYWLzkVBiHRHzcMhPHMOjNjdNff1f1lbP75C5tGKNT3 V618PaHqeZ8/uhpzPWzWRZyw87x16IiIBwKaKdTY5R9OxsgdkSpctm1ku7jAiS99kjGPVq5MsK7 5UvD+XIjxoqvxTMerwPy4q3Gt/+jkk0SIkK3BTH1LDNy1zCsecGcZhzNecd7kG3WLOazhQkhrrZ U6XI+G74KBD4Af/kQ1Lrt602oqUfZ896HCTxfy X-Gm-Gg: ASbGncv7BnxN40OXR3LXYu/SUJ2EAuj3gp9VOy54ybQd55M0AxhkSexyJUUmxlKNr8J pRiX2P4yr9EohOPdse/c6fY6/pYTMFhebMgBiZH4jtPhyLIKQNns1ViLy8d942Ujs1tmqcrIzy+ qoVE3e/x7wKQWYTv/A+kB0X/Km2EQ0SJg/S2Cwz/j778M8oMfjrlfETZsMdO/0coiyLZ3trCCxK euDChiqcwDEFv69xsTuETmCp6vrk2OlpnnoNxw9ouzYqNQGMvaVQ+l7XbK47AlgCM99BeS1KPJr ETEjtlWRwetG+1i1Q0E9GeOIf8HnSMPTgs1g+iAY1cFWocWMp2tfri3uVrr5xlDzU5+djw== X-Google-Smtp-Source: AGHT+IEQkUJMg/1/x19VXgerV6XUj6Y8WwsS4wE5raJ9lMzgNY5gcPAXBBLCe4rNxZCTrghzJY3pgA== X-Received: by 2002:a05:6e02:154f:b0:3d9:390c:91c4 with SMTP id e9e14a558f8ab-3da7e23566fmr37511605ab.5.1747078973262; Mon, 12 May 2025 12:42:53 -0700 (PDT) Received: from dev-cachen.dev.purestorage.com ([2620:125:9007:640:ffff::9190]) by smtp.googlemail.com with ESMTPSA id 8926c6da1cb9f-4fa22685366sm1719358173.142.2025.05.12.12.42.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 May 2025 12:42:52 -0700 (PDT) From: Casey Chen To: linux-mm@kvack.org Cc: surenb@google.com, kent.overstreet@linux.dev, yzhong@purestorage.com, Casey Chen Subject: [PATCH v3] alloc_tag: check mem_profiling_support in alloc_tag_init Date: Mon, 12 May 2025 13:42:49 -0600 Message-ID: <20250512194249.14501-1-cachen@purestorage.com> X-Mailer: git-send-email 2.49.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A3FF5180012 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: 7uxn3dzctngq1wtq4jhecg6k31hsdnpd X-HE-Tag: 1747078974-886382 X-HE-Meta: U2FsdGVkX197j1B/z0CK/9LPs4Qa1zZ8M74xp2CQNbX+fFnOc5diCS7d6P8oyc82zfBYhLrraQ29mHPFnJ7oE9kNSWQ8bomLaxE+h8rHn3b3u00dcMI5Gd8170icoMYH7uOpecPvY1iXMOTid2tixHQz7Kfc6pi+RkV3SerZf4eMOSVGlkPDUyVBUedMY6FOyxpKDUj+smXU8Q1i1bIIOvVOAPANasvUxO+nNxSYz2umSjAjfPNwGGC75kxhCThVQRNvnxYZdBFyW8W2Ouzf0hAMbF7jHAjhiY8wGN1Z4t1c8BxfzoIxahyI/r7+atSWg+j35NtUdXs3gKEDQqE78IYexi4OmTVY37YINQnrRxnDojU1L0pDjaj1bMyQ0tpMB0Sa4fInPzZBMx6DAfVTiVAiRZdxr2D8MjBnj+D5iQYRaua+B1svmGmziUxXM1/U4SlpJrIzM0Et7bubj4NH2zYg8raczPRfW170Ss5oQ0pBYylP3AffKTegV7dAkXSoBE4lkwVk6EbmGw6jWa2jhqVDBJfD2rgSZiKwzBfd7h4QfVvLQkwQ1qbK38b+IjyPMJH/hdgRG5j4Z2vZ9agSsHQihUSB+1u+KP4jk6Vxv2/0QG0Tu0IiYIhEZ5TUXAordOU85mxJ1eOe/9QAChEGjOA3kpbQ83eQ28Ry++V4c9NqDPLo7dwV3390E2qi6KIsFIwk1fdFaC8foIb1MDA80NqROnonfVWGBp5mAPgBXpX8yMH3ShPHGsNf0GzsK24tpRi9o5w4WtlshqSunb7UUK6o6y8+nRqMKjvNuYWFcyoTUSmfqHa9IWT8HU2FurjUNUcCPXX13+COJeKJPJfbru4wBHn0URP9IAMcaoi/Vl5X6ulXeiaP6OMpMrU8v0IXE8ulx5TpoW3UONtDZ413Gf5rzEMl3e1HwYttA10NrIRYIlh8vW4paaN8e3dPJ4nEt3dB5muG6SP4p7lQLF8 l3lL/fei mmLM72TEU6D4HgIdPxQOFGRQwLz+n0QaX0SFDTN5vnC+CWl57nOFm2LTIL7MrXE1PV9iPWNdeJm6hPp0cuDjaVL4ssa+vcl3wvFySktW9LMUumVwK9dD+UY0lECIK3xbWZ1xVaPrL24sB3jIGSMwfOLcijjxzV2IrlG0Uqhyei5weQ7fRoEYRTmaD+jj2yW5USTJhOgaJkVgq7Rp2C4cm+KeAFKQPrYHa44EcxwOUz64/z4s0sxxtfAAS+9wvVHF5I1OZL6nQsqVzOVQ9yEMH+JtO+vQ6nAwcY+ZqeGEJiBC2cxVNHmz11yPO+Mg3zFEQUx0b8rBOo1Zr+QA2UtIxRtb2IyjFrEDJO+ZXSNNcNa+4v/TXPd19jZNpKDcCJ8oEXW3Y 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: If mem_profiling_support is false, for example by sysctl.vm.mem_profiling=never, alloc_tag_init should skip module tags allocation, codetag type registration and procfs init. Signed-off-by: Casey Chen Reviewed-by: Yuanyuan Zhong --- lib/alloc_tag.c | 34 +++++++++++++++++++--------------- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/lib/alloc_tag.c b/lib/alloc_tag.c index 25ecc1334b67..7c798778669c 100644 --- a/lib/alloc_tag.c +++ b/lib/alloc_tag.c @@ -244,17 +244,6 @@ static void shutdown_mem_profiling(bool remove_file) mem_profiling_support = false; } -static void __init procfs_init(void) -{ - if (!mem_profiling_support) - return; - - if (!proc_create_seq(ALLOCINFO_FILE_NAME, 0400, NULL, &allocinfo_seq_op)) { - pr_err("Failed to create %s file\n", ALLOCINFO_FILE_NAME); - shutdown_mem_profiling(false); - } -} - void __init alloc_tag_sec_init(void) { struct alloc_tag *last_codetag; @@ -762,19 +751,34 @@ static int __init alloc_tag_init(void) }; int res; + sysctl_init(); + + if (!mem_profiling_support) { + pr_info("Memory allocation profiling is not supported!\n"); + return 0; + } + + if (!proc_create_seq(ALLOCINFO_FILE_NAME, 0400, NULL, &allocinfo_seq_op)) { + pr_err("Failed to create %s file\n", ALLOCINFO_FILE_NAME); + shutdown_mem_profiling(false); + return -EAGAIN; + } + res = alloc_mod_tags_mem(); - if (res) + if (res) { + pr_err("Failed to allocate module tags\n"); + shutdown_mem_profiling(true); return res; + } alloc_tag_cttype = codetag_register_type(&desc); if (IS_ERR(alloc_tag_cttype)) { + pr_err("Failed to register codetag type with desc %s\n", desc.section); free_mod_tags_mem(); + shutdown_mem_profiling(true); return PTR_ERR(alloc_tag_cttype); } - sysctl_init(); - procfs_init(); - return 0; } module_init(alloc_tag_init); -- 2.49.0