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 71ED7C77B71 for ; Wed, 12 Apr 2023 08:12:27 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 104FB900003; Wed, 12 Apr 2023 04:12:27 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 08CAE280001; Wed, 12 Apr 2023 04:12:27 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E7106900007; Wed, 12 Apr 2023 04:12:26 -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 D842D900003 for ; Wed, 12 Apr 2023 04:12:26 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id A17A8C0FA8 for ; Wed, 12 Apr 2023 08:12:26 +0000 (UTC) X-FDA: 80672021892.30.D327CEE Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf12.hostedemail.com (Postfix) with ESMTP id E88AF4000E for ; Wed, 12 Apr 2023 08:12:24 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=linuxfoundation.org header.s=korg header.b=Y0CYuDLj; spf=pass (imf12.hostedemail.com: domain of gregkh@linuxfoundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=gregkh@linuxfoundation.org; dmarc=pass (policy=none) header.from=linuxfoundation.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681287145; a=rsa-sha256; cv=none; b=rD7YWMePc6vgb+0RHdXd+E0c7G21buRDBdDTQvNEldCWySTaTc6svQxA+UYJ83x4KfII5c dnaCuXimuE0RahXIWlaJbVmYa3dfBhSBGErmcz40vSnOBel2b3Ao158Rnu5tO9bqYuSwe9 +lGi9pIV9jd/ZOnwXYqenGsYZ5Bdtfw= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=linuxfoundation.org header.s=korg header.b=Y0CYuDLj; spf=pass (imf12.hostedemail.com: domain of gregkh@linuxfoundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=gregkh@linuxfoundation.org; dmarc=pass (policy=none) header.from=linuxfoundation.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681287145; 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:dkim-signature; bh=Jbw/ugGyAkg8T15b+mg3eJs+B+BEK1x7f6YhG9ehkCA=; b=zH2CfEzQjdaXaxB1m/aRXvyAfXC5DsCqyt7CMwLw7q8ZDCO0nsU0z2mnQ3gDnn9+FORCvx hVFvU5Ao03h3yoHGfKh8VwIKva35233k+QtmDmeiem9qrREfShRB4R2ImlTE9ItAiehjZL mWIrsm7+UcqpMO5dD0wd6zUquXjE9Yg= Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 2743462F4F; Wed, 12 Apr 2023 08:12:24 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 39254C433EF; Wed, 12 Apr 2023 08:12:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1681287143; bh=AxAFAnYpSRfRNYvCMbm7TEstlc/Ylt2MHSaNfM7dKcg=; h=Subject:To:Cc:From:Date:In-Reply-To:From; b=Y0CYuDLjJ2JVPvpLSHvZqMZ2zpNJjnfm/H0uazjLs/Jru9e46TI0BStoWOracWop9 TJsjSo9NYwYxKd3qKkNp7coRIc0JUus/E7nxwRc/szubS28RP9XyvV7aRzf8RMDcDf wH9pgwbZoOpxIqe7QIH2csWQ+/6sRqBt/9OljPcQ= Subject: Patch "maple_tree: detect dead nodes in mas_start()" has been added to the 6.2-stable tree To: Liam.Howlett@Oracle.com,Liam.Howlett@oracle.com,gregkh@linuxfoundation.org,linux-mm@kvack.org,maple-tree@lists.infradead.org Cc: From: Date: Wed, 12 Apr 2023 10:12:08 +0200 In-Reply-To: <20230411151055.2910579-10-Liam.Howlett@oracle.com> Message-ID: <2023041207-freely-keg-714a@gregkh> MIME-Version: 1.0 Content-Type: text/plain; charset=ANSI_X3.4-1968 Content-Transfer-Encoding: 8bit X-stable: commit X-Patchwork-Hint: ignore X-Rspam-User: X-Rspamd-Queue-Id: E88AF4000E X-Rspamd-Server: rspam01 X-Stat-Signature: skuzn6ngbigmhdgnfpwam5tx5mga8ot6 X-HE-Tag: 1681287144-103891 X-HE-Meta: U2FsdGVkX1+RheQk9s+1PU6dc/i83YmWvkovTF/5Tkqap9GlsvDy0uYag/ezy/If99V3jwqjf3OexQF3N6tIWkU6DJUKjQoTNIR0mYrGYAeBpEkyZQiEUZfUzyD/x+ridQL4WnS0XNCu9oNBf64ACKgAmo7UT9TaiGiSsnhxONOWb8p8tOPCINFEkVAKgJBMmpvXrNEF4GsyJZw9Sc0w9xe67thS4TaOjQiB7UX9WqfgI8mIK6UgU0s0Rs600kHOtmryS+VL5IV1Y1rOXcjfmCiHd+qngTjcNy3ATDT6kmteYChLWXqaBIUOqEyhe0uoGJQ1jEmbveawm7pI2dM/F4F9HVVCXdDm1ewaEnu+p6EUPkk9z6dz/geT0WI/YrVxkbVLjuk+LoHyKg7/mpXRgp/4HTh3lC7DcHLyAPzfomFRjNj/EeVhxxYKvCYlqO83WWJ3j3TV6Ty93X+NZLR5WFLP7XtgvIynlbwCSqI711vikLEX2MCKk5MMJ6QuDwRoz343bUDfMQIG3f7lOsYPyUvV/yP0KJzmK/Vg+SQLKqy3LWQwoQEb6jpoUfc9ZKeskgEjKCccn+SNCHbI8lzpXCV4Kj4ky7xiDmZ8ewzYmzulavr5B5kva1GLu/1GJRmRPcYmzX6MWebLs9i6rwyWXOybUHojXi4p7vWVQxo3L22OLImA32HZ4VMPNzORXsvBJg+nZD0DmpANv0Hvi+K8IXAMRb7zmb9FGpLouWoONGjPCsFx+bf2UxbbZ/h/J000q3+/FuU2pj4RxnLSUvsp0WfiF+fCRjItA1Utv6P3fxbX+UJu3QFrpZUQKUlYRXUPGcapaIWkd11NsYZQzsWW3j0b+wjNzBImQxtyuWv5T/JI9aPjYgxjvyQu6JFi5VLXuolqyY2Qcv+wcLv6b2O4hbvfGd5mU04qjifMr74O7RNUl+mT23o2iQbSxOq9HxEGtTOm2ze+aF6Ll/hyw0b box6nx98 N64JIrOCVLE9u4wJetcdzQwMQMRUfqu9JL3Gsu7Bd7UfqrrDWhbdTycX8hGPkPCoDtYwv/KNoajA5RsIA8Opl0Sq2+Ew1bkooIGQlVSvbPYre8mECL0dkSW114c7DjGBmW0WhYuScwS2z/YNbkxTCGLCh7pLAMUfnYdm40A+KeXn9upYx1oG9+oRwUTpnAlXwSVIsZYftGPdjVFfbvM7JmWbsms0giYnyKyzpiKj2FotKb62JL9mB9+/Ad2+EgciGTageiHJuO6Z5XkWYuP+vDw85Y/UgX6fL0JcL3W7Poa60uuo1I+ZIZv8yR8zG/LWkbR1ydk3+wX/LcxNNRucaWbVRfp9uUoC4G2k6O6An0xGy33BkThErK3RsaE+kTQLdM6OrrjkGPMhEFBHL1TVbkmrACL2zq7qQEBIilZtC6fOnbMlzCarUZ/gmFi6c2bsfYhBT3VVw/tzrZsrhWjIGdZtUp2LA+vCSKgrMRvehiM/TeJoVjTWHjsh5PWietRZU7QweQDhe8YPH0sHlUMzaNNXkO20uNZ6mQWsNBt4HDOz8/oLVnguGuCtxYyUFaU3MiIdFLeOaUZloX2DygBZCK7ALmwKpwsl4Tc2tNmQ/i4BEoJCHrkyHsRbINrh0T0+u33mmCMol+pz1MeLzQpIPGJORgA== 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: This is a note to let you know that I've just added the patch titled maple_tree: detect dead nodes in mas_start() to the 6.2-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: maple_tree-detect-dead-nodes-in-mas_start.patch and it can be found in the queue-6.2 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let know about it. >From stable-owner@vger.kernel.org Tue Apr 11 17:13:23 2023 From: "Liam R. Howlett" Date: Tue, 11 Apr 2023 11:10:50 -0400 Subject: maple_tree: detect dead nodes in mas_start() To: Greg Kroah-Hartman , stable@vger.kernel.org Cc: maple-tree@lists.infradead.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, "Liam R. Howlett" , Stable@vger.kernel.org, Liam Howlett Message-ID: <20230411151055.2910579-10-Liam.Howlett@oracle.com> From: "Liam R. Howlett" commit a7b92d59c885018cb7bb88539892278e4fd64b29 upstream. When initially starting a search, the root node may already be in the process of being replaced in RCU mode. Detect and restart the walk if this is the case. This is necessary for RCU mode of the maple tree. Link: https://lkml.kernel.org/r/20230227173632.3292573-3-surenb@google.com Cc: Fixes: 54a611b60590 ("Maple Tree: add new data structure") Signed-off-by: Liam Howlett Signed-off-by: Greg Kroah-Hartman --- lib/maple_tree.c | 4 ++++ 1 file changed, 4 insertions(+) --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -1357,12 +1357,16 @@ static inline struct maple_enode *mas_st mas->max = ULONG_MAX; mas->depth = 0; +retry: root = mas_root(mas); /* Tree with nodes */ if (likely(xa_is_node(root))) { mas->depth = 1; mas->node = mte_safe_root(root); mas->offset = 0; + if (mte_dead_node(mas->node)) + goto retry; + return NULL; } Patches currently in stable-queue which might be from stable-owner@vger.kernel.org are queue-6.2/maple_tree-fix-potential-rcu-issue.patch queue-6.2/maple_tree-add-smp_rmb-to-dead-node-detection.patch queue-6.2/maple_tree-add-rcu-lock-checking-to-rcu-callback-functions.patch queue-6.2/maple_tree-fix-handle-of-invalidated-state-in-mas_wr_store_setup.patch queue-6.2/maple_tree-reduce-user-error-potential.patch queue-6.2/maple_tree-fix-mas_prev-and-mas_find-state-handling.patch queue-6.2/maple_tree-remove-gfp_zero-from-kmem_cache_alloc-and-kmem_cache_alloc_bulk.patch queue-6.2/maple_tree-be-more-cautious-about-dead-nodes.patch queue-6.2/mm-enable-maple-tree-rcu-mode-by-default.patch queue-6.2/maple_tree-detect-dead-nodes-in-mas_start.patch queue-6.2/maple_tree-fix-freeing-of-nodes-in-rcu-mode.patch queue-6.2/maple_tree-remove-extra-smp_wmb-from-mas_dead_leaves.patch queue-6.2/maple_tree-refine-ma_state-init-from-mas_start.patch