From patchwork Tue Feb 25 15:30:20 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jingxiang Zeng X-Patchwork-Id: 13990124 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 0861FC021B2 for ; Tue, 25 Feb 2025 15:30:38 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9859D280007; Tue, 25 Feb 2025 10:30:37 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 935B0280003; Tue, 25 Feb 2025 10:30:37 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7FDE8280007; Tue, 25 Feb 2025 10:30:37 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 5CCC6280003 for ; Tue, 25 Feb 2025 10:30:37 -0500 (EST) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 082E31C8AF3 for ; Tue, 25 Feb 2025 15:30:37 +0000 (UTC) X-FDA: 83158854114.06.2D1158C Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) by imf20.hostedemail.com (Postfix) with ESMTP id 11D2A1C0027 for ; Tue, 25 Feb 2025 15:30:34 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=DNLXarUX; spf=pass (imf20.hostedemail.com: domain of jingxiangzeng.cas@gmail.com designates 209.85.214.179 as permitted sender) smtp.mailfrom=jingxiangzeng.cas@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740497435; a=rsa-sha256; cv=none; b=w7FZlG9w9mlndYCb1QHzUqY0TOG5ceY2tz1HGvETRftO/VbnmSqgSIJeWcr2edNt7Afw1u HBaTgal6MoXPmWA/UU15ZC4FgDbNG6s1G7ZRFqj28ApkWsFAvFSFxes7fZxwsUCSpxFvwA GeOMxlkRj//FJvrv6VerCu94ECYXa3I= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=DNLXarUX; spf=pass (imf20.hostedemail.com: domain of jingxiangzeng.cas@gmail.com designates 209.85.214.179 as permitted sender) smtp.mailfrom=jingxiangzeng.cas@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740497435; h=from:from:sender:reply-to: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=w55oI5j9kYKbHsSt1XskGhI+GM0w1glSGuegz9KzV+0=; b=TjmrHKOFdtRewvuPOtESCaRKoEk4Eo25t2LbHxUQxAHVt52YtrhzivnpUY8eVspmTqA+0f lpRk3vFLJ/tV5GfsyDNHSmVNzLhPCED41OZuRUF5WlyA2DSFj/GPC8uHWqSiRlP9aDOf6w 0uUZ4nj5dH2AuywpdEIaQlgh40y5Gx4= Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-2212a930001so45238665ad.0 for ; Tue, 25 Feb 2025 07:30:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1740497434; x=1741102234; darn=kvack.org; h=content-transfer-encoding:mime-version:reply-to:message-id:date :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=w55oI5j9kYKbHsSt1XskGhI+GM0w1glSGuegz9KzV+0=; b=DNLXarUXtaT57isXG/jvPJRf2r0B8EUDVOfjlKMwBtWmqHCwEaKPCKsDZijN+Az1BV 5UlfOtID51NWW3q05p+uKpOStJMcEulwOGlxihM4caf5ZaxL1noctk6mX9yIGZSLbLEa ff2KwFX78N+WX2kY29jiDHCnYgdoFGj7phIqj9OBDG10WBNHFyLd7YXntNp3oovaFvgh wPp+xgLHZhxWuBXEsOAjBL0NVqAWWztZCVhhnVu29zFgdGoSFb4jkIlt0+43Ed6K2xmY mso3SvueVsYQbQibFpn9uzzegS2MVMCR9I0JPH4Nrw5LqkeE+NeYRRD+SsF5CD+d9jTs CVWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740497434; x=1741102234; h=content-transfer-encoding:mime-version:reply-to:message-id:date :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=w55oI5j9kYKbHsSt1XskGhI+GM0w1glSGuegz9KzV+0=; b=XXlEFNOelNWDlRspphBwyBhzqCNkJx3kj9wxIgH/NXS6qfwp0ZsejeQnP0Gv47uxtB pwZ/r0eDGGV9pF+AJCLC6UmcEsVuAMTd4TEqT+Dh3NmYXVg6eqaD5JNS3elozhtMDa+p 7lG2leM5NZNAyaJ5bxXtFquAH30W0IJ6f6FsRYcWe4BK7I81xbR1nroqjNc9I8ahe4NI IUVx4bLgzrG9CrE+oLwxCVqFmJ50V30R5cxndCdiW0rR9YPGKup7eq/7S4bAJqOXSp6w mxYbe9TQZkyV7YH0Mir1EyaaJXH3tsdyTVYD8LdvMTP+IN5jT2cL75iSilUsZ3Qa2OXu g7qg== X-Gm-Message-State: AOJu0YyZAl9R0vAdstIXuwQ7iRRJnvXcRWJaD+4hV+YHLGFtmzTLyDNf S3AIqQq6woJKmbHA66SjbmgKHtXHXax08XYM0sJv5Z8zEyuWCu/STd4rnx+F X-Gm-Gg: ASbGnct1CCPkd+cXtXXnPaFa28nNVOjT9tojWD9YlpzH/2WNogKQE0WGfnQSOj0RD1t oGEdcFCw8Og4HB/TbHJlTNAgJTNOwkq12uusFu1BBIdqkYvBNCiUcR6wRTXOgDjO0Oo3J1AJcj8 nEFyk6lF5SwK8m2xM0W1GfQaltCktUicJmiMaQmA5uDo25KqdtbnTVHwQyiTjB2z5f4WvPO9PiG p48CrQZlADWh69x+UdmQ8WabimUqD1Nas3/RP4/69r0PSQfCjeFxZIiyIysBG06DbKswlFgB+G2 xXDK1/2A2w2Ao6WENnCCjSzp397aELdAMzOVGq0dW+tG3G82QMYAWn/aAVch0gZfWvScUg== X-Google-Smtp-Source: AGHT+IGV7ijwwMlLMGbRx/aXCzyuUzb5TWlhnAcoZ426aj3ygYv0LG/bFKu/V8cFx6veekpkt8saRQ== X-Received: by 2002:a17:902:e5c4:b0:220:d69d:78bd with SMTP id d9443c01a7336-221a1199349mr251151565ad.51.1740497433461; Tue, 25 Feb 2025 07:30:33 -0800 (PST) Received: from localhost.localdomain ([14.22.11.161]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2230a01fc47sm15740625ad.93.2025.02.25.07.30.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 25 Feb 2025 07:30:33 -0800 (PST) From: Jingxiang Zeng To: linux-mm@kvack.org Cc: akpm@linux-foundation.org, hannes@cmpxchg.org, mhocko@kernel.org, roman.gushchin@linux.dev, shakeel.butt@linux.dev, muchun.song@linux.dev, chengming.zhou@linux.dev, kasong@tencent.com, Zeng Jingxiang , kernel test robot Subject: [PATCH] mm/list_lru: make the case where mlru is NULL as unlikely Date: Tue, 25 Feb 2025 23:30:20 +0800 Message-ID: <20250225153020.2514685-1-jingxiangzeng.cas@gmail.com> X-Mailer: git-send-email 2.43.5 Reply-To: Jingxiang Zeng MIME-Version: 1.0 X-Stat-Signature: 7adghe4rjuc8fq65umquw9x9wqcbs8d5 X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 11D2A1C0027 X-Rspam-User: X-HE-Tag: 1740497434-260483 X-HE-Meta: U2FsdGVkX19+1nQ7Xmk/14LjPb6frTIuveTczRBOLMr+0mt9v4QKqncM/p6xaiVqbz1tH7O+8kIjlskVS3wI0Zc3sgd3y/JC1skUaM0yfxpTbxQ3SG9QkMwtjQzYkL5gdbn0wXs+e2Yk2x7+il8vC9BD2zXV2zcapIigZzirL8zPI1BuVYhTwZWJbOVh6ssPpPsh6L8dbB4rlt2ONOlY6Mmivb7xIOHfO+nnrOY+45EKUvWhb4apck9hNPE2WjkDGlWq3sYRMjYHfE4uHWwyWZkFpIaehl0zWndmhClCUwCY6F9B7ZgYhEX1MLJ9mZxGeqAm5nuBnIsej2IaE/ubJ3jCmWr+0g2aMZHeJ55Yd6ZDuT9EFn2k4NjX+yl956H2Jax/tlEyDlyaf738OFSlVrKHOL605zW6r8Nqzm3DpSkKVkAR64ixIiPCarI07d9NbyfIY2QI9tKhuAMLWwtBr2w8xMi+ivqx054q7x32mvngxt3fH0jjMDhhd6X7EFHQ/LJRLJk9jvIdpCFOgIib0blcUUm5eSzOY38QMc3xw+juhhqhaX+dZ/P6VRucZLefdeqyGHB8msIoASk2D8/fQAXaWg5CZ+yyZsQN8itcVTkNVTYcBhHe1s5JK/v3+oqZu6TbCZ0gazGepHf4MlMTGq8+kJvop/2Gbae0H2YhfMq43gDMIe16eBqnUjre94bPOlbLAxYiEJ5hioD2Sje+oYgRQQg3IMXm2J1z500blk/uKjJ5+fWuHecg1lFsWW+TfT7PN0FqD0nxFYBet/2nynPjg9DL7zKL+8ON1mJWtJG2rDcTKpzdWiFcMNSFU9SwIE0ihnGfm7evjSWa/DVs3KIwOq3E+r5w4vGI4VmG8xZ+a2yVolTBb4wZ5EbVbNRQ1OpqJP6IGd17wA+Ok6P/nqQUtoj0fS+uViBIf1IH1OBdwmr57Nj3WebArQsir10fd6pCTelDHZZHvwhBey7 z7Iv0ox7 OxjOrbG2AKSNUDWCowp6Q9NcBto7SXb9s+VWl+cGicRnVf2WUj3DlSu6tN21wKaCFhtKuwQ3sua115mTgsoGlXc9LoNr6fEtErLg5vz2y4LETFETIBTXYCBWe9OEMlncAd1tx8fl2VV3Lx3NmfgZmwtsg2/VvIqweIzs+znaV8jO7jhxplbNDNdnoB5UsOeGogWIXd+8mSlIJljBh7qWZrRVV3WBWlep5D6i6pG+jNy3H6PAXuBc5sISiqPEtsl+mTaONt8Uprlh8n/5hThsqptb0n0XE17liKqPVuUFazAJ6wM0wbzIIin/9inLLFweLbZ8pUmeZW+ERy7w259tcnwuhyThF8YLpqei/p3O6LaWm9MRxc8h5uqjgkKIchN29/bRoYTxiNcI5q0TBdislozvYKaovbMf00BdH6CKZaxamaKlxNEC8b6Z3ahUyuy0jSwN32V36u3uW6+DHVC1wNRAMNHkMQdHCciwKLBgX21QmpDlej2EXFOFxLQNDGFomKlxLDsozFwElBjDnsQtlCpELpA3VBeC7et4YqDYQhstHNI3UxiWofRVA4TDNJx7BVCbdmzkwwp7ckI5SpWcJfXdQWowKPiIC/yLrHVLbd1XeH6Mie6H0cYSJrtz96+jZjM9nD5XVO+f0gJYXXCsM0Z1CBG+f3ngxqeTDBPL/0Asx+yM9OGv1A0DzeReNKaGDvTmj 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: From: Zeng Jingxiang In the following memcg_list_lru_alloc() function, mlru here is almost always NULL, so in most cases this should save a function call, mark mlru as unlikely to optimize the code. do { xas_lock_irqsave(&xas, flags); if (!xas_load(&xas) && !css_is_dying(&pos->css)) { xas_store(&xas, mlru); if (!xas_error(&xas)) mlru = NULL; } xas_unlock_irqrestore(&xas, flags); } while (xas_nomem(&xas, GFP_KERNEL)); > if (mlru) kfree(mlru); Reported-by: kernel test robot Closes: https://lore.kernel.org/oe-kbuild-all/202412290924.UTP7GH2Z-lkp@intel.com/ Signed-off-by: Zeng Jingxiang --- mm/list_lru.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/list_lru.c b/mm/list_lru.c index 064d2018e265..e7e13513ff8e 100644 --- a/mm/list_lru.c +++ b/mm/list_lru.c @@ -552,7 +552,7 @@ static int memcg_list_lru_alloc(struct mem_cgroup *memcg, struct list_lru *lru) } xas_unlock_irqrestore(&xas, flags); } while (xas_nomem(&xas, GFP_KERNEL)); - if (mlru) + if (unlikely(mlru)) kfree(mlru); set_active_memcg(cur); } while (pos != memcg && !css_is_dying(&pos->css));