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 6916AC3ABCB for ; Mon, 12 May 2025 20:53:51 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EB5776B0088; Mon, 12 May 2025 16:53:49 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E640F6B0089; Mon, 12 May 2025 16:53:49 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D2CF66B008A; Mon, 12 May 2025 16:53:49 -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 B07A86B0088 for ; Mon, 12 May 2025 16:53:49 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id C4B23E1A3B for ; Mon, 12 May 2025 20:53:49 +0000 (UTC) X-FDA: 83435457378.20.C322249 Received: from mail-qt1-f176.google.com (mail-qt1-f176.google.com [209.85.160.176]) by imf03.hostedemail.com (Postfix) with ESMTP id D42C120007 for ; Mon, 12 May 2025 20:53:47 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b="O/9m1360"; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf03.hostedemail.com: domain of surenb@google.com designates 209.85.160.176 as permitted sender) smtp.mailfrom=surenb@google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1747083227; a=rsa-sha256; cv=none; b=BPX41hzNFzuWHndL6X17TBPGPaHWZ/7tEzHdg37zaqQPiW+IHnxJueNcaVJZf0oWt3KJPn 8wrHGxFn7toOrCeo23acM2LgUoSYsGyjUnJ8bFsuFNDCSKsUH01to39O/e4RLWCNEPVOrO kpvU8yOcmwZkr2DSPR6CSqdSFaEeXzc= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b="O/9m1360"; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf03.hostedemail.com: domain of surenb@google.com designates 209.85.160.176 as permitted sender) smtp.mailfrom=surenb@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1747083227; 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:in-reply-to:references:references:dkim-signature; bh=LCVrT9Dems9qIUqCiecspP5VX/IAVrVotT96FPHnFE0=; b=7WST+v3JMZEK2VIE4/GQq5NEmVn5dCyar714feLw/xrSujGV2+BWsdiJEROYjVs29lXOwc ZqXZ92SQk0cH3+AG1H7gOt1ow9seivdm/+C2iPRSd36KSPfsTG4RgciMCiwlJoWqzg6WFX 7R9h4lut6P98R4GpMPhVcJeOMdIGkrI= Received: by mail-qt1-f176.google.com with SMTP id d75a77b69052e-4774611d40bso87801cf.0 for ; Mon, 12 May 2025 13:53:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1747083227; x=1747688027; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=LCVrT9Dems9qIUqCiecspP5VX/IAVrVotT96FPHnFE0=; b=O/9m1360heZDwObdZYPPXabtThETA9MewrPZpoet0e+9ZcwI4yAvs64i5kpgWg0+Cy LTe/It49cg4MrntyOqlOlx3IgaY3jioRQa7khXDScSf60/ccK13+GvB8adHMTfguc4mp 5LeC02NcjWMj4qBE5laCb6r3alNwlhDmrEST7OVdWnsO3uVqr2AGzkofW/7Umbp0OCFz BQY7CwJrbUPNeJiLwp75QKTPc/OcLwwZdLzvkCnw41z/JBDVQt+lDj7WnjcMoWeERpK0 wgPn2OyFhD9YL5LJzOAcF060kd+6Y3J29/sFu2xK7oPF3Z0UeZEOBpX2cUJBotsDOcVs yptA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747083227; x=1747688027; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=LCVrT9Dems9qIUqCiecspP5VX/IAVrVotT96FPHnFE0=; b=k/dt+/3aubrjh9PFnlYk5reco8c/todK03LJeEiw68Iwks6ncrrC0ZFk5TeBalI+gf F3SFsoxtTGcuQEmxWyzVGmf2BJ9FpTDH9wt2EUhDTWZKocnwyPGoLM4ixBnW9cWYMJd6 utzQklkObiVjGCsLvtNKse5/oO5mET+ie0sNsYKGA/PymoF/7vgtO79ztVUx+8pjKNaf kfxEqHsI38aptBovZI49n7UWkzFS6PoClYbhcnOE7kcignYu9EJqreZGIK+qBrP2vg1u QymGFpTUIwKb/dKg8KgvTermlTSSoT/yY8bTyuVWnEyN8ulnErHd/KLdVTYApjls/1oq 861g== X-Gm-Message-State: AOJu0Ywi39c/DGUP9kPGmCvhVHgjeWlllEA85/IEi+AU4b5pH3uF7ChA USJrLRaJHG3infNQVcgCTZmuCzdLII6Yx8y1akq3H25xzcKWRfiW2Zzfg1j+ZDmaGbysd1nh44y IvYkKVHjYUIajRe8qSFwkWe9e7m8aKQ3b19LaMOZ8 X-Gm-Gg: ASbGncuzEbm++gbnpdgCgcFwFIDe69Ru1sZHNVZQmsnUp74iJa0rBgyX8bSpx/X/v1I DSMM6xhDz2xYQ74usPP8u8JMPXRi+ZUjMkwCmZ0qZzLSCF5u/vHTaGgnabZCUXa8Yq8pl4WY5hd kQPY+5WU77ifOV6yoeNnHiwyDepLE0YWE= X-Google-Smtp-Source: AGHT+IGUQkyysLgfGjVDi2CG9EmdyEbeYhAHjtIRm2ISvtb50CijmRr3foI3inVC/W5Ir/Ef6J0O3lAUAUWB39Aepkk= X-Received: by 2002:ac8:5902:0:b0:47d:cd93:5991 with SMTP id d75a77b69052e-494898fb0b5mr69821cf.21.1747083226700; Mon, 12 May 2025 13:53:46 -0700 (PDT) MIME-Version: 1.0 References: <20250512194249.14501-1-cachen@purestorage.com> In-Reply-To: <20250512194249.14501-1-cachen@purestorage.com> From: Suren Baghdasaryan Date: Mon, 12 May 2025 13:53:35 -0700 X-Gm-Features: AX0GCFsuCiVX5sCslaAVzGTQy0EuKWXbNGR2E4lkWvxiJMu1dDfWjySfDsjErh8 Message-ID: Subject: Re: [PATCH v3] alloc_tag: check mem_profiling_support in alloc_tag_init To: Casey Chen Cc: linux-mm@kvack.org, kent.overstreet@linux.dev, yzhong@purestorage.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: D42C120007 X-Stat-Signature: k9dz815gza64m3uu3p7148o8ciy5ps15 X-HE-Tag: 1747083227-710399 X-HE-Meta: U2FsdGVkX18wyzj114NTD7kCnOTdT7YWVmzxY8hMT4H+Viob4JWlF9w9mhOmIXF4g0FBvTLJ8lNokWtba1ZSQfVdddA3EigyaqNW3LHqhxJ0lnVBLnM6dZZJWG2xkz+ODCONpSOIpGDAgthZfm9MRN8XqLh6QpHFHCqMtp17I7MehdE8QuCq9fwZzK1kQOHmpWcjM2+W/OWjU45qvsFvRftPo1eYpZqNyXYBu2sgOuSdcKXsJbzHYUmPahpKdIo5Qf15y6pKF/qPrSlwOqgSpcswXpas/QUPdn7bx7RejAUkghMKa00dZHmEwUTPxqUpqaqSrIRt05ML4fwFdup8ijy4w/2KaRnlHsc7ctJV1OptnKiqdzQVl61HW+EEkONs+phM3f8O9xR1Ec3CF5jWKGH8bCqfQYrBZlRXuupZDa0BpyGvaJ5McqGLJe+XfnplKUReKkxbho6HIjjMUC1RxBSeHhEhiRCYEQchNDRTFAyszBel8E0SUtMViTkwX5mmbXPhUC5WAkfgktVLbV3u69BbJmy5ylmbmDbyxKL24nNpDIPRaQ9mAJhhFBf0xUBuQxgTY45bjuiU8esCpL0O3SACJGqVi1nqS4+PndYtoWMp+BrjTdlwkoUh4rbsGoTTLFkvS3I2Mz/kXCaDAMqbMLII7a1kdCy2H+WOsBlgWRhhA7FVMKURDVel7x5KbXiXxaJEvI5ZHJl4gpDILfaZYZkrb7SvQavbEYry/dKHESJ4bR+ONvCTZ1wW5tlESD2L4SQdCxMga0sA/rncjfolzWw3Gzn9Iv86G/1oz3vzkOC7FuycZupdQDeOimA2gSD5kySwdHYhbJ2sU9pGjiai5Nzm5Skv+6i0Q/IzOvXYxgH9V/U9UHH0ylb3A1vWLXCJIA+bTBFzobqbuuV0rpuHkEd9e7nmhSjVUnKh6Nw+ohbcUY43hEq9DVSPuAqtVr1pKtaEedBeDwPHZirauAT 7Ae9607o AowPzJE0fPNegP4MLFPhwaxYQYI9mfYOhUj7r+q7Q7k/At1DgyKn7FceSKVyTMYAOIy7yQlMEYqNC6Sty+QDHSqhjwKksxEkvrmOziAPXvE2PyrOkvMBy8xR6oPvKi4JCsnEsTWs0StJEuYVDQIdxrQXuGkdygPcHabTipeV/ke6rWoWBqwNSmDd7s3WIA7wqyARD7B83Z82Ii/KQ6Sq9XbL84DdvaXSP0wKRUW5ggRMwAYPWwD5gTraQjREb6T4m872aBb/kTzuK4Pm1s3WZs2Ch0iavR0lMgSI5kh6MuxvS5eP7slBIii7rEjsm7/GwnzASwNXLKaDwG0I= 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: On Mon, May 12, 2025 at 12:42=E2=80=AFPM Casey Chen wrote: > > If mem_profiling_support is false, for example by > sysctl.vm.mem_profiling=3Dnever, 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 =3D 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)) { I suggest keeping file creation as the last step so that we don't have to remove it if later steps fail. > + pr_err("Failed to create %s file\n", ALLOCINFO_FILE_NAME)= ; > + shutdown_mem_profiling(false); > + return -EAGAIN; Why EAGAIN? I would just let it fall through returning 0 (after moving this to the end as I suggested in my previous comment). > + } > + > res =3D alloc_mod_tags_mem(); > - if (res) > + if (res) { > + pr_err("Failed to allocate module tags\n"); The error message is a bit misleading here since we are not allocating module tags but reserving virtual space for them. Maybe: "Failed to reserve address space for module tags" > + shutdown_mem_profiling(true); > return res; > + } > > alloc_tag_cttype =3D codetag_register_type(&desc); > if (IS_ERR(alloc_tag_cttype)) { > + pr_err("Failed to register codetag type with desc %s\n", = desc.section); pr_err("Allocation tags registration failed, errno =3D %d\n", ret); > 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 >