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 A5131CA1009 for ; Fri, 30 Aug 2024 19:04:58 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E6C7B6B01AB; Fri, 30 Aug 2024 15:04:57 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id DCE8C6B01AE; Fri, 30 Aug 2024 15:04:57 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C6EB96B01B1; Fri, 30 Aug 2024 15:04:57 -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 8D7EE6B01AB for ; Fri, 30 Aug 2024 15:04:57 -0400 (EDT) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 18B14C0408 for ; Fri, 30 Aug 2024 19:04:57 +0000 (UTC) X-FDA: 82509839034.05.B2B55E1 Received: from mail-oi1-f175.google.com (mail-oi1-f175.google.com [209.85.167.175]) by imf02.hostedemail.com (Postfix) with ESMTP id 3D4B58001C for ; Fri, 30 Aug 2024 19:04:55 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=viEx1Ug+; spf=pass (imf02.hostedemail.com: domain of yuzhao@google.com designates 209.85.167.175 as permitted sender) smtp.mailfrom=yuzhao@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=1725044606; 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=2+oed5X3ICd5fPpoJH1QwaNbZnd+/2NqwMirUoUrwaQ=; b=JR6FtqHOeG6YOthG14rtSkrd2l0HsfDLf2m/UN1joiZ9f0u1bLzX7XTi/fMK/x3Axr5lmV VuCEpykvgHFG10fwMFdDf9HnoyorZ6RMQaik0OAFlCGU93FxlT5kWN18KbpryyCLflZWFi b1BX7qC9k68jTf/VEZ7OJ+m05KrKgSI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1725044606; a=rsa-sha256; cv=none; b=nEFhF+ZLD3nNbYk/sNL61ioa6OYk1qC3UYFInBR/qkLGzWd9ErL55UvJhZVTmd6Ac4WNLv CYcmnM9NHlCBwcDVkqbceaj0h7MzPG4Q4rulpWbl7FmS0zbP+Zj1voRq+u9sbcw5FqYMcs LhaIt2aoe4gV60/J2E0juYsxW6Q3JNk= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=viEx1Ug+; spf=pass (imf02.hostedemail.com: domain of yuzhao@google.com designates 209.85.167.175 as permitted sender) smtp.mailfrom=yuzhao@google.com; dmarc=pass (policy=reject) header.from=google.com Received: by mail-oi1-f175.google.com with SMTP id 5614622812f47-3df04cf5135so1138376b6e.1 for ; Fri, 30 Aug 2024 12:04:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1725044694; x=1725649494; 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=2+oed5X3ICd5fPpoJH1QwaNbZnd+/2NqwMirUoUrwaQ=; b=viEx1Ug+qhBOzqGWzXy6s8h19gRWYFMVkhx1wKmsigQ7gTnJ6tGvQz1INQ0RxjyC6h pJuLakmFNvG/s+nngHHEkhZLCcceh6klD4oz5DlE1z7ynanonMoB5gBL9C3E46AZImnB mzYw1kwXS9+kYtnZF/ftuPL+n6eJY8g2+L1B81CpyLVHKZANqNlw7HYiSWW6Q4Tt2VED 9gv4MhgJ+GXF/E/jqqkYvlKTZa4GOpwSHeuJwxD6aIrvxfoaXl6AmSyg/hTf6HwsrqLO iEFCfEwVuk+6XeETHt6rh0P67U1n6+gFx9E8kRNcWXHSQwH1sOomQMEwOTkSOn3HPgCa B03g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725044694; x=1725649494; 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=2+oed5X3ICd5fPpoJH1QwaNbZnd+/2NqwMirUoUrwaQ=; b=DpWrxwNfL8cS/6/ceP0qN4STygvkHzMka70gytaoRFB5ywsnIkHqyRpfTgcbs10EZx 2Q95UqmfbM9g6IyG9U5lyOPqvHjjrnDPWbAk4lZsYd3fHt/qKEuaqw1SCFGjvWIw4FlB a9D9Em9TLopDe9D5aT6UVizVrwZmseIeZvXMqWbvU/8cmqfennva8nX+e44f92CdjKLf y+wy3wLyyZQq5caKzSYXLduH1gp/p1UnMnQ5Zdyt5PDwihTivS/8QDzCS9v5HGhKmDbq U8yQuC9l9llBiXO05H0G6xQ5Hl1tlIhQWVqmHyCAZ50YWQBDBBDTl0MIo+wntvh3Id6X MAIw== X-Forwarded-Encrypted: i=1; AJvYcCWCoCAStVJbYpbF9R+QV+jxZE34nIcPZh14s6QiKQ7m4VKw0bhSPsWFAlXIc3PldtMAwVfm/XIJyg==@kvack.org X-Gm-Message-State: AOJu0YxmVD6FHflioT7RPy81tglrA5cpDUGvBY29ArXQXvn0ENlbec9L quTHkLVMZkJZDk80/m6Zx3/maovjM3FKNxnZNp2pUZwiwHWv8EzybSgSpgkQ/SoLZdSulrevfe1 V+hbQ20hSjGLqnvxHrDf96+VgbzZa/fUpLcqC X-Google-Smtp-Source: AGHT+IHX9aU8yWEDpT+grmlscohk5Q8oTiUVyrd49xn2AheCv+N+Z7EnIH9qwE1WwtSRS8d6p9mAAqZrO4lBWzUbTTs= X-Received: by 2002:a05:6808:4c0e:b0:3d9:2601:891c with SMTP id 5614622812f47-3df05dbe483mr6485390b6e.30.1725044693783; Fri, 30 Aug 2024 12:04:53 -0700 (PDT) MIME-Version: 1.0 References: <20240827230753.2073580-1-kinseyho@google.com> <20240827230753.2073580-5-kinseyho@google.com> <56d42242-37fe-b94f-d3cb-00673f1e5efb@google.com> In-Reply-To: From: Yu Zhao Date: Fri, 30 Aug 2024 13:04:17 -0600 Message-ID: Subject: Re: [PATCH mm-unstable v3 4/5] mm: restart if multiple traversals raced To: Kinsey Ho Cc: Andrew Morton , Hugh Dickins , linux-mm@kvack.org, linux-kernel@vger.kernel.org, cgroups@vger.kernel.org, Yosry Ahmed , Roman Gushchin , Johannes Weiner , Michal Hocko , Shakeel Butt , Muchun Song , Tejun Heo , Zefan Li , mkoutny@suse.com, baolin.wang@linux.alibaba.com, tjmercier@google.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 3D4B58001C X-Stat-Signature: bruaxh4ho1x3bm767da9x1hs8koyaae6 X-Rspamd-Server: rspam09 X-Rspam-User: X-HE-Tag: 1725044695-148482 X-HE-Meta: U2FsdGVkX187GIqVtLJbKD8rNnCToAa5Lnby6mY9oBjUa4klYWPaO42SVYiP72uRkf7/hY9VwIjNucfcI4hFqwZPFR5QdQwNHC9EwuVAkJPeHyPTFzAWys+ZvZhRygJ7fALCo8FFQ+KSe5hBsBQy1LjpdOKly2AjBxKmuaGJi2P4wtPaUE791f79hVU6kh5aMWjJ/tdAqCj4ZXen3ZSOPGxkj0OzJB1HdLBZ8ddt4MXT5qQUB/VHdcEAivHF1MYpNVpKIAgRu0ozITBJ+qHSK9N4GTU4q3UpyIgxFbCMs+5pZduxz2584fiIcJPJX3KmKvIvolZfMH+E3RqMcpgOPuhTAjnxwgzkRW2To/semZeg1eD/L+2RiXIAn2zqhJncST/iW+w2jdsWstN+XrIYr7maDOWt5/yZwOCsPKdlOgVKFg1c8F3maGVoibGSllZc7UDLHkons7kXjhyahexqzuzo9HgxPLrzfqbrpfKS/94mQU8uAwShTV0iLRs9145IuB0WWdZIn/tZJWabVG7ZHiswNTwDWYdgbDVccFUWGEnavvuBM03r0bFep1mxsTirmOCLCH3vYR0Y3/TKtOp7q3knokyL/PdwvFAycrgGwr7Ec8BwcAWP5x+2wF5kXV+Fnbl1FcrLU1BNL0KeQuEECF2j+H6hN0XAcmEnQxw0kNFJ0e+DPT5eqEUxrG6bGDg9ouWPyw36riuBNENC4OTvECZ7OQyqicgSvuX3U9RN91UnURdGFePd0QPMOR4IFI+1u1M3heym/H5EkcpM3BB6+OMPjnCGPffjA7Qj09+oL22YYGqQoWIbBehgu1bVtKN0bgH/fKCLaR917vD0xZ3eLkv0WvvnsPGljnf+ND5cumFpsUCMBrgqkPcWo0yzDFxnQVT1wuc6HpMmydjyrj+c6IGC9p1g26xt7N6+ikV8aeoFYX3XPxAiQ77NhT8/WIGMqhFwEf/2RpyKvjT93KL iJME63Q9 TmALbwjx0NDEFdNFtLLxIvqWTOuUGZMeshFmukqJ6azt3lH6sjS5GtbwGXlJryAZSVHjmqKiZw07rKTFtLElMOA0bcIgqBqCP4ytvQ3gYzj38JtQ20qdiNSZPjy3HNeyitbjd3UoTojwrjVg4OgSdNsJFrzSs7FTChueiD4caqKHfxQ4B5PFnpOEvyIJT+WNF/fNfxiMc7K4h2x4h4UiT2mlnUCDYBo+pZyE9UUiuuF70OqtfYuzRBGYhiP8ScsR8oz5ZNEf+gWFur+VO2PS7IvWoOdpw2lENXyiu/hHbg3diNE9Q02x8Pqa33w== 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 Fri, Aug 30, 2024 at 11:45=E2=80=AFAM Kinsey Ho wr= ote: > > On Fri, Aug 30, 2024 at 3:04=E2=80=AFAM Hugh Dickins w= rote: > > > > mm-unstable commit 954dd0848c61 needs the fix below to be merged in; > > but the commit after it (the 5/5) then renames "memcg" to "next", > > so that one has to be adjusted too. > > > > [PATCH] mm: restart if multiple traversals raced: fix > > > > mem_cgroup_iter() reset memcg to NULL before the goto restart, so that > > goto out_unlock does not then return an ungotten memcg, causing oopses > > on stale memcg in many places (often in memcg_rstat_updated()). > > > > Signed-off-by: Hugh Dickins > > --- > > mm/memcontrol.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > > index 6f66ac0ad4f0..dd82dd1e1f0a 100644 > > --- a/mm/memcontrol.c > > +++ b/mm/memcontrol.c > > @@ -1049,6 +1049,7 @@ struct mem_cgroup *mem_cgroup_iter(struct mem_cgr= oup *root, > > if (cmpxchg(&iter->position, pos, memcg) !=3D pos) { > > if (css && css !=3D &root->css) > > css_put(css); > > + memcg =3D NULL; > > goto restart; > > } > > > > -- > > 2.35.3 > > Hi Andrew, > > Would you prefer that I resend the series with Hugh's fix inserted? Please send a new version to get this properly fixed, preferably move the initialization of `memcg` from the declaration to right below `restart`, and also add the following footers: Reported-by: syzbot+e099d407346c45275ce9@syzkaller.appspotmail.com Closes: https://lore.kernel.org/000000000000817cf10620e20d33@google.com/