From patchwork Tue Apr 25 11:05:08 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Zhang X-Patchwork-Id: 13223206 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 1D125C77B61 for ; Tue, 25 Apr 2023 11:05:48 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B052B6B007E; Tue, 25 Apr 2023 07:05:47 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id AB5036B0080; Tue, 25 Apr 2023 07:05:47 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 97CFC6B0081; Tue, 25 Apr 2023 07:05:47 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 884646B007E for ; Tue, 25 Apr 2023 07:05:47 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 6594D40377 for ; Tue, 25 Apr 2023 11:05:47 +0000 (UTC) X-FDA: 80719633134.18.243B5AA Received: from mail-pf1-f172.google.com (mail-pf1-f172.google.com [209.85.210.172]) by imf23.hostedemail.com (Postfix) with ESMTP id 862E414000E for ; Tue, 25 Apr 2023 11:05:45 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=kRDCATpM; spf=pass (imf23.hostedemail.com: domain of zhangpeng.00@bytedance.com designates 209.85.210.172 as permitted sender) smtp.mailfrom=zhangpeng.00@bytedance.com; dmarc=pass (policy=quarantine) header.from=bytedance.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1682420745; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=Uhpet9rFKKSbNY/rO+kxNiiukorlrEmSdc9GCeX7BVQ=; b=e6KrgH/MT8sg4f1giN8OxOAfoYubCBci6wQ4IHqrsuWVwjRHAxGNXWi3ZCCPKtd1y2Rwk+ DhZVPmy4iaopMa/WEbcr+ltBoUpSOd/MBxISFRkav2mEu8aJ8PfkVLtW2I8vNOo2uugEL7 jq6glpm8WhBpVpR4dAouJnpZ7UJ/m3g= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=kRDCATpM; spf=pass (imf23.hostedemail.com: domain of zhangpeng.00@bytedance.com designates 209.85.210.172 as permitted sender) smtp.mailfrom=zhangpeng.00@bytedance.com; dmarc=pass (policy=quarantine) header.from=bytedance.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1682420745; a=rsa-sha256; cv=none; b=N0KdUBNfhebwzxRMkqvisNbo0SpSLlXksKDwAWHmoVFa3Q4OR/qDGfVh50Ym1PJ2b2JT3M S/ScJ5bhpqTkSZDCdpMk9phwn8h/NsSsOWfaut6+kT6ClsdJ+2Y9+dGudL6xJ8NHTsKmKe jiNEh9Sn5Bi0IUNtgRIvki9cZ6RZneA= Received: by mail-pf1-f172.google.com with SMTP id d2e1a72fcca58-63b51fd2972so4490772b3a.3 for ; Tue, 25 Apr 2023 04:05:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1682420744; x=1685012744; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Uhpet9rFKKSbNY/rO+kxNiiukorlrEmSdc9GCeX7BVQ=; b=kRDCATpMOFuEPi6tXPsOXLZpTjhUGeNU5eTbsWS/STvZypZztv1c2WheEeS2ZqnMTC kpd1b3dOaUmTKyXaj+z9CyulDGeZtQwWDI4jrkMX22GZUDqIUkdI7glYxD+jmHZth1/E i0VsY7k71T7rtEZsPr0RtaW/qwJYwCCfnFrPYFo8E6rV4sJwqA/Wvf75YGIZtKQjP8gN tXmWXV7YanL+BeCwrwhNMS0CbG66ajylBFYygIuyhlINtNPvpz2OfsBg7buDGPs6x44o m5vs7IxRJ7cIHDTdtX9SfH9SC0bt7BMfYOLlFrjKRITZjTGinAox/LUHikSJzJkWe5Qz ySKg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1682420744; x=1685012744; h=content-transfer-encoding:mime-version: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=Uhpet9rFKKSbNY/rO+kxNiiukorlrEmSdc9GCeX7BVQ=; b=AOp5X20akF2xu0PJrOHcmIN/qW0pAOSlNq9FrfszKQ/kqOEqIYBadIBrNmL0VSm3B9 04GQGgfziwveRCDUQM9Sgoo2vLosqz+KB7igC1f4n9zYvCy9oh7JbimDdI58Or4SwZ/X PhjdizInk9fT3eJfui2pcvAo2zMwNgBM6QNMMOTRl4jj8XQVDY6hIAonCvxfkuyTpYgz VW8Hcd8gOydqjHMosER58LXVOqqsHzn9xRmOcNFz7vbbfWovHREAG+REeJugzRqBs/I9 0rLa8QtcbsJr+BuBNciT6aPPef4Nn3+vs467usDyXiqYzu0ilHZjhbqJU4mRPahHnyrq I/hw== X-Gm-Message-State: AAQBX9ecfr45oq3hO+B1JQxMqLzgV9yC0nMEIgI+xC3ZatxuMo/FFI3C kZ+L23wSWl5lps7hKmmXV2UUEw== X-Google-Smtp-Source: AKy350bb8ivezPwkMZceREpecMXYm1R01Tbms6afrN+M43oKICEeAjPUTaLy3P5Yg3AEbvNizSRdwA== X-Received: by 2002:a05:6a21:998d:b0:f1:ff77:4a32 with SMTP id ve13-20020a056a21998d00b000f1ff774a32mr23584687pzb.9.1682420744512; Tue, 25 Apr 2023 04:05:44 -0700 (PDT) Received: from GL4FX4PXWL.bytedance.net ([139.177.225.236]) by smtp.gmail.com with ESMTPSA id u3-20020a056a00158300b0063f3aac78b9sm4422169pfk.79.2023.04.25.04.05.41 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 25 Apr 2023 04:05:44 -0700 (PDT) From: Peng Zhang To: Liam.Howlett@oracle.com Cc: akpm@linux-foundation.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org, Peng Zhang Subject: [PATCH 6/9] maple_tree: Remove a confusing check Date: Tue, 25 Apr 2023 19:05:08 +0800 Message-Id: <20230425110511.11680-7-zhangpeng.00@bytedance.com> X-Mailer: git-send-email 2.37.0 (Apple Git-136) In-Reply-To: <20230425110511.11680-1-zhangpeng.00@bytedance.com> References: <20230425110511.11680-1-zhangpeng.00@bytedance.com> MIME-Version: 1.0 X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 862E414000E X-Stat-Signature: q7o1scibdupp7qro39bqa4jjyn154mqk X-HE-Tag: 1682420745-22925 X-HE-Meta: U2FsdGVkX19AUDqsVjktej3HJskILrcUrEUkCLsg1fQpEOkNPSCd/YqZ9J/4C1IbMY6bRBpatU4EWCSvTWhmU1HNWmGsqyFuSSbMeaZL93AlKjQL0+LjBAotNL18xWlSHCkPSqVth9uWYVbiTm92+Iy/1bVS/ndzacHavsSgjyavokrsPOqn0UZcyzzUxu3BIaQULXsIdQwpvvoQScgsK+emv3nJUcx4YA3dti2hOtiDDqpWeFJq4TTER9bOR1bomOo3MsV6sGrj08sLdLixGiVwcIONPSvFqokZIFLBGc+6i5hz5t+iJyZFC+8fJ6KWpSCzFk+xzj0eNrbj3bL7uVLsySB4AmNMUv4xAAKis9tevdaXgpUL7VecUi/qRM6GdEX5DrNwcEMiZzjpRteqPm4giSDKnLXynJW04q18lDt19tErKJBtzFOt1X01EVuniX5OD7Y07r6MCSxD+wnHPW1FCrUYfcFKsIUdEbPp1B69Zn/43BHGFLIRuX8eDYemPh1VeOSyaLxI/EoPmH99clLBFWVudM8S9piKRBR+xYWHNM1ZKnKUO73YrzUFrerRMpoy2JSWr9tCVb3WaeXrXaFEVVSNs4sMhkanGpTqmprOPYqUimO9v8Hpnk09Jx/ENEQpkn9XAl4VjdSK8w9s7E2mgTwv0xHx00ObLHIBtsLgS0IijoYDqgBjOv1VnW2QNk3VEhvgNrXuyY1QrPGFUyyJ10nIBGB7JWw6e9puXW2g+UPdNj0FTr0QqH5IsdnnDkjTT8VfFmHWzL6m17gm0AuLaxl8lyqUYw5zrPHF6prB4PS6Yr0JJmdxkcn3BmrOVSsSjv7BuhOZm+iNikId1R8ZDsTM/JwvuIJvw7Iv91oU6oXCrq4Ewb/yBC+u9oFWJV/Up3CyZGKXHfYg9Dt6pkba8LfZ+gpiMYbXxomLvDInJNP3z9l/KAwmKdETg3vC8mY6ztjKTrS+K0Xx0yj /2lc3PXq xGnzo4Z5XKTqifJSZNiD45sqwOWTsJ/Fk8nmIKND/KfHbfJYgN0ld1XbipLbE545X1WcS2E4vM0O4wTBTrYn+k9Wk9V13ZWRKo1gEOXr9Llr84ZeS+9Pt/L8GHi1WUkaDpYKbLkHMRGqpXVHV3v6jHsao7No5jK0kzgmx2zQlTUbnGiVJHSIWW/4HrGR375FQO9RQKuMBO78eXVbgXuip9b1AbMwnWWv/HvzuXaEZ8fNwW2u8jYkUt9aA6LJgpkKlYhnmWGreopk4DGgs3RrQN/ytqyfyzdC0Sury/4/ZyhAbUQEqNuLbx59E/lInKd+o5UIGNERk8F+GjoBvM8gMw3mk6w8QywOHYA+NYqQ2LefGpMqMiZpEHQA8k9OmXl9md4UEzPcvhIud4jfaP/J0lr5NMErhmdos8QqjYaOL/eUo4b7hgErKjr+CCzJ3ux15zTdGUVl2MxwHRf0= 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: After this loop, we are at the last slot of a node. Our purpose is to find an entry that is not NULL, but the pivot is checked here, delete it, and change to mas_logical_pivot() to get the pivot. Finally, only check whether the entry is NULL. Why is this confusing? If the pivot is equal to 0, but if the entry is not NULL at this time, it will return NULL because of the pivot, but it should not do this, the entry is valid. Signed-off-by: Peng Zhang --- lib/maple_tree.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 7f4b2ce84ce61..83441ef2e1f57 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -4742,17 +4742,13 @@ static inline void *mas_next_nentry(struct ma_state *mas, return NULL; } - pivot = mas_safe_pivot(mas, pivots, mas->offset, type); + pivot = mas_logical_pivot(mas, pivots, mas->offset, type); entry = mas_slot(mas, slots, mas->offset); if (ma_dead_node(node)) return NULL; - if (!pivot) - return NULL; - if (!entry) return NULL; - found: mas->last = pivot; return entry;