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 A25D9C0219D for ; Tue, 11 Feb 2025 08:02:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C77726B0092; Tue, 11 Feb 2025 03:02:34 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id C27C86B0093; Tue, 11 Feb 2025 03:02:34 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id AC9666B0095; Tue, 11 Feb 2025 03:02:34 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 8F0C66B0092 for ; Tue, 11 Feb 2025 03:02:34 -0500 (EST) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id D79F0C12FF for ; Tue, 11 Feb 2025 08:02:33 +0000 (UTC) X-FDA: 83106921786.08.3EC5BFE Received: from mail-ej1-f51.google.com (mail-ej1-f51.google.com [209.85.218.51]) by imf17.hostedemail.com (Postfix) with ESMTP id C46414001E for ; Tue, 11 Feb 2025 08:02:31 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=UMRuC7Mb; spf=pass (imf17.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.218.51 as permitted sender) smtp.mailfrom=richard.weiyang@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1739260951; h=from:from:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=UulHRkncfBJlwEHJcIxh4DZr+wbaEhNJx/3hrb0+NYA=; b=s6f9Nbwy5LQJ+szoBel1wLmrRNEoLWShiPtk6XuIigAB1lSJql6q4R2AaQ49BuF8Cv5CZw nduYTDhASoPDGDroD0+/QorBaIysyPVdf+L291Z9K2W1WVgnom1zOGvqm7or6Mw8ZdiM2Z JpWFwRJlkPqSnBp663/5vDDvXQjChoU= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=UMRuC7Mb; spf=pass (imf17.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.218.51 as permitted sender) smtp.mailfrom=richard.weiyang@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1739260951; a=rsa-sha256; cv=none; b=Eof4IKfCRRAs0bUAEA5J+E/q17V3Cl23w7sWUrKzTbK7sAfiMHfNJE/fqPMh7bS3gcRoVw zAi/prDbEZRq83ibPbLZC/frY/dScyTdZLuRh0gxxZ+C5RX8f/JI5/Pv/NqXvSVDzGHK3T PrgK8tkpK0KS0e9NAUSGLYH3921jDAE= Received: by mail-ej1-f51.google.com with SMTP id a640c23a62f3a-aaf900cc7fbso871887466b.3 for ; Tue, 11 Feb 2025 00:02:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739260950; x=1739865750; darn=kvack.org; h=user-agent:in-reply-to:content-disposition:mime-version:references :reply-to:message-id:subject:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=UulHRkncfBJlwEHJcIxh4DZr+wbaEhNJx/3hrb0+NYA=; b=UMRuC7MbvoI8MenWpWQPyKAzpWSQ7xw0+qBnEabCUJXcOLD11co5hx06Hvn462xMh/ 5XSLJ1HSLVqkgtmx7ZzwOzwkPsatcOpRefQIGVfpziNNVKs/P155xnrtscBf1Wl6Zwvp itFVJRc18Tac9e2Lz0GL1D0JjVLHqjwpgSDLk5MbkUlQ/wukDL2QRmco2yTRKLv9qAEq HJndymekHHC3tbgOoBFeC0OLYSxGPmP2QPaLIHVC3lyonM/WiMZUprFDJ3XI8QVwEIID SRYZ358HqqrV0lGIF5df61v1tDiNAWwP2EBLdfpR5Wj2xGR3LDw1BK5CE6F/ViGCsE4s r4fg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739260950; x=1739865750; h=user-agent:in-reply-to:content-disposition:mime-version:references :reply-to:message-id:subject:to:from:date:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=UulHRkncfBJlwEHJcIxh4DZr+wbaEhNJx/3hrb0+NYA=; b=aqk9zoFyU9P2L6qU6EfZ22DHN28DOnmRIr2Psl2712ioDxUE8RJQXouwRFlf5FLlD8 QLjEPSWE02vBjlBiRENqm+GDqkipdj6ZevMLl8rZA6VOMyltWZvK19Y1954011q5/jNx WrHuyj3BuV/DEfyKGKn7cjrO5rbc1J1qguPRhvA2qJrP+70JC9H1tOEFn90+FWm3A4ra 9ntUQ5t9PKOdHF4MX+zvpLH7red+SaZ6nr6VxbRgOdeA7HzxsQXSaGrd3TASN9Q4y0Ir hrz2ejfAM7o/eDWos0z/y5PQH8fgN/J8scJyZ3okwIOWolN5P9sCExKCUyKpvWZZgkA3 pIvw== X-Forwarded-Encrypted: i=1; AJvYcCVZ664kh2J5g00Sq8eSloci6UjskikN1ySQ38HGv140Fchz5oZslyHnW8fIk4Fil2tMvJkhlOopYw==@kvack.org X-Gm-Message-State: AOJu0Yy/LLb3el+EP1OHwNWHk0ytdETHK9hH7vag1n6aFxG3G29Zukb/ OHAu6ExMCkMNRrfT/MIg2UXJcXubJi9Gm3IsYi0URI1cU1bXZlDx X-Gm-Gg: ASbGncs88pf6p/7ZhaBHSATtwi3qYSMSh7TMdHZpEHOHqjfYcOTYC8zbOtWz8bImJ7+ xu0sLsFYhQnHvsdopkhN0uG+P5MI95F5D2gk575UNCR28yTRGyPFyD4GH8+LBdr4hpyO8BeNCcg LAApNjy7qobha7cmVfyYTFaGj0i6OaPO8W3YpWoZvGV6fCVUOtDBpDT5RdNgyouEdOzqrYHjg9B GXMw7r2U0qOxvpL5VKYlXblHIb4ceZhvtSD3GMWmB91l2TU59eq6pzQcq5+H+pHsJ+6b3GRnlX/ wmiBWq55IcyMsyM= X-Google-Smtp-Source: AGHT+IHf6RAvPIoS5bMGovIGld43NvkR8a3eZ9bIzdJQrkee9Pb3QKdmoOp9Qg5PME2I0cGfMLQQKg== X-Received: by 2002:a17:907:96a4:b0:ab7:d5e3:cbac with SMTP id a640c23a62f3a-ab7d5e3ccedmr364704366b.54.1739260949653; Tue, 11 Feb 2025 00:02:29 -0800 (PST) Received: from localhost ([185.92.221.13]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ab779832909sm967287166b.49.2025.02.11.00.02.28 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Tue, 11 Feb 2025 00:02:29 -0800 (PST) Date: Tue, 11 Feb 2025 08:02:27 +0000 From: Wei Yang To: "Liam R. Howlett" , Wei Yang , akpm@linux-foundation.org, maple-tree@lists.infradead.org, linux-mm@kvack.org Subject: Re: [PATCH 3/3] maple_tree: assert retrieving new value on a tree with only root node Message-ID: <20250211080227.obocjediyeef7ef4@master> Reply-To: Wei Yang References: <20250208011852.31434-1-richard.weiyang@gmail.com> <20250208011852.31434-4-richard.weiyang@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20170113 (1.7.2) X-Rspam-User: X-Stat-Signature: 94468a4ezdbmexu9aj9jya7iz5faduh4 X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: C46414001E X-HE-Tag: 1739260951-351037 X-HE-Meta: U2FsdGVkX19hH8AzQSY1XXNxcmM81faVj6Nr3JCxtJwVIlaCh65hATYiIbwkNKCVbwb9rKd7YvC0rDBYADm414ICN2Ibj9YABBHa6XV4c/UNwF5smBx1cyXmESR7xgjgUN7EBLiexmUmdnl30gO0HxCpNQH6mAEIfKv/Z5vhJMww+GqNIzTozCTwzTetWckrDQ8ORrsQvPAmqXIBdp9Gb9I2J+VNsolRLzD5qkOLdRjoq8KmlI4QnqRFvNFYIRxtdmtJXR4iNITO3mP6vpz7EypeqWvtQGL17h0VE3WtxKUPq3HM3mYrbNhaDzDxoPOCHyzVScOWMHxqMav4EGTM0e76M1BIDWQ0dHSGcE43xnVM6usFHeJzDokQehuGohPFjTapE/pWWNOIAHjt9vgeZWcMB+Bhhb6R0RoSNUJAiHobkwGSOwEUvUH6Vw63U9Tn/Xyvxq8vdCiXokKAaK0mBpQdlV6LxCAM7Pm3+ydLKDXM0T9q4awxS4NR81ofkLX7nqHYiSvF0Q1S76hrdhtk/Q0Cjgq3MwCr4vliF7KKctBR7mAnBxUzEAD+4QxsQX5v9IdETXArKBvTDKbRANcmn9dNFAtzrjBUO2ahewkDvnXx3bDeB4OI1JHpDkmXSyGUlhXwHEcJ/nRALVlBuIJMQZh8hIXR6X3tI/4O2HCHn+n0s76Tnu5frnDnRYdGM1g/wdaZ4pTLK1lHM8TW2M0pwrmVH0PiRlv5MEMiTUFTvOE3j3DXtSFTXWkeW6Pu0gi0gNNhs0e9G1c3KTF0CuZlpHjhc5PFW+927deNnpp19Pxni18QkFnKkMEbC/5R5gV91rIk6fX++JVvKDWW9vi18fpRKPrcvKYoHDefJYsNsUPm8yjAAiDQj2QXNIiTAmsEQn1ngrJvixm0NYY2UxFJiHZjpDtMM6Biky8c3sM5KbDyr55Z7AqxKrakVW9x1QzIqH9+8YDccON6J5NIQhh QFd+6zlU NW6LKN2KwsbdgHn9OVxL7oNo/SfqBjidnGmE3SdbqNHUsG3gIVHU/vfjECt4ewn8+9utd7igXQZFsBhZU2VYbCx3QYbQleRifkBgH5UjwxZegYqtyHxkT31HXIcx1zl0CmxQyts3yvBXbIQw7f4TnGTto/DGBoC4wVe9+kr0sHdt5W7Ui98Fj9PI8bCLsQ3xjP64EMcV3PARs3lkQjoKQTJZsoFBHtXvApqjMyM3H7NQDbd84l0o7Cxyythn/TUxL0ZiB8mF60QcWy5GVuWbo9DbAoeN29F9sqZA4wcXaU8ItGkTgGRGHBE/TnjdO9tO7wXvmzLxHe4TSr3U2qW3affzFusIhYOLIFAoxbRUCXrLNINIQQHRw+73xMAJmWBihhSbhNnb8OwxnJfn5RGSN3/ZYARrM11Z4QrPoDqC4vbusOT3gDa2vq+BzDoC/QeJNYnLJiI0DtBC7llxhxjEt+zC0XpysooMc0eIwlTLtFAP7poWFpWQHrtv+fP+DINlJTmFnOBGOjo+Snh82uoOCy6vJWCTvH/dkSjUVrjviSqOcKtfxQRzOQmwtKMn3QDePO+ZRPt8w8OGgoPhATJRkStJfVgmznTk/ad2TMngZrqOZttuU+6CSsc5fm5vnjmiRgnSBwNc5Ee713MKzr/ZXtSAr5POjJ8Vk0+Jy8Ie641IxAEIhBcz0GrnfR9t7EMBuP0Bg3p9w8DcxGqdcZ3q/dFbaFMpHojPYrlUCuKMxQtRA+2wNhoE78LzEZZHKgleJeGbg 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 Mon, Feb 10, 2025 at 09:18:53AM -0500, Liam R. Howlett wrote: >* Wei Yang [250207 20:26]: >> Original code may get a stall value when overwriting the whole range on a > ^^^^^- stale value. I thought you were saying > it was stalling which did not make sense. > I want to say we don't get the new value as we expect. How about: Original code may not get the new value after overwriting the whole range on a maple tree with only root node. >> maple tree with only root node. The reason is we didn't set the only >> root node dead during destroy. >> >> Add a test case to verify this is not recreated. >> >> Signed-off-by: Wei Yang >> CC: Liam R. Howlett >> --- >> tools/testing/radix-tree/maple.c | 24 ++++++++++++++++++++++++ >> 1 file changed, 24 insertions(+) >> >> diff --git a/tools/testing/radix-tree/maple.c b/tools/testing/radix-tree/maple.c >> index bc30050227fd..1e293e4d856d 100644 >> --- a/tools/testing/radix-tree/maple.c >> +++ b/tools/testing/radix-tree/maple.c >> @@ -35256,6 +35256,30 @@ static noinline void __init check_rcu_simulated(struct maple_tree *mt) >> MT_BUG_ON(mt, mas_prev(&mas_reader, 0) != xa_mk_value(val)); >> rcu_read_unlock(); >> >> + /* Clear out tree & create one with only root node */ >> + mas_lock(&mas_writer); >> + mas_set_range(&mas_writer, 0, ULONG_MAX); >> + mas_store_gfp(&mas_writer, NULL, GFP_KERNEL); >> + mas_set_range(&mas_writer, 0, 0); >> + for (i = 0; i <= 5; i++) { >> + mas_writer.index = i * 10; >> + mas_writer.last = i * 10 + 5; >> + mas_store_gfp(&mas_writer, xa_mk_value(i), GFP_KERNEL); >> + } >> + mas_unlock(&mas_writer); >> + target = 10; >> + mas_set_range(&mas_reader, target, target); >> + rcu_read_lock(); >> + MT_BUG_ON(mt, mas_walk(&mas_reader) != xa_mk_value(target/10)); >> + >> + /* Overwrite the whole range */ >> + mas_lock(&mas_writer); >> + mas_set_range(&mas_writer, 0, ULONG_MAX); >> + mas_store_gfp(&mas_writer, xa_mk_value(val), GFP_KERNEL); >> + mas_unlock(&mas_writer); >> + MT_BUG_ON(mt, mas_walk(&mas_reader) != xa_mk_value(val)); >> + rcu_read_unlock(); >> + >> rcu_unregister_thread(); >> } >> >> -- >> 2.34.1 >> -- Wei Yang Help you, Help me