From patchwork Tue Oct 15 12:07:45 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wei Yang X-Patchwork-Id: 13836273 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 D63D2CFC293 for ; Tue, 15 Oct 2024 12:08:28 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D563C6B008A; Tue, 15 Oct 2024 08:08:27 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D06F36B0093; Tue, 15 Oct 2024 08:08:27 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B31BB6B0095; Tue, 15 Oct 2024 08:08:27 -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 8FDCC6B008A for ; Tue, 15 Oct 2024 08:08:27 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 7F2781C1C1C for ; Tue, 15 Oct 2024 12:08:17 +0000 (UTC) X-FDA: 82675713918.01.4EF21F1 Received: from mail-ej1-f46.google.com (mail-ej1-f46.google.com [209.85.218.46]) by imf18.hostedemail.com (Postfix) with ESMTP id 777A81C000F for ; Tue, 15 Oct 2024 12:08:22 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=SR64SlAA; spf=pass (imf18.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.218.46 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=1728994032; a=rsa-sha256; cv=none; b=GSpRIOHocinaMGldEXqeNrPOBmMUfckHmOdxkNjinkUl1ldogNjzwH0a/FoWP81PMjiXNh 0dltOThNYUvaCNTu+cVxNWkRNh6q6TPqSKrC+ymcHXjlh+XeMfsBiBTtk+02SzALrRMSPr T65AeGQOOVhft8WcJiqH7CpVlJtucHQ= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=SR64SlAA; spf=pass (imf18.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.218.46 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=1728994032; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:content-type: content-transfer-encoding:in-reply-to:in-reply-to: references:references:dkim-signature; bh=eOy6sa0JUKy3KlU46mCym0FVccJKf96OTpW1c8cg+ag=; b=cXSSUfj8ET22Xxcu6upC0UOrP/D1tK4a8LDmxbSN2nrg+Ptp8L28RvUVyCY3hHbWpjLuTQ IDeGB9uO3wb3QFND4THrMrIenLee3GDO+8RpcctNkI/wf8jGwE/Zz8eUNx7VudqqAm7aT0 0u11ZMLHfdjIU5VxSoWEReAR49GuNKA= Received: by mail-ej1-f46.google.com with SMTP id a640c23a62f3a-a9a0ef5179dso294163766b.1 for ; Tue, 15 Oct 2024 05:08:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728994104; x=1729598904; darn=kvack.org; h=references:in-reply-to:message-id:date:subject:cc:to:from:from:to :cc:subject:date:message-id:reply-to; bh=eOy6sa0JUKy3KlU46mCym0FVccJKf96OTpW1c8cg+ag=; b=SR64SlAA7Tf/d4GUQ1uGVRiB4Kvf7x3SE7pvauxnPrXqRd8rCpm5yq1nqgVXDj7Ao3 4LUMGPIp8mSuM7+1hoWCoJ4SxlBsISR8Jtpajfu6FCE4PFtb6s0AXF2QQKn035sguYQC BOBwVTYiN3lqcS8wSu/ci51p5DL/8RDgthEUkTTtcaBnRC10dZx3xM8fMIs0oYCmdIJg H/gAVzBU6u4Hj/MnUDrAybDlw4Sf450Ezdzk6CfmGtI84vJZp801dmzMKjEnNnLSc1y0 JQ5SpjWfOi8/18Ad3X/XxKmKliNyrxLP0PYs3ND/QjHh8DB9ST6laMo2nuBrKLZCBaJq luxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728994104; x=1729598904; h=references:in-reply-to:message-id:date:subject:cc:to:from :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=eOy6sa0JUKy3KlU46mCym0FVccJKf96OTpW1c8cg+ag=; b=X5j46qSIZpvCU87pNo7DTQ6F1PsLZwFYQb6AkUL3sNKjjgRJpCgcIrphxuXJLDkdfO wgxgd3aV+6rx8EMXZKVlXNHkA1iEZA7/D00rZjpH0t8q4B+0bRF7HK+EceDnNzteIJLx OldXJwIBWH6Sew2XWr/zU6TfxGh78yChu3LWDTQo21Rfudf6vAmHvSLnO7DsmRgJEVFQ hb3v7FBJd7BF8vtfJm5GWHy0JXOaYOUdhvl9yOr9jxQox5WYR/Jf+5IaZi8khIp4j2BV O6t/Pzuw0AeJVGhF2Wh0G0FwmtsbiCEm4YzY597C1EjgE22Hbvlu3lUbUEdsqIx9iDL4 tjUQ== X-Forwarded-Encrypted: i=1; AJvYcCXGcc0SdM2pwa6dkKxPmUWgUTB5SrGoFlSo6sUzhZC83rlClM6XYrxIqSs0LnvrYYv5cErWaAowFA==@kvack.org X-Gm-Message-State: AOJu0YxWN7vJ4aV3r4gru6yImEq9BosFWXPxEFVuE+rOrD6eEbPZi2Zi HV4Ku0FcABOPNHhxhnKSlfUmo+8f0tazM38SpzxhrdiMIa4FeXD1 X-Google-Smtp-Source: AGHT+IEH9XhQHdJ/krX11vRGwX/SKR+QFZFrFWuZ6at1VFIQb07zwgJ8oLaGlbNm6uGocCe11GtgUA== X-Received: by 2002:a17:907:c14:b0:a99:7539:2458 with SMTP id a640c23a62f3a-a99b95ee9f8mr1035182466b.65.1728994103731; Tue, 15 Oct 2024 05:08:23 -0700 (PDT) Received: from localhost ([185.92.221.13]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a9a297495easm63987566b.59.2024.10.15.05.08.22 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Tue, 15 Oct 2024 05:08:22 -0700 (PDT) From: Wei Yang To: akpm@linux-foundation.org, Liam.Howlett@oracle.com Cc: maple-tree@lists.infradead.org, linux-mm@kvack.org, Wei Yang , "Liam R . Howlett" , Sidhartha Kumar , Lorenzo Stoakes Subject: [PATCH v2 2/3] maple_tree: total is not changed for nomem_one case Date: Tue, 15 Oct 2024 12:07:45 +0000 Message-Id: <20241015120746.15850-3-richard.weiyang@gmail.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20241015120746.15850-1-richard.weiyang@gmail.com> References: <20241015120746.15850-1-richard.weiyang@gmail.com> X-Stat-Signature: m9y31mchittcrpiimmpunhsggy6wyg34 X-Rspamd-Queue-Id: 777A81C000F X-Rspam-User: X-Rspamd-Server: rspam10 X-HE-Tag: 1728994102-593453 X-HE-Meta: U2FsdGVkX1/aYovHLLtS6KjWWGr1cE9CvOuGWhaC1PTlwG0Xu+6mx1oeOR2xa9mP/5gFiBV1MmjVl/S2F4z9vReinZiJwlrBJEBJKXagSgsH7cEbZNsq+VJW99bQRKnuAxPBvYCH7tJql+kkw/oDbA17t/R5I0otSYEkIltstIjjdYv914rTk1UorzCTfQ5+KG1qGR5yp06W57tPREGdgRFUSzQrMVtTOm7HRvEfCI7+SM/P0DrdK8HcKElk67yYRSLBrh6VftIw2ZB+1iicqv+NSfmdhIK6y1iPYpwxgD7AacSj33Fdo6NxiXJj/nz2jndxd06qogvh1BW0wlQshTN2XfKl8ZX0y2WQFHPr/lK3zciohqnt8VpZeQ0boN09/Dm1WSQ6JeLIICsWWzd6zvm/x+M5HMtRA+TXV3u7GODkeodffzEWO6x6HIUKHhBmbTgf9163cmhl6l57ufsPwK+nsQba0hJG7VZ32QdQN/37DHoWSSMK0rj7p1TRMtXjFR6CvWWA3mpf/a3148C6jRwR+z/F6X5MiKh2GykhLeGYDFxkMsje96+NHLDvpSipHss7+qqVN4iAAwDE4DlcrJP5rxNB10BeMoIp3BwB3Plxm1B+eiN0hJfakR2lIaDQoC89QTZTMyP8S6rhCJ6z2nKGrXu9ede6UiDs/NwHg/0D39Xx7AylS/Y3BhERVsrHIcgPNDfhl2mNZsBVkWg8aV33hQpDI2hI3TREvSNYaHRVP1qT/uDYa64h3Z5gySWoZj+p4JxF0jgNArHNr/HfvKaoHePnoAF4fRoT0Hx29TZ+QnUTVMqw/IF5oldfHHAf15yLlYwrSh/qfH9NZrAOvNgagK8fPVoQt57DuecHzONaPCIwmHKxAZJHkF4P5GhbotEq63PhJRgELjGX0nTesiuOxw7zSt1hOmXYeKTv+rVVI8GKJr4f88AjdnpcC/G+u8BjwON0Ehx5O7zSlHo raSI3F1f wFgURHDWK9GtGl3Oidm1yRDs8cCVUz6yPDeqaqEQA6zIj/eeamoU04SP8KEVxDaRITiigUd6Fl00gc+XyqMAUiJhkTVgMmIKd56gkTBmNDaOA9JK9z1s5/0uVXrJZ8C0tV30LDGRWiQHoJCIGy2KVI6LUa6unaejQiX1ARZADl0s6x3XNZpNW3q8L9DrLY9dlFSP+ndlcgP326T/FFTZh0z9lYBiNvVChkpAWVzSTEjYBs7Gffod5HMnFTXV7WzB4cwOlggVpzyOGt/2iHMzUfKzzDt5REAhh/Jzv5R/TwfpK+aNCSyndk7ZZTBxEKGVuAi5UmoOx3kmlK/oFkavmH16EFEB9cjH9AcT94FmG3L6pgAdq5zPtTOK2UUmRXOLCNoCxlUW5OotahZi1Qm/IqVBYwhWkhVnlCYOHw0HkavLSgk0AfuFYGiro8TqKqqJYbQfwvDOtYSTxyR5R3Wd2HxsQKDRg/E2A0oXP+TufV5e2+lQOSSLQCqi2oDhdHVAFS+Mv X-Bogosity: Ham, tests=bogofilter, spamicity=0.000124, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: If it jumps to nomem_one, the total allocated number is not changed. So we don't need to adjust it. For the nomem_bulk case, we know there is a valid mas->alloc. So we don't need to do the check. Signed-off-by: Wei Yang CC: Liam R. Howlett CC: Sidhartha Kumar CC: Lorenzo Stoakes Reviewed-by: Liam R. Howlett --- lib/maple_tree.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 31899e853c1e..ab398461754b 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -1279,10 +1279,9 @@ static inline void mas_alloc_nodes(struct ma_state *mas, gfp_t gfp) nomem_bulk: /* Clean up potential freed allocations on bulk failure */ memset(slots, 0, max_req * sizeof(unsigned long)); + mas->alloc->total = allocated; nomem_one: mas_set_alloc_req(mas, requested); - if (mas->alloc && !(((unsigned long)mas->alloc & 0x1))) - mas->alloc->total = allocated; mas_set_err(mas, -ENOMEM); }