From patchwork Sat Aug 5 11:07:04 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kemeng Shi X-Patchwork-Id: 13342477 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 706A0C00528 for ; Sat, 5 Aug 2023 03:07:16 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8D1648D0006; Fri, 4 Aug 2023 23:07:09 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 85BB98E0001; Fri, 4 Aug 2023 23:07:09 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 6AF548D0008; Fri, 4 Aug 2023 23:07:09 -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 481C28D0006 for ; Fri, 4 Aug 2023 23:07:09 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 1CBA01405A8 for ; Sat, 5 Aug 2023 03:07:09 +0000 (UTC) X-FDA: 81088564578.09.BCFC6E9 Received: from dggsgout11.his.huawei.com (dggsgout11.his.huawei.com [45.249.212.51]) by imf10.hostedemail.com (Postfix) with ESMTP id 4E8C3C0011 for ; Sat, 5 Aug 2023 03:07:05 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=none; dmarc=none; spf=none (imf10.hostedemail.com: domain of shikemeng@huaweicloud.com has no SPF policy when checking 45.249.212.51) smtp.mailfrom=shikemeng@huaweicloud.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1691204827; 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; bh=aJHA8BSe5njikIfoG5Z4T29pS+C99yFvrv2vyqmBURM=; b=y7OznlZOfKPLr5Sxvehd3IaA+LzlztzyC7LTguM9yykH91uQPDsKmulqIcUBTZoucsuELQ SSYvK8ZtrMUwtIv9wcBn8BvAeWrbLZTw/LSNP2ysNolEW0O/L2hU/7ZFSROC6+tQEUv4Uu YC3PaY9T9584zXHpit5qmtoF0QE9E+8= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=none; dmarc=none; spf=none (imf10.hostedemail.com: domain of shikemeng@huaweicloud.com has no SPF policy when checking 45.249.212.51) smtp.mailfrom=shikemeng@huaweicloud.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1691204827; a=rsa-sha256; cv=none; b=SEKNlAnErJEUYJQLmMve5Ca7iOWTLXlwbak1WfY2JG/rbAs1nBi0T8VNRg0Rkb1DMW3CxG tz+9yf49djXNJG4XM8wd7vXNEpWX8I4mPo8VnY8yiddjqIMKw40Zl2i7woJdzpRSFvvdoe 2HSl7yoo9zmaYbf/DiO1Va0/dT60ZC4= Received: from mail02.huawei.com (unknown [172.30.67.143]) by dggsgout11.his.huawei.com (SkyGuard) with ESMTP id 4RHnYZ3zshz4f3m87 for ; Sat, 5 Aug 2023 11:06:58 +0800 (CST) Received: from huaweicloud.com (unknown [10.175.124.27]) by APP4 (Coremail) with SMTP id gCh0CgAHvrHQvM1k6A5ePg--.23962S4; Sat, 05 Aug 2023 11:06:59 +0800 (CST) From: Kemeng Shi To: linux-mm@kvack.org, linux-kernel@vger.kernel.org, akpm@linux-foundation.org, baolin.wang@linux.alibaba.com, mgorman@techsingularity.net, david@redhat.com Cc: shikemeng@huaweicloud.com Subject: [PATCH 2/9] mm/compaction: call list_is_{first}/{last} more intuitively in move_freelist_{head}/{tail} Date: Sat, 5 Aug 2023 19:07:04 +0800 Message-Id: <20230805110711.2975149-3-shikemeng@huaweicloud.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: <20230805110711.2975149-1-shikemeng@huaweicloud.com> References: <20230805110711.2975149-1-shikemeng@huaweicloud.com> MIME-Version: 1.0 X-CM-TRANSID: gCh0CgAHvrHQvM1k6A5ePg--.23962S4 X-Coremail-Antispam: 1UD129KBjvJXoW7ZFyfKF47KryDWF13ZF4fXwb_yoW8Wr1xpF W5ur4rJr48ArWrCFnrXF4q934rJF43Z3yYkrWY9FyUAFn8JrZ2gFySya1jvr95XrWUurWY vrsrKr4rurW7Ar7anT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUUPSb4IE77IF4wAFF20E14v26ryj6rWUM7CY07I20VC2zVCF04k2 6cxKx2IYs7xG6rWj6s0DM7CIcVAFz4kK6r1j6r18M280x2IEY4vEnII2IxkI6r1a6r45M2 8IrcIa0xkI8VA2jI8067AKxVWUXwA2048vs2IY020Ec7CjxVAFwI0_Gr0_Xr1l8cAvFVAK 0II2c7xJM28CjxkF64kEwVA0rcxSw2x7M28EF7xvwVC0I7IYx2IY67AKxVWDJVCq3wA2z4 x0Y4vE2Ix0cI8IcVCY1x0267AKxVW8Jr0_Cr1UM28EF7xvwVC2z280aVAFwI0_GcCE3s1l 84ACjcxK6I8E87Iv6xkF7I0E14v26rxl6s0DM2AIxVAIcxkEcVAq07x20xvEncxIr21l5I 8CrVACY4xI64kE6c02F40Ex7xfMcIj6xIIjxv20xvE14v26r1j6r18McIj6I8E87Iv67AK xVWUJVW8JwAm72CE4IkC6x0Yz7v_Jr0_Gr1lF7xvr2IYc2Ij64vIr41lF7I21c0EjII2zV CS5cI20VAGYxC7MxAIw28IcxkI7VAKI48JMxC20s026xCaFVCjc4AY6r1j6r4UMI8I3I0E 5I8CrVAFwI0_Jr0_Jr4lx2IqxVCjr7xvwVAFwI0_JrI_JrWlx4CE17CEb7AF67AKxVWUAV WUtwCIc40Y0x0EwIxGrwCI42IY6xIIjxv20xvE14v26r1j6r1xMIIF0xvE2Ix0cI8IcVCY 1x0267AKxVW8JVWxJwCI42IY6xAIw20EY4v20xvaj40_Jr0_JF4lIxAIcVC2z280aVAFwI 0_Jr0_Gr1lIxAIcVC2z280aVCY1x0267AKxVW8JVW8JrUvcSsGvfC2KfnxnUUI43ZEXa7s RNVbyUUUUUU== X-CM-SenderInfo: 5vklyvpphqwq5kxd4v5lfo033gof0z/ X-CFilter-Loop: Reflected X-Rspam-User: X-Stat-Signature: 4z46eid8mhibreskiis4x5sh8jkkje7s X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 4E8C3C0011 X-HE-Tag: 1691204825-298275 X-HE-Meta: U2FsdGVkX1/VqSdlbdVvT4UdMxwZU/VYXRFee2yj8aT7vFq8S/utqwQRmm7UE+Ccl4xyxFtpOGkmed/qDN2hcqvIAhOe7MdDg5mZUkLqNUr6bPTRBVBShgxZwOvC1ExT1B7fW8UG36H5Q8808m6vhs6+3grFiO3RBwncfcQ0eY7IX+dQBaEEzBMA361iFQIDtb9PO8vaotzoq6hABz7aUCaQ1J6vkVeDTdjpHZxz6S4O5lQM2r+pwNq6ScVrwAGn3wsAlW18DYrLo6dLQO7gnDAYeVNTPb5A+3Lei2Dc3jz/d7J3Dd9TnspzDdu3uBr4EPu3PAzbDOyJCmShGDK38dTphPiJTytNWsOMD1sLK4vPVmUz6weL3ld8e04IlJ+48EoKseqC9H2jBznIW1Pkem4vFox3RkNtsZb8UHdqftzRccuw+kT3XwkR6P0cLAwUleHtfkJi2TFTvkZZ/SnHDvU88BlLgdT7HVM1BFZL8KeKxISf2HEui6/8F70spIAT4sanBGLLeHca4A/JE96/HYn79G8yGCDXbHrSX5wAfUvJL9snL3QHXWYnWX44tEtBk6hEhTDaqQovDm020vYBlkhHSlnPlnGFZwgXC0rrJJfAeVXmPRRjA8ifAOBWWAGgdOSclMqei+4NgbwC4koJdd0VUiQey7WtVo25O3z6iuyGLs9ukV3D2MEurSGe7g/rhpMFm87DFZ7BQUFiWqGqrt/HafaFPAx3Y3KsgHOykOQuXvpcvzSxwKZDQk6CrKUIWm+ePOypF9Kg3SVOX8GiyQCGgPTsbyokqFd9sEo1VUbzmo1kN/ZLHY5BN2IOo6e2xa4vwJTR28geSBDW3iyc1dW3EhAIVk5sSSY74Z04WgO8aLucH1cMrY2JOnizQRsZiKwTy4AmNCKtqLzvcQzEwLbOhLBeHenMf5zV8W0vthhv1V3eEsZ/X/PYfu62jF9+d0qcRNLt1/eXQbShGVw Ike3cqGG Z0l9dTcWRQ3s09K5s9HZYwtE7BaUynxHt7/BABEgZfjAMqovOL2VzBk04h7DbB7BSys7e/TztStpECGpzNsdLquRCAQ7gPF39M9+yiGt+FHST/5+szcAXojjHOeUu7yWuCnJPxhLd9NCg9IHZcPSYJKC6XXg0B35feVuhdUdnp501YuC/WkPCBZCFLvcofnZIoj7Zyy3VOVIneGWdy2nnwyPgYg10XdIb4I7uMHVZYuiiaKhQo5kQpr0nfDCpPFxGIHlDvv13jQu+hyE= 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: We use move_freelist_head after list_for_each_entry_reverse to skip recent pages. And there is no need to do actual move if all freepages are searched in list_for_each_entry_reverse, e.g. freepage point to first page in freelist. It's more intuitively to call list_is_first with list entry as the first argument and list head as the second argument to check if list entry is the first list entry instead of call list_is_last with list entry and list head passed in reverse. Similarly, call list_is_last in move_freelist_tail is more intuitively. Signed-off-by: Kemeng Shi Reviewed-by: Baolin Wang --- mm/compaction.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mm/compaction.c b/mm/compaction.c index 513b1caeb4fa..fa1b100b0d10 100644 --- a/mm/compaction.c +++ b/mm/compaction.c @@ -1395,7 +1395,7 @@ move_freelist_head(struct list_head *freelist, struct page *freepage) { LIST_HEAD(sublist); - if (!list_is_last(freelist, &freepage->buddy_list)) { + if (!list_is_first(&freepage->buddy_list, freelist)) { list_cut_before(&sublist, freelist, &freepage->buddy_list); list_splice_tail(&sublist, freelist); } @@ -1412,7 +1412,7 @@ move_freelist_tail(struct list_head *freelist, struct page *freepage) { LIST_HEAD(sublist); - if (!list_is_first(freelist, &freepage->buddy_list)) { + if (!list_is_last(&freepage->buddy_list, freelist)) { list_cut_position(&sublist, freelist, &freepage->buddy_list); list_splice_tail(&sublist, freelist); }