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 15823EB64DD for ; Sat, 12 Aug 2023 02:36:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 880FA6B0074; Fri, 11 Aug 2023 22:36:29 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 830D96B0078; Fri, 11 Aug 2023 22:36:29 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 71F9C6B007B; Fri, 11 Aug 2023 22:36:29 -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 649656B0074 for ; Fri, 11 Aug 2023 22:36:29 -0400 (EDT) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 23A0CB2838 for ; Sat, 12 Aug 2023 02:36:29 +0000 (UTC) X-FDA: 81113888898.23.643270A Received: from mail-ej1-f54.google.com (mail-ej1-f54.google.com [209.85.218.54]) by imf26.hostedemail.com (Postfix) with ESMTP id 53656140013 for ; Sat, 12 Aug 2023 02:36:27 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=EFOEq2BK; spf=pass (imf26.hostedemail.com: domain of yosryahmed@google.com designates 209.85.218.54 as permitted sender) smtp.mailfrom=yosryahmed@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1691807787; 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=Xtg+keftJRj1GAGPnWqMjYAi2LDgfBuNTq5Si7vTecY=; b=YSwT6kz8tlZMJv5mdrz+YGAWoDDXJVc2tuCV6pZPHbnTvI3EEG+tG7hFvAlH7uvWj9cbLG uvY+saPpCOpmNZ0RboiK6qtDIlPaJaMjP9sMCseV1A/HOc91qE1IvwJMBEijMiD1tDeLbG g+W5oPBPuon0O6VgEIXKAGKKEr3U0F0= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1691807787; a=rsa-sha256; cv=none; b=uWgehx9XgrdEE2nCCq0UcD6Z2BHt5U8pxv/HfP0btqzcZZrorGQ7/ZqkDTy7iRuH5OVcJQ KA251xMjf152TTAEB/B6Dy7Ff07kg4IU0EGSf+wdr7N0WmWwBjYiiKkwVSMxqH77Z+u5lK JmysQ+E3DYR06kSa7xJIh7eVu3hAV0w= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=EFOEq2BK; spf=pass (imf26.hostedemail.com: domain of yosryahmed@google.com designates 209.85.218.54 as permitted sender) smtp.mailfrom=yosryahmed@google.com; dmarc=pass (policy=reject) header.from=google.com Received: by mail-ej1-f54.google.com with SMTP id a640c23a62f3a-99c1f6f3884so352422466b.0 for ; Fri, 11 Aug 2023 19:36:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1691807786; x=1692412586; 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=Xtg+keftJRj1GAGPnWqMjYAi2LDgfBuNTq5Si7vTecY=; b=EFOEq2BK/3AphDg71atGtLZ3JNf6pD/7iQNGpkLyIQvAGsS+4+4SDj5EXwfcZuKpN9 A+kszuv1uvx3C1buqXecddsH+TNzr3nNv+/ciToEnvZYJMhXRN7Ig7OTiyTdiGQKjsz+ PxH7SdFaIg8DGqgE0GVTY+L2ezzu7vbB4GCjgFqW5+jEJwgkGezz9nifLOg7fBEhg1tQ JVzQodQQ4p5Dk3pR5ARWlMWQ3Vp9/ZAJduQ+pZ++7N8u9oacbRZGmvI13+4QrcmPS3qk iEFNSRzrzGb3SDnZ6+WSWTeMLfKh8Nb4YBVqq28kkXxyqT1XDUOrMQd2rGJFcvD29Q1R yXIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1691807786; x=1692412586; 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=Xtg+keftJRj1GAGPnWqMjYAi2LDgfBuNTq5Si7vTecY=; b=kcftdI4gHHr1p1pxI8T7njLV9cx1XIkKr58WbduV5T1uXdeC/KfEHZ3VllIipDPvUE Ph9CLohW507uwLLGyVEEa3YOjZoyElJ5DXnPrs6LNCBr7DsQqioOe1alWAgMYSCxmbdy WTLRAl5V+0bFWgiFpNe67oZoQBBekdpWFbiRMR1HbNIlbqknbIrYwhZYXHZpEnPq6igq V7+07Cm50pZo9CDBgasV03wCwIGhLuZAJuWBJFStDAmPArBw5INfHpRapE/YQlMdkGUY xUpbW/QLhvcOKrzNHGVs32UtGUgDDmh9zR6iDmdlm5nj2GTxV3WzaOwBW5cdm7z4aTE6 IEfA== X-Gm-Message-State: AOJu0Ywk7daupPFoE0uWQoM7wdr4pCuXdkVEK9DkqBaBDb0GomtPsXbd A/KP+QOg03oxiq19PxXZHDIaS6F/osVtb7EGpS0a2g== X-Google-Smtp-Source: AGHT+IGMWSN+c8sxymGLB2eGBzyRHqN3Nj8gg9iLZSl8EdNpkwkkZ6CXqWPC7ShChxyvlcU2yRKpXnHyvkAU+/55/yU= X-Received: by 2002:a17:906:13:b0:993:e9b8:90ec with SMTP id 19-20020a170906001300b00993e9b890ecmr3343614eja.22.1691807785763; Fri, 11 Aug 2023 19:36:25 -0700 (PDT) MIME-Version: 1.0 References: <20230809045810.1659356-1-yosryahmed@google.com> In-Reply-To: From: Yosry Ahmed Date: Fri, 11 Aug 2023 19:35:49 -0700 Message-ID: Subject: Re: [PATCH] mm: memcg: provide accurate stats for userspace reads To: Shakeel Butt Cc: Michal Hocko , Johannes Weiner , Roman Gushchin , Andrew Morton , Muchun Song , cgroups@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Stat-Signature: 5x3s1rrwdmr6xr5wp951ikx416975w8h X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 53656140013 X-Rspam-User: X-HE-Tag: 1691807787-637713 X-HE-Meta: U2FsdGVkX1/3smWC/b5TU9rIJARj09seaYKfec2lC8KqvJ4PZIrT7+JQ1FNLSCqdVlmt5dqkE8EOvFknFAa5rhCJYl7EQStkYKmdqs9lLhzEL0xpONzp+mRzDdpUW2kDGCvrLdghLvMxO78f4RQGe/h9XuBqkzGIYdVlKxJsl6KM2vAp14mWCiKSGu3A6jGb8powNAUjTv8f/xSAaPxUpg3GC4gux6xZC35CHXPF+KOWP+PECZzbu9RY7XUSNQ0m+jBQxPrPmVkLFMT2Z3WnxqTjIDy2byE6IRxuh5+GcTi4gWScLD4SzBwFR5zSeza13NWlXuJh74+zZOKhjz8LAtfhBWvvjKuUVEWgoLorUQxYHyv6ekblmI5VGP/yA6lYZ7LQ044zAfy8tjoK7oX7AAYnx4gZgZEp2saoT1I0CnN3ketZl9nAABkZJVWXo1Svqm9ysNEAitvXmuFARiuNtLLjkH/ARXChBfPTgKZ0D3xyZxWomM8uRu+BTUUJ9Bgqe1Zq3jFXX4duAs+Yw/PrHe0Zbp3pab4UjMKsHGUcO/PftDsl9vBCT1jTESTp5AlboFAkTY6vytHFbl+ncJoE8amsqgpNrg1FppXellBd6P6+ZL+qmlIWCDdvHWwBVh4VyufwIiE0hNVYp9DYP59KWBxe56EVy/HqPAcUWpXW5rcgyPYBmkZu7ndn7e3oL1C7Mz/58LPUFHvIF4m2ceJMW/fAl1PRlW2yvHdTrPWHHwe/TTxK8mbmlHn5BYumMxPGnCtx471WI/922Be4ne2ztA3PcuRTr5aUxkIWP6quQHvEK9FyAT9f/G9Tf5N1JWOvtu2u61ZEUG0jS8AWWdIp8azKIKTfRtuUhxrSoO3DIaZ0fLB7iHj5NldnWQMWsDeVXAnI7MVTgfOSERUyIQWlJb2BpOYxoiRZxAF3iHDwilR6PJhYsE1oHHJ95XZMCjHrXcCfU6ulumjD3SbKBFy 2kObtLjh m3TpFhPa0PNdqkVVlNyc4SspjJsSGwD/GBhhsUsLTmHAq5gzEy92z/Gm9QtUwh0G8zHMPFSjZiMIFZ8ob93uGgaSo77D933FgAmgD6jsCec9X19oUJ47AXj9X5NfGeugKL0gfrWpCnHYCy9eDLsqWi6PPsYgcsK82ria3iH1pc0hi9DuDtlP3jHcVO9Jx6NSB7F7Mv8/8BKTmlpCMnatkNAaguFy0F3W7QbezJ9XmUOf5/t+tYa5GGs4vOQ== 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: On Fri, Aug 11, 2023 at 7:29=E2=80=AFPM Shakeel Butt = wrote: > > On Fri, Aug 11, 2023 at 7:12=E2=80=AFPM Yosry Ahmed wrote: > > > [...] > > > > I am worried that writing to a stat for flushing then reading will > > increase the staleness window which we are trying to reduce here. > > Would it be acceptable to add a separate interface to explicitly read > > flushed stats without having to write first? If the distinction > > disappears in the future we can just short-circuit both interfaces. > > What is the acceptable staleness time window for your case? It is hard > to imagine that a write+read will always be worse than just a read. > Even the proposed patch can have an unintended and larger than > expected staleness window due to some processing on > return-to-userspace or some scheduling delay. Maybe I am worrying too much, we can just go for writing to memory.stat for explicit stats refresh. Do we still want to go with the mutex approach Michal suggested for do_flush_stats() to support either waiting for ongoing flushes (mutex_lock) or skipping (mutex_trylock)?