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 7220FC3601E for ; Thu, 10 Apr 2025 23:59:58 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2C790280145; Thu, 10 Apr 2025 19:59:56 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 275E7280138; Thu, 10 Apr 2025 19:59:56 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 165B8280145; Thu, 10 Apr 2025 19:59:56 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id ED2F3280138 for ; Thu, 10 Apr 2025 19:59:55 -0400 (EDT) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 367E280276 for ; Thu, 10 Apr 2025 23:59:57 +0000 (UTC) X-FDA: 83319804834.06.9EDEBD9 Received: from out-170.mta0.migadu.com (out-170.mta0.migadu.com [91.218.175.170]) by imf24.hostedemail.com (Postfix) with ESMTP id A0E2A180006 for ; Thu, 10 Apr 2025 23:59:55 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=SrChvCdx; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf24.hostedemail.com: domain of roman.gushchin@linux.dev designates 91.218.175.170 as permitted sender) smtp.mailfrom=roman.gushchin@linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1744329595; a=rsa-sha256; cv=none; b=3f4RdNYmNE5C97NdkjwiOOFAarm+69ANWjM1gsdxnHCr7KTPpxmFFoV1zmLxcfi+ZtJkyQ A043dJNfhzHapYcUcItgZIFBxlknn/Ahuq2PEpnslppGgO/laT+arExWPorHif83n7Iy6M UoMW4J3jIEfG9UvuuRVY2ku11PMpkhY= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=SrChvCdx; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf24.hostedemail.com: domain of roman.gushchin@linux.dev designates 91.218.175.170 as permitted sender) smtp.mailfrom=roman.gushchin@linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1744329595; 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=KlgwoACMu9cGLhcFhVjRq5cgj63lNPNHKQGYwpUXzlU=; b=MFRJ/kXUwQwyPg5jwW7/QecocSfcmk1gxIYOE4BFo4CAm+TD7LbtKqU3Z3mec+Ex7OkChR XUKvi6Rla30PKCorcv4FW1kMjmMIbRxuDjc6S5h+twwHIbhtTATSUu9sHtZD/M0ZDxF021 HL1NmsQm/TerEtkXtVJCTkrSwb/hat4= X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1744329593; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=KlgwoACMu9cGLhcFhVjRq5cgj63lNPNHKQGYwpUXzlU=; b=SrChvCdxSxE8UFwPqJ6jAwLJFC2TqTpiMacg3gSaMmhtYdovwlTyWH0K/Yhm5YEahHUB4/ yAzePr1AOlvpWz2e5WRoS8YTH5hq8SNN8tV1C56ij9D28rGaHTBavkfeztN3kCLJmiIv9B 8OK+SeRrh3z2BVXT+jh17eMqJ4Jd270= From: Roman Gushchin To: Shakeel Butt Cc: Andrew Morton , Johannes Weiner , Michal Hocko , Muchun Song , Yosry Ahmed , Waiman Long , linux-mm@kvack.org, cgroups@vger.kernel.org, linux-kernel@vger.kernel.org, Meta kernel team Subject: Re: [PATCH] memcg: no refill for offlined objcg In-Reply-To: <20250410210535.1005312-1-shakeel.butt@linux.dev> (Shakeel Butt's message of "Thu, 10 Apr 2025 14:05:35 -0700") References: <20250410210535.1005312-1-shakeel.butt@linux.dev> Date: Thu, 10 Apr 2025 23:59:47 +0000 Message-ID: <7ia47c3r1sb0.fsf@castle.c.googlers.com> MIME-Version: 1.0 Content-Type: text/plain X-Migadu-Flow: FLOW_OUT X-Rspamd-Queue-Id: A0E2A180006 X-Stat-Signature: 4jtgmrg6z6zfzy64jb5n53dyub88ngco X-Rspam-User: X-Rspamd-Server: rspam06 X-HE-Tag: 1744329595-920895 X-HE-Meta: U2FsdGVkX18A6+fygWAPjgpSx2/LBMnvDLYIHMBHFYgzGHPcf7CK4ZB2i/ksxoUDls/2jWsWTF6qksO9+2thK6t4UZor9Mz8G0jo7WOsFBLQcRNmWCgljin2ggUuNIKlOMdoZUfTmVHfJ62MIWgJdbquyN/Sl+l/RormnwCRodgZvWFHvB+B6CiGLjfWtoprDsrt0Q+ir/fArm7Prz4zAt/587zH/GmYSmMIOC9HsXFpJfUKANN6BEErmsRNHr/Oh7/AgYdRH5Lydtkmuq/M6JPGk1NBzxWyObVNLEX02GEEKjm+4HpuqEAmmzu802iP13g62jakXpd8a4dwrhKazb08yfHCXWhEI8hhHZzlATJnuf0bFYW67iHdbOU7U+v80v9Jqg3yCZFlqA09XLXO6gc+faLcgVuTnXzlS+8q2CCkvQ5N4tfFqhB8TqvjbBdwgeJnbj6k1bDj2/lUnRl5fVfntL7bJ/a9EcqsGfSo+UTb0QKcFu244v9meG67qlZ13vvi+2f0rbXbG81ZtNJIZIwxNx1PARYsqyMdOCSopray1Ax64tGKfSDT7AadrN/cJNZDAOW64GhF9576earf3tia48cAdZ0hpgLFL3cTxQ+gBucdC5BlIG1Q2oaEC5JyxXJl3MuM9HCk/mxuYWf0DvDkszNL/i9EITnR8eus10wjfUgYUoC++e3ucfJ3qzEVWo8GvX8/+5kaUl12QicSIPCs2nfnZGD/ygoioTZnv8gfqHHKMTr/l3oqTH7S+NQfPTS4GqtOamjodvumYs/7Pwdxzfz1bazuMxhNaclUGuFWqnaZR3mDt83QcewV/7qwFpJ0DtjRo3g= 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: Shakeel Butt writes: > In our fleet, we are observing refill_obj_stock() spending a lot of cpu > in obj_cgroup_get() and on further inspection it seems like the given > objcg is offlined and the kernel has to take the slow path i.e. atomic > operations for objcg reference counting. > > Other than expensive atomic operations, refilling stock of an offlined > objcg is a waster as there will not be new allocations for the offlined > objcg. In addition, refilling triggers flush of the previous objcg which > might be used in future. So, let's just avoid refilling the stock with > the offlined objcg. Hm, but on the other side if there are multiple uncharges in a row, refilling obj stocks might be still cheaper? In general I think that switching to atomic css refcnt on memcg offlining is a mistake - it makes memory reclaim generally more expensive. We can simple delay it until the approximate refcnt number reaches some low value, e.g. 100 objects.