Received: by 2002:a05:6358:11c7:b0:104:8066:f915 with SMTP id i7csp1755312rwl; Thu, 30 Mar 2023 00:43:47 -0700 (PDT) X-Google-Smtp-Source: AKy350baxCq2QJkfoThu0I6BlU3DGraN1Jzj7KURAYhJ1UzSxQ2kCbiWLPnUHBWCQPSuEP2I+Oso X-Received: by 2002:a05:6402:268e:b0:502:1f7b:f0a6 with SMTP id w14-20020a056402268e00b005021f7bf0a6mr23447380edd.0.1680162227516; Thu, 30 Mar 2023 00:43:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680162227; cv=none; d=google.com; s=arc-20160816; b=Yt7heOQnDffOzkQJ3a/fIwkeEX0wKl6n1dvuPwNe7j7v0LoI6+sm9KP0KJ9ayBbgOw URrG7lQcGXQNC3IQm02yAv/Th/zbQDC475vOleEPYAA+Dr50plVKuju8IR+VComlOmTt rN1V8baTCfs5H9IgbsyK+nBtWnVC63sORKL8njgEYQC6Fx4OD9aWxAApizUIoAUeJ9zq ccZZo4U75K9lE9mSVGYW3Cb3Acm19gXyip/72wJlP5cAz7u39UNpiPpg32S5SUpe+SAY 2OerZdP3sfAm/AKre9vSMHuJ2HG/S4oGEKFvROeds9LtlahknjalYqZICwtT14uHELUu pJ4w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=BKxsqFuPBiJOzp/911MeVFEqQ254isRtT/UBAD5emFQ=; b=MZ0jqQblptT6wGT5HxPPOYOHebnsMOJEA5pYqDF+Ucgh4YX0Gc3/PRjI8Nzr2VPX3A XwNuhljfW56uqW3uR9DRIl61g786i/EsRI4cp+XHEYY+ahNI6+MnYnKOHdYzqT3hCXoy vO6NgISzxeSajk9eCZYuXEhGd9wWf8TeaJep9L3viJt1VePSXq4lKlsUXsZ/ZXTYg24e y/GBm4/aLI50IsnySwyT6fCvFYkUsZLdJV1P2oushI0e4FsolGVxiXiJrVImtHk/Uuji Db/Xgz+/J5b6mfSGsj3S3VDdJFE1xRN5+trBoEv/FQhVKt2c04LggyLfJ77DaiAyqK/m wApQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@suse.com header.s=susede1 header.b=sTAn42JS; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=suse.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id l9-20020aa7c309000000b004acb37caea9si36271042edq.344.2023.03.30.00.43.22; Thu, 30 Mar 2023 00:43:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@suse.com header.s=susede1 header.b=sTAn42JS; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=suse.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230293AbjC3HlB (ORCPT + 99 others); Thu, 30 Mar 2023 03:41:01 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41614 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229624AbjC3HlA (ORCPT ); Thu, 30 Mar 2023 03:41:00 -0400 Received: from smtp-out1.suse.de (smtp-out1.suse.de [IPv6:2001:67c:2178:6::1c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 106BD44B8; Thu, 30 Mar 2023 00:40:58 -0700 (PDT) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id ABA6921B01; Thu, 30 Mar 2023 07:40:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1680162056; h=from:from:reply-to: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=BKxsqFuPBiJOzp/911MeVFEqQ254isRtT/UBAD5emFQ=; b=sTAn42JSwbAgamjaUYbp6+y54yG/0D5tCvLe1EAk35Y48Mnk7UsdkmVOu2kuNympONNMUv XI4XZBzDBYJE2KgYltVPWCpNfPg3NcQMmw8eox7urLMBPMd205E8khnA3qaf66WIhHGAdW az9nTYr3M/QZeuiGHvSRPVIWHVOsqSk= Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 83F111348E; Thu, 30 Mar 2023 07:40:56 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id qtK5HQg9JWQUfQAAMHmgww (envelope-from ); Thu, 30 Mar 2023 07:40:56 +0000 Date: Thu, 30 Mar 2023 09:40:55 +0200 From: Michal Hocko To: Yosry Ahmed Cc: Tejun Heo , Josef Bacik , Jens Axboe , Zefan Li , Johannes Weiner , Roman Gushchin , Shakeel Butt , Muchun Song , Andrew Morton , Michal =?iso-8859-1?Q?Koutn=FD?= , Vasily Averin , cgroups@vger.kernel.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, bpf@vger.kernel.org Subject: Re: [PATCH v2 8/9] vmscan: memcg: sleep when flushing stats during reclaim Message-ID: References: <20230328221644.803272-1-yosryahmed@google.com> <20230328221644.803272-9-yosryahmed@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230328221644.803272-9-yosryahmed@google.com> X-Spam-Status: No, score=-2.5 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue 28-03-23 22:16:43, Yosry Ahmed wrote: > Memory reclaim is a sleepable context. Allow sleeping when flushing > memcg stats to avoid unnecessarily performing a lot of work without > sleeping. This can slow down reclaim code if flushing stats is taking > too long, but there is already multiple cond_resched()'s in reclaim > code. Why is this preferred? Memory reclaim is surely a slow path but what is the advantage of calling mem_cgroup_flush_stats here? > Signed-off-by: Yosry Ahmed > Acked-by: Shakeel Butt > Acked-by: Johannes Weiner > --- > mm/vmscan.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/mm/vmscan.c b/mm/vmscan.c > index a9511ccb936f..9c1c5e8b24b8 100644 > --- a/mm/vmscan.c > +++ b/mm/vmscan.c > @@ -2845,7 +2845,7 @@ static void prepare_scan_count(pg_data_t *pgdat, struct scan_control *sc) > * Flush the memory cgroup stats, so that we read accurate per-memcg > * lruvec stats for heuristics. > */ > - mem_cgroup_flush_stats_atomic(); > + mem_cgroup_flush_stats(); > > /* > * Determine the scan balance between anon and file LRUs. > -- > 2.40.0.348.gf938b09366-goog -- Michal Hocko SUSE Labs