From patchwork Mon Mar 10 07:49:38 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wei Yang X-Patchwork-Id: 14009368 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 1DEF6C282DE for ; Mon, 10 Mar 2025 07:50:10 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id AA4C0280004; Mon, 10 Mar 2025 03:49:55 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id A2FA0280009; Mon, 10 Mar 2025 03:49:55 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 80D74280004; Mon, 10 Mar 2025 03:49:55 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 4BF02280009 for ; Mon, 10 Mar 2025 03:49:55 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id CF90BA8F1D for ; Mon, 10 Mar 2025 07:49:56 +0000 (UTC) X-FDA: 83204867592.26.FFC77CE Received: from mail-ej1-f50.google.com (mail-ej1-f50.google.com [209.85.218.50]) by imf18.hostedemail.com (Postfix) with ESMTP id 01D661C0011 for ; Mon, 10 Mar 2025 07:49:54 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=iv2FIw8j; spf=pass (imf18.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.218.50 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=1741592995; 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=s8D9wIHCQO6GSqINDUAZTXSIDPk3aVq+Xtx/mUavzJg=; b=o3B7a5Um+yIERrpUPAn1SVgcm+tpH2Ot8lHMQiOKqiCvRJ044f4LPBT4QpULx0o39EVpfs XRLPXNPE2EYbmpVX/jxX7Mn0YCowVZi2wCilgA5necms4UAGtUPT9JZ1QeQxzI95zeJfDa NFR22BOyNXgDs43ojh2B0w8DpOFmUR8= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1741592995; a=rsa-sha256; cv=none; b=qYYgbtNjCK2IOXk4vzTUA0CBsYeOnACVSKlgY3MCg2rhUsX+7OdvKtSZNd6ZtaDo2+NGFm rS+njZGQFkNy20m0PdvvXHfbY2y4Uk5XcUMWLOnDOqT+T2knutbeyXhYdot8RANWPO0kDu n8fOz1k3KJ/vKZC5oVGGze8XIbrIgrE= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=iv2FIw8j; spf=pass (imf18.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.218.50 as permitted sender) smtp.mailfrom=richard.weiyang@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-ej1-f50.google.com with SMTP id a640c23a62f3a-abbb12bea54so720461466b.0 for ; Mon, 10 Mar 2025 00:49:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741592993; x=1742197793; 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=s8D9wIHCQO6GSqINDUAZTXSIDPk3aVq+Xtx/mUavzJg=; b=iv2FIw8jbkAi+53J4RM5t2qMHZsZWYTsqxT1XFzsPMzkurzKalfdhoqAWlsogkhoxi KwbL4OY4NenLUXYT/iJSMGn9/9BRYGkygXHNnyYzX/MwaJrf7KBMTHO+qXrg6I1bHXoy pOBBmP3fMRf6k3RnYy2FZerdr4InLilrmoNLeoerhjgL0zKvAjM9XeTxyzdu6IiNeqFp tQqN5kLCwR6rsEDVflQZaSBZmGyMAb6jlM8vbCXbEoFau7VTBzSaWHl7hOAPwais6sSB xMPcrNtjfb2k368NQk/he5sD207xrgcqx1QtDdXG52HplVlAdMdBzm8vQvBg1Pp5CXWg oVCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741592993; x=1742197793; 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=s8D9wIHCQO6GSqINDUAZTXSIDPk3aVq+Xtx/mUavzJg=; b=gs1Ca9tKCDlfFWUAka7JPYhx7nrG986FF77nCG2oi6brlg1U7k0FVCVIu8kRemmNr/ 2rqeXPbHSBu74TWMPuBiFjmqtGFlsY2HRHl4fkAMI+tuLMUcGzFysPU5wWDOXVc556nV TS5ilwjCO1ffohCu3TFtGUXZapal9rEkV/JrEWKryWwlK2FCqvlANNTiICBhYaaHwPUy ZXz8jN8Tg0HhZS4CG2MQrAEcmyoGoas8TXGSiXn5QFTkw+T7BVCxbB3vN8QVv78kgIu/ 0bVLFNrDuY5mE6T+B6WehKFJuM5I8uwXuk4BHP5oLKMXf+SRtJ0EVHYg4rTI4IVzLIZP Iq9w== X-Forwarded-Encrypted: i=1; AJvYcCUK+WEzOl9eDjHWhJg1Zhmu1MCcXVn8CAcQTFjchrwKjA7qL+vTnaTtZMV3jXLo08dlPY7z5wT4kA==@kvack.org X-Gm-Message-State: AOJu0YwulkDhjnnKwE1eAjeLUd42VsHvJylpXFTroN8ymnQeyEGE+KeP onnpKeF95VAScWPScDIcHjlvdc9k3BdQQH6QEHUzeBn5/12G5rUG X-Gm-Gg: ASbGnctWkZofdaYcMi72icVrfhrLQwzl4K9Ii4pocBV9vgmPEw66gp2WLqvZt1bpY7x DWLIALbRda+n8JboUIDGu+mpye3dvviEYQGnNvKF5VpxBcVGmXJ5Ns5JJHgxa1lagAp1QaSbijo d65BqcMrso7/4Tfodv13vuER8HH9K1f35sCzukntob0rR1lQcqJOHLmmzXRHrYa8P6jvnMIumvF 841YVKVfYGFgW2Xu/wPgWv61oVPlKc/DCHXOO6fLmYQVnDXhUyxa9Kjyvyh1OyXTAbhIwIX5h3l DPJ2ePFw2pI+0d2g5Ucs+2JYTlYd3k6rSdwlbBbXDGwT X-Google-Smtp-Source: AGHT+IFrPHGfFhLzZZ2ZsP+CQCgsVS7dZOADqpC8IaFPNkNUrl4sZ/mvJahbHteKvA/REkfmKEmExQ== X-Received: by 2002:a17:907:7156:b0:ac2:26a6:fed5 with SMTP id a640c23a62f3a-ac252703847mr1186103866b.29.1741592993480; Mon, 10 Mar 2025 00:49:53 -0700 (PDT) Received: from localhost ([185.92.221.13]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac2901427f2sm231579666b.151.2025.03.10.00.49.52 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Mon, 10 Mar 2025 00:49:53 -0700 (PDT) From: Wei Yang To: akpm@linux-foundation.org Cc: willy@infradead.org, michel@lespinasse.org, linux-mm@kvack.org, Wei Yang , Jason Gunthorpe Subject: [Patch v2 7/7] lib/interval_tree: fix the comment of interval_tree_span_iter_next_gap() Date: Mon, 10 Mar 2025 07:49:38 +0000 Message-Id: <20250310074938.26756-8-richard.weiyang@gmail.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20250310074938.26756-1-richard.weiyang@gmail.com> References: <20250310074938.26756-1-richard.weiyang@gmail.com> X-Rspam-User: X-Rspamd-Queue-Id: 01D661C0011 X-Stat-Signature: xcy8rmnqpomkksmewtyprhwnhkx974s6 X-Rspamd-Server: rspam10 X-HE-Tag: 1741592994-789529 X-HE-Meta: U2FsdGVkX1/MoKUMq71CtGlvkK43DxO+qUZ7UTq2jCQkPIqFOYUMP4iWni4TmMkNxlPEgZMn+EOa2dy0PtGTXpJ44ywZ7uyYfrYeUVYtqStpeVlIE33fKDPLyK0cO59MYa2FSYdkZtFuCbWReaLWxQIDiRKfodnQUdE9rfw65lu9pwjBx7L8at9EvUtTX1RHpx8BbXCCna8aptnrEwikcErDtmYIDUe8eSZuBTBWcXG6Eqy6d0y1kRnRLqWMUP4L5wNTx3QRh/nkExEno+2r0nJWCsKJByTua90hMwt+XDGpx4m3z+5yk6CvpsAkCVkM4rdcVFwEaFcePaNoQ80mFCpgi/lJycEiImd2Hd8rnzMhbf2VNzBOy36M/TJrsqh9TEc0l1KtChBteyHa1Hic35W6uuusu8D1aZkxrmu2UWqMH0ulAM4K3ilcV1MJ2XhzJ/RgYor/lyhaOJunreY+ibyLqqQaE3vZbu5jKeKVM+Rvq9vTa4gUvgsUsgw8xxzfJVYDoXwSexMAR/HHlTl345v7kaAWJobxe/YGrtGW8NtVRXFwC9hKj4ifIVLLshPX040puuVtfloOmSdn/62jzU12qnCtkZkXFDKE6VmhMyTMRe5Opir0OnsQabqbQfO06Z7RBNO2PGU+P6KQmmDo/kNe0VLOE7YS8GKNk6Olkw5zEonnV+D4UdQ+qBP8GETAPAstErU6yKNsYk/58w6stzzUnWkU81scwb05J5/uh+9AE/tgMuxV0qwMHZoSuvnsQiEA45m0bHKHMoTq5tQU5yqHACXvMWUBN/YRKoGOeSXJLhryKwmB1Tre6KfPx0QI212KjNdX9khDfxqbKfuHMUXEUZimomnEubb+x03dpI9jL5lhBfGbVUBRFU47MGv0bOnkyNJeqttTmx3AYadckjloDIPr+svO+rv+Cdwm7aXGwEelUwT659evlKhjDXk0XL5TAzU6quWvgxjO6Ei osEe0JDX zbQdMx60amKK2zHZZuIW0Arp9yO1oKKim2vVvRRvQVmVLnrfTED+mBO4vfzvmTWFgSHGKEHobTWTJx20SRuzFYIdkBuJmHBInfCPLuKLK10d+sBy68t6UggIsAQvOI0guhKOrDz2RgMtBNXtPTfBhFxhPPtJpsM77QMkWZahMDq1C9jjaWnYurzfOyU6XxIpG/XcptTYQHhoWuTQlEREGAte9SKLBq0zL0El8atsRnjZTTDI8GAb4lDsTey2QWOgBC11hGQjPMplsZjAdTkRJheZ4ZfQY8PjXTq3UuOdLfeQEKgEKCv9vlaWeEq8zxfFVWbtq5+YsGUE3S+5QvE+iKLcvmj8Y0Kl52YaswbHMX2fcGZaz3gPppPfMHhXytI9jVUYdxW/JH1l4Gg/5DaATVN9BBl2jDXSodZCmWnZK+3XCoEOvsRbPDPRddldlKmxnSYm+W6SNERpTIQIUeVpdxY9eCdHAiFoRHRGzyCcXSvBr8xDFlNFP+x9pmWh9KJq1gnYLYkvloavtLCHliOK2cE7V5p57II5Rp+uYqgLpXoqxbprD5cfB1nC2fl5dGvoToKWVehYqzxd2TlestB/VlP2g1XCD7SCdpP0c6+EpJAEZjIT9VAI02U/2U11hMri46UHS7+8Phh5bEP5eS8HhnvTEcfrp7E4joGl64jCokQOj5LkitaWjRlrNvOvuEbiQuGlD3nUJ/CKyZopjPqA+U8yKt0eW7MG/sOod 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: The comment of interval_tree_span_iter_next_gap() is not exact, nodes[1] is not always !NULL. There are threes cases here. If there is an interior hole, the statement is correct. If there is a tailing hole or the contiguous used range span to the end, nodes[1] is NULL. Signed-off-by: Wei Yang CC: Matthew Wilcox CC: Michel Lespinasse CC: Jason Gunthorpe Reviewed-by: Jason Gunthorpe --- v2: add the missing "of" in comment --- lib/interval_tree.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/lib/interval_tree.c b/lib/interval_tree.c index 3412737ff365..324766e9bf63 100644 --- a/lib/interval_tree.c +++ b/lib/interval_tree.c @@ -20,9 +20,15 @@ EXPORT_SYMBOL_GPL(interval_tree_iter_next); /* * Roll nodes[1] into nodes[0] by advancing nodes[1] to the end of a contiguous * span of nodes. This makes nodes[0]->last the end of that contiguous used span - * indexes that started at the original nodes[1]->start. nodes[1] is now the - * first node starting the next used span. A hole span is between nodes[0]->last - * and nodes[1]->start. nodes[1] must be !NULL. + * of indexes that started at the original nodes[1]->start. + * + * If there is an interior hole, nodes[1] is now the first node starting the + * next used span. A hole span is between nodes[0]->last and nodes[1]->start. + * + * If there is a tailing hole, nodes[1] is now NULL. A hole span is between + * nodes[0]->last and last_index. + * + * If the contiguous used range span to last_index, nodes[1] is set to NULL. */ static void interval_tree_span_iter_next_gap(struct interval_tree_span_iter *state)