From patchwork Tue Apr 11 15:10:45 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Liam R. Howlett" X-Patchwork-Id: 13207728 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 81E4FC77B6F for ; Tue, 11 Apr 2023 15:11:41 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1BECB6B007E; Tue, 11 Apr 2023 11:11:41 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 170136B0080; Tue, 11 Apr 2023 11:11:41 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 00F75900002; Tue, 11 Apr 2023 11:11:40 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id E72706B007E for ; Tue, 11 Apr 2023 11:11:40 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id BEA081406C7 for ; Tue, 11 Apr 2023 15:11:40 +0000 (UTC) X-FDA: 80669449560.18.93C1EF0 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf21.hostedemail.com (Postfix) with ESMTP id 7A7301C001B for ; Tue, 11 Apr 2023 15:11:37 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-03-30 header.b=zt4XAEDB; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=cMEBvDma; spf=pass (imf21.hostedemail.com: domain of liam.howlett@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=liam.howlett@oracle.com; dmarc=pass (policy=none) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1681225897; a=rsa-sha256; cv=pass; b=gjKmM2bgA3fguq1uTpCfyoKCrFWJw6gvh4QmESTk6yC3CyKx1oXekSnu1Nva1/ndjs5INe TdzxHJ9IUGzHL1yFO8FHS9VTCS0KVcA8MPm+3HmXu92j60ObpEAdzWb8raUytQQGVVOUn4 S0VB4JoF8KqiXdRADXtfF0pC29rkQzs= ARC-Authentication-Results: i=2; imf21.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-03-30 header.b=zt4XAEDB; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=cMEBvDma; spf=pass (imf21.hostedemail.com: domain of liam.howlett@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=liam.howlett@oracle.com; dmarc=pass (policy=none) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681225897; 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=PDBjrlh+TRcUjgAfuYBeZMR5kawflhtWx3wWP5Go75U=; b=GTatW+rRUh7gKIQxm+9zPYDFebMLEhFoD9eddBZ6Cj34/GTRu4M6cmEa01yNrX7GnzmboF c2imDfta0UrcpOjprSfGd5bOTj0VXE4f+dOrGpdAg3Y+2b3l+tHsH70pkiT4SUaCsCIjY2 vZM6xCBXWKx0aFf8lLlvWdyd+ZB0SPM= Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 33BF1Vjc017666; Tue, 11 Apr 2023 15:11:34 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-03-30; bh=PDBjrlh+TRcUjgAfuYBeZMR5kawflhtWx3wWP5Go75U=; b=zt4XAEDBnVEWTynpnx97DZ+4ylr9Wel0ZljRe+WnAZFdMR4B48fwAvMmT9JFCj6s+P/l ucEADgct55u6mKi0m+3cSEJoRDZMWGniwxA1hjSkY7I/bEOniRniEiyxZeY+8R3qdo0n 3HjiI1VVo36cY8YSnYU2G0YNcPIPPvhdoVDY9M0ZntPF57M82GqAuueXUf6pNkjcLs12 CVmzXKOTKdwGFPb8YCSSJib5TKERcRsagUzKl1Gtkp/XLL1mtnAzyB7a391KCdjI7beB 2gypuTJb6O8uGWsi635ie3IQMXcZBQCfUcmD5ajj454OTrxgsRKmfaVQoTwb1jUjHFOZ ZQ== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3pu0bvwr61-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 11 Apr 2023 15:11:34 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 33BEUx3C010013; Tue, 11 Apr 2023 15:11:33 GMT Received: from nam12-mw2-obe.outbound.protection.outlook.com (mail-mw2nam12lp2048.outbound.protection.outlook.com [104.47.66.48]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3puw870rgt-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 11 Apr 2023 15:11:33 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gYPcxgtWbMhNpMI2n1zT3yGxYzBGQm9wTwTWadBEDwE55Vvq1+jVQL90pblXLWxgdvkoikdu9EZYOuDsHkIaQA73A4d/2jYRtxspN0Y0ekdD7hhwpPq43rINyBOyFQyyjomawEl7ROfMZztg6SntvSK1akYzxJcaCH9KUKLaU2bLv7lapVaTYkS2FxvTqov8ov3jH9Ek49X/+qS6rkE/m80GtS6BRYt9DnxNSOp/v3ndaZNuHn0L9R54fw+6Sm6MB2mc/KabcudXD7e99kPk+VahvGKpDuK6vItliDavHjaeYnnyfi7stLyBB8Qw2JAtociiKKGZcKWpfxf7N2ETGA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=PDBjrlh+TRcUjgAfuYBeZMR5kawflhtWx3wWP5Go75U=; b=c50Y4P/778kxbtKCACYg28hKpfJJtWa9CBluhSyF/R1aCiCYSOl312PO2DURq9WX3xL6LaBwuCqYUoqCdn4XDaOEQ0Drf0aV/DXmaT3fNibYk9vqjA21h9tl9mH1I9lWoE7hPSEdIUQ9z/rTrvzTgIX2QFuXH0IICJIlLyjxB6Zi8+JdEeUYfh25IYAxoXfPdm/JptBMz619CM6HE8VTGxCgfGgfmUGgCcykIPcQm+Xq8mwVJCAqdhFYKBkzzoiyzI/kRDec+CW0QFdINslZovzeRo0ccDmj7uWKqda1WXpWw+zh5/wvelvtswglTmPpa/3JcM2DUWiRRvX/ZmBWaA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PDBjrlh+TRcUjgAfuYBeZMR5kawflhtWx3wWP5Go75U=; b=cMEBvDmaRjgeBZ4t0a2zauL3sggH/4Ba33xJQMio/aRRoPk1Cw7qBiiO67Jjxhv/4k+4krCH4MJ0BBV1WF3QSDAdXEKwPyWyhSqKbfYrlyCBgOEFXZETzSYWNb6eqVVkxP9vW2mVrjJPvAG75nj5XotIBLNlYdR5RWc9MCsxmHE= Received: from SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) by CY5PR10MB6120.namprd10.prod.outlook.com (2603:10b6:930:34::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6156.27; Tue, 11 Apr 2023 15:11:30 +0000 Received: from SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::8bb9:2bb7:3930:b5da]) by SN6PR10MB3022.namprd10.prod.outlook.com ([fe80::8bb9:2bb7:3930:b5da%7]) with mapi id 15.20.6277.035; Tue, 11 Apr 2023 15:11:30 +0000 From: "Liam R. Howlett" 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 R . Howlett" , SeongJae Park Subject: [PATCH 6.1 04/14] maple_tree: fix handle of invalidated state in mas_wr_store_setup() Date: Tue, 11 Apr 2023 11:10:45 -0400 Message-Id: <20230411151055.2910579-5-Liam.Howlett@oracle.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230411151055.2910579-1-Liam.Howlett@oracle.com> References: <20230411151055.2910579-1-Liam.Howlett@oracle.com> X-ClientProxiedBy: YT4PR01CA0146.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:ac::14) To SN6PR10MB3022.namprd10.prod.outlook.com (2603:10b6:805:d8::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR10MB3022:EE_|CY5PR10MB6120:EE_ X-MS-Office365-Filtering-Correlation-Id: 454e380b-c764-4b7a-1017-08db3a9f07ad X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR10MB3022.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(396003)(376002)(136003)(366004)(346002)(451199021)(38100700002)(36756003)(86362001)(316002)(26005)(6506007)(8936002)(5660300002)(6512007)(186003)(41300700001)(478600001)(6666004)(1076003)(2906002)(66556008)(66946007)(54906003)(8676002)(6486002)(966005)(2616005)(83380400001)(4326008)(66476007);DIR:OUT;SFP:1101; X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 454e380b-c764-4b7a-1017-08db3a9f07ad X-MS-Exchange-CrossTenant-AuthSource: SN6PR10MB3022.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Apr 2023 15:11:30.7287 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: w3/WrxyfXldYwPOb/KCUgzBsytFG7UcQOQnPGFn60kEoYCYxPMvwG4kI+pgj7eaVRtjIjTnRuOoXAlQZjr+qDA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR10MB6120 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.942,Hydra:6.0.573,FMLib:17.11.170.22 definitions=2023-04-11_10,2023-04-11_02,2023-02-09_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 mlxlogscore=999 phishscore=0 mlxscore=0 malwarescore=0 suspectscore=0 bulkscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2303200000 definitions=main-2304110138 X-Proofpoint-GUID: jmBk5keeSC1_cc_XWtuJN3rKRZzm0NgA X-Proofpoint-ORIG-GUID: jmBk5keeSC1_cc_XWtuJN3rKRZzm0NgA X-Rspam-User: X-Rspamd-Queue-Id: 7A7301C001B X-Rspamd-Server: rspam01 X-Stat-Signature: ze1bntj49k3kfc9fin8sigcgmt1qj7zh X-HE-Tag: 1681225897-740718 X-HE-Meta: U2FsdGVkX18w0ibCER+liD9hWlXvLTD5jmKFOzMPvB6Galjcku7yiz6qXIl/glT2HLXroJDdlojCFHLu57mB6tbPO4ErrhA8z9akUMpv9SfOseyPorn8bok4OqQM7qijj93ujykMiP+2QveWUV7sxUPmPcUvufkfw857Dk2b5F1qJBVKurCieJcnAUozXPTTlxFdEB5D33xyxEIWDAcQoKAbJBlQ9SmNcgEe6vE7NtfWh+TC5FaSlgWo7TvsoiCCU7agaa/2DVU5gyG+V4WQI6iDcOUjGHsAAgaOgTdaUR20wpxiTBjQMSd9W6hEdAwAmC4jx+xoionVc2LaHRlw3OIyj+2OxF5ebJETKlQ+MFNh8YqxAKkfC6TiIAGIB6nZDbuuMTOR6idH3V9gLnUEbWmYGszBl4TvxO6WtmLBgySr8YwFs67EPFZi/eL5ZdB+xlw2l3PavMbIc5IDNeBAbYPsUAwRdlC47hMemwKVfXKC0J8olSiDL0mi5O5iBFTi9plOtfsi8v3pH7CqlELVTxxOEfGShQzHE1k9XXeeeWXgf7agaXQCzz6aaFNsmoz0jJ/W+eN7PL6jKPEljM4L6Tvgv6asCzaQGZvkeW06p4c02+33EelEEIKuW2bXQ4clI7bxhzJzOygJ6RQtUpChjhojr4RVCmbtuGreACnnBo6mdMA1hEp/8sohFHV8PBYEOs8i5HZKjK3YCkIks1H02+PuegO1iQO27ACPvc4SMzhQ0DNVqInX5cKjiIHYaNOhgdKRweJvxvwQx4Qbe4m2JI795e9Ntr/TTeGMPTKJ6O3fF0SJhSTsbjM13+C9zmWMnEYTPC3OSoSU8Uawqbmlg2IGdl7AVbqiJDqdkWwPytaUrjwDQErotW0E6gAgSOMW97QcdiSlFI8LFkXiefKl31bHX75WGgDcJLGYEJF1UbSLEC9YxYGnYDo6Ps3k62j58wibflz2xdu/fzzAnWA xs/lPPux tYKxcu9awdHhH+J7E/ZESDVsDpQYa+0cazVJmKLX4WWnLQ4dj4cyd2Qi2uVw6QqkDodb3Y8TfdIfKtZrW1ZxIa1Sdzll0Sd66N7PYHbhq8a6gvnN7HbNN59lDlE0NVQ7VSJyt0f25A5IWLgKCd4vkEnl599qQWPAl2SqDcQ8xa6hZzmLsN5CIVflVHRgoWfKfMr8zcQVEdOLm7D0VNVcPjquadRXyVxnQYvM5LueLq+aWzqW/BlAlnUsBeR1hQv/j+KfrsVRIIo+uaRUDXbzNV3o249xJ+Hcre6Nr8YBdTs3dNzy7tJIj4MXFqpJUMPbAvv9EQc8UThg1FTONM/KyONnU1tXz57GIsN7oJCLPWgesenhtn3oGE2XPsdY5UASG+CFqLfsKz7KHawJrdslBb2WyyMQt4AINstWGztmRYFE5lwp1KZ9UHUJyeeNl3taRv6w9FSdz2knCimzFBFQcQGFIXr8N9OHRWtUAqVKTEvNWyjZxD5WXiARbZJkJ/RrHS32ZSX0ZbJ3Q9xek9o719sEP6g== 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: From: "Liam R. Howlett" commit 1202700c3f8cc5f7e4646c3cf05ee6f7c8bc6ccf upstream. If an invalidated maple state is encountered during write, reset the maple state to MAS_START. This will result in a re-walk of the tree to the correct location for the write. Link: https://lore.kernel.org/all/20230107020126.1627-1-sj@kernel.org/ Link: https://lkml.kernel.org/r/20230120162650.984577-6-Liam.Howlett@oracle.com Cc: Fixes: 54a611b60590 ("Maple Tree: add new data structure") Signed-off-by: Liam R. Howlett Reported-by: SeongJae Park --- lib/maple_tree.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 819ba692940e..50604fecd476 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -5614,6 +5614,9 @@ static inline void mte_destroy_walk(struct maple_enode *enode, static void mas_wr_store_setup(struct ma_wr_state *wr_mas) { + if (unlikely(mas_is_paused(wr_mas->mas))) + mas_reset(wr_mas->mas); + if (!mas_is_start(wr_mas->mas)) { if (mas_is_none(wr_mas->mas)) { mas_reset(wr_mas->mas);