From patchwork Thu Jul 20 13:01:38 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "zhangpeng (AS)" X-Patchwork-Id: 123263 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3115779vqt; Thu, 20 Jul 2023 06:23:56 -0700 (PDT) X-Google-Smtp-Source: APBJJlFW5PwON/ub07lK1xgNOMc+Ue1Afs2DTv6+okWIIDm2o0vBvEKf9B1xlRQ3I7BroOIBuW3G X-Received: by 2002:a17:907:2be4:b0:992:4c42:581c with SMTP id gv36-20020a1709072be400b009924c42581cmr5096553ejc.62.1689859436066; Thu, 20 Jul 2023 06:23:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689859436; cv=none; d=google.com; s=arc-20160816; b=UZCQy99bwvBsF/UNhxW/3I2e0apa9D2DibDaU5rbHPFUuEKN9zQrOsskAwGcQxL+3I DR25D53yJFWImkVtbnJ6edHIHivpO+bz51fw7f+k1ZvN7daiwZP2mAPURbFFmTs/LXYn yvdVwD/faiJGST3ukksIHf+Es583waFy4Bg4U9bGJchbDUt9b1LZGll5TJlss4ch5vxD CTDJqCexBWsCNHgY7Ch55gkO//B5LsVqAyQLDbbTEhB/esCNake/Pm/H78TLXPpCz2Qa PNsDXlMtK0q7AZEnMqKkuFgeNeedwZYQpaFvKu7/FvmUpuoBw33k5Qmx1X19vNA+J6YI GwYw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=pYlzkQAdk4AUL+lQrQcLU4TJsQEB6E3ePvUtD+d2i7U=; fh=q8rOnvZaN5Z50YvgZS1uBArX5ZcEEwPcusRFazgmNUQ=; b=PXvb70rsp7w5iDY36sZrSdenkQkZZ3uEMzJn9Jk0ZMeyd4EB50b5lgfPN3HvoCvfry PdUTIxY5ac43cSE9Zl9Y0bixTyG00rhA75VBkYLZndAqT78BIPA2wzE8v0OmIfGqsMR2 mds4GFbd8by4lJYKaJCDAipQYZ5rqyAOMdU8UW3cGAIXi6nHQKpbgHoGsfbDKK4TdW7c 1Syewfj2oZ5DB3P6WzAMcBmHX11PByqHy6qzClVXUQvsgQPlsJCQSjprmMO4pfbK0rLe W1/d5/j4yAbwIY6uK+TEa1FJiWX7TJqQbm3D2wgcU1MaFQzeD4k/DzSj2VRvVdftodJr DAMA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id d27-20020a170906175b00b00991df467bafsi730857eje.617.2023.07.20.06.23.30; Thu, 20 Jul 2023 06:23:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231436AbjGTNCZ (ORCPT + 99 others); Thu, 20 Jul 2023 09:02:25 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57528 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230246AbjGTNCV (ORCPT ); Thu, 20 Jul 2023 09:02:21 -0400 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0F0D2269D for ; Thu, 20 Jul 2023 06:02:20 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.56]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4R6CVx52DBzrRqj; Thu, 20 Jul 2023 21:01:29 +0800 (CST) Received: from localhost.localdomain (10.175.112.125) by kwepemm600020.china.huawei.com (7.193.23.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 20 Jul 2023 21:02:14 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v3 01/10] mm/page_io: remove unneeded ClearPageUptodate() Date: Thu, 20 Jul 2023 21:01:38 +0800 Message-ID: <20230720130147.4071649-2-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230720130147.4071649-1-zhangpeng362@huawei.com> References: <20230720130147.4071649-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems702-chm.china.huawei.com (10.3.19.179) To kwepemm600020.china.huawei.com (7.193.23.147) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_MED, RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771946048472475432 X-GMAIL-MSGID: 1771946048472475432 From: ZhangPeng The VM_BUG_ON_FOLIO in swap_readpage() ensures that the page is already !uptodate in __end_swap_bio_read() and sio_read_complete(). Just remove unneeded ClearPageUptodate(). Suggested-by: Matthew Wilcox (Oracle) Signed-off-by: ZhangPeng --- mm/page_io.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/mm/page_io.c b/mm/page_io.c index 8741d3a0d48a..3087a69a014b 100644 --- a/mm/page_io.c +++ b/mm/page_io.c @@ -62,7 +62,6 @@ static void __end_swap_bio_read(struct bio *bio) if (bio->bi_status) { SetPageError(page); - ClearPageUptodate(page); pr_alert_ratelimited("Read-error on swap-device (%u:%u:%llu)\n", MAJOR(bio_dev(bio)), MINOR(bio_dev(bio)), (unsigned long long)bio->bi_iter.bi_sector); @@ -417,7 +416,6 @@ static void sio_read_complete(struct kiocb *iocb, long ret) struct page *page = sio->bvec[p].bv_page; SetPageError(page); - ClearPageUptodate(page); unlock_page(page); } pr_alert_ratelimited("Read-error on swap-device\n"); From patchwork Thu Jul 20 13:01:39 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "zhangpeng (AS)" X-Patchwork-Id: 123262 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3113075vqt; Thu, 20 Jul 2023 06:19:56 -0700 (PDT) X-Google-Smtp-Source: APBJJlFCDk52/TDTycEIa0mnzDsHpFQuViKdPzQc8XunGsKzvsX7ENSgchwm94WurhIZD1cF3AUH X-Received: by 2002:a05:6a00:1487:b0:67a:c810:3cb0 with SMTP id v7-20020a056a00148700b0067ac8103cb0mr5994049pfu.3.1689859195931; Thu, 20 Jul 2023 06:19:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689859195; cv=none; d=google.com; s=arc-20160816; b=g6FccChMrivEWecl3XjUArbM/lWY1gY3E4dVzI4eoiJtyddUcGivmzAB3O7R7/RW16 yXLQf2domk30OkVCGDMQtgpigm9Qo2XqNrxq6FHOoBP1qtoDRCoTCOtJsiT0Bky58Sk4 FOg+RhiCqaOI+lsIbPXSfMpmBX21ZkVRtudDPpuY1ijJitgDBA0lE7uZL3daHBx+D27G SuyPlcaZv4kwUdihl6eNq+HyN9v16i6q1KPAvplDaU5dPry3+UlmCqZi2naQ3iqWJvrW Jhr5TcB3siHk3qCKjkpjsqD30QA8HXOWnTwcKEWnDY2qUF3cC00JUpC3j3YyFHqz1OtI idfw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=wN9Jy/8pPyEHOuZ2Lb/sCQ9C45wtfFLi31VZgiAcDtY=; fh=q8rOnvZaN5Z50YvgZS1uBArX5ZcEEwPcusRFazgmNUQ=; b=0NJBAUeG9BWOdQEYchGuBILlOJWG98YfncIgsfa51PSOSy4V98XzB8W495/LGRkSDW Lhdvf2NxY0Fgf+JMo9lERZ6em0+1IjJieGVkhxSCuHGUGXqMO1t+ovkaHnzoRipv9me+ YCnqZuT5NM8KFlZwpwowbbkm0NZ56s92xrcG8Phn8G4kqbyC/QibBJ5Ouu2KVKv0AqyS vb5LvfvdjPaYyvkuSSMnWZqtGKnqRP+6SUaarV1dN+e6v+NBQfR9qaAWJLDGg3oT/GJc HlXoOG6WZ/r9GO8V+BZibJxr40lM5GFvX7tJBlIu2BCErapKzZtSbBPxhaG4peV+V4iR 8nmA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id t40-20020a056a0013a800b0067b77e7f472si909471pfg.402.2023.07.20.06.19.42; Thu, 20 Jul 2023 06:19:55 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231400AbjGTNCX (ORCPT + 99 others); Thu, 20 Jul 2023 09:02:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57520 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229945AbjGTNCU (ORCPT ); Thu, 20 Jul 2023 09:02:20 -0400 Received: from szxga03-in.huawei.com (szxga03-in.huawei.com [45.249.212.189]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 706E7269A for ; Thu, 20 Jul 2023 06:02:19 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.56]) by szxga03-in.huawei.com (SkyGuard) with ESMTP id 4R6CSz4RdrzLntv; Thu, 20 Jul 2023 20:59:47 +0800 (CST) Received: from localhost.localdomain (10.175.112.125) by kwepemm600020.china.huawei.com (7.193.23.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 20 Jul 2023 21:02:15 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v3 02/10] mm/page_io: remove unneeded SetPageError() Date: Thu, 20 Jul 2023 21:01:39 +0800 Message-ID: <20230720130147.4071649-3-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230720130147.4071649-1-zhangpeng362@huawei.com> References: <20230720130147.4071649-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems702-chm.china.huawei.com (10.3.19.179) To kwepemm600020.china.huawei.com (7.193.23.147) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771945796464492117 X-GMAIL-MSGID: 1771945796464492117 From: ZhangPeng Nobody checks the PageError()/folio_test_error() for the page/folio in __end_swap_bio_read/write() and sio_write_complete(). Therefore, we don't need to set the error flag. Just drop it. Suggested-by: Matthew Wilcox (Oracle) Signed-off-by: ZhangPeng --- mm/page_io.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/mm/page_io.c b/mm/page_io.c index 3087a69a014b..5ddb5d9c5013 100644 --- a/mm/page_io.c +++ b/mm/page_io.c @@ -32,7 +32,6 @@ static void __end_swap_bio_write(struct bio *bio) struct page *page = bio_first_page_all(bio); if (bio->bi_status) { - SetPageError(page); /* * We failed to write the page out to swap-space. * Re-dirty the page in order to avoid it being reclaimed. @@ -61,7 +60,6 @@ static void __end_swap_bio_read(struct bio *bio) struct page *page = bio_first_page_all(bio); if (bio->bi_status) { - SetPageError(page); pr_alert_ratelimited("Read-error on swap-device (%u:%u:%llu)\n", MAJOR(bio_dev(bio)), MINOR(bio_dev(bio)), (unsigned long long)bio->bi_iter.bi_sector); @@ -415,7 +413,6 @@ static void sio_read_complete(struct kiocb *iocb, long ret) for (p = 0; p < sio->pages; p++) { struct page *page = sio->bvec[p].bv_page; - SetPageError(page); unlock_page(page); } pr_alert_ratelimited("Read-error on swap-device\n"); From patchwork Thu Jul 20 13:01:40 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "zhangpeng (AS)" X-Patchwork-Id: 123283 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3119869vqt; Thu, 20 Jul 2023 06:30:45 -0700 (PDT) X-Google-Smtp-Source: APBJJlG4nG/21BNPaNU6coh/RkS3sDmfg4nEOMHbwmaXYBRMMVlXjW8ugPyK+CiUyDvcnDjXQy/g X-Received: by 2002:a05:6a00:15c6:b0:66c:6766:7373 with SMTP id o6-20020a056a0015c600b0066c67667373mr26078928pfu.23.1689859845288; Thu, 20 Jul 2023 06:30:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689859845; cv=none; d=google.com; s=arc-20160816; b=kdQV185/1BIATCl7CL2nBIuXoYWHoBKoancIQ3kQl7Rl9G8qnHZ7e3pk0RlCxC53lv Jovw0mpyaesbcbEh4ljqcO/iVKgM53bO2iIa9P32ZZKM15FyS3MN/J0c/UU2fPezRrqM K5zIdJtpXFzZoonfvJNGiynhRTeUoM2Tk5TrQ2QW5FjmHnD23kvhSWl8ZS1JH+ACNuzQ ZhZD1htWdxVkYxvc+MLxUlnDJddBAu6BosWPdHDTroRwvk3xPH46c3HcyM9WeX4+yHTI 5hHHDxxEQm4aOiLryvL6EZATWZgOiXXH12VyNAuvO1s1KZnPNN+guZH6sDfXjr+foMf2 TinA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=8Y1QTHugPEXYbpmyf3lw/Ri5X8PoHToRc+NjX/L8NgQ=; fh=q8rOnvZaN5Z50YvgZS1uBArX5ZcEEwPcusRFazgmNUQ=; b=wOwrUOA/vGIhngnk+YJXbHl+3ecLC13UI38oSRS/Q7c4XZmHhEFvJBDOklSuT14yxU 4zNiH/SSCC1PD0pLO4m5IwDOddowDlPYWtiL0IqVrHC8RewK+toj6RerBVQx27fd3Aeh yGuEObEg7gPs96V3/WYoqDVW68y93vBZC0INfrDmmLn3SE2o4aJFUFFI/BbTgARzZjqy jyTb9w6Z9dK0BB7bo5WjdIQZO40dVBz4iGQP6z8GDoicDbOIbdFWXHcD1IL5DoQZIN0A y7E5mnNZWM9rhLbl/9e2Bexw8kJElhE45TIwLNgcGbxWDRsjvBRqP0MAF4iGtM2IfC55 whkQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id c15-20020a056a00248f00b006834175c797si1003575pfv.330.2023.07.20.06.30.31; Thu, 20 Jul 2023 06:30:45 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231316AbjGTNCV (ORCPT + 99 others); Thu, 20 Jul 2023 09:02:21 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57514 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229781AbjGTNCU (ORCPT ); Thu, 20 Jul 2023 09:02:20 -0400 Received: from szxga03-in.huawei.com (szxga03-in.huawei.com [45.249.212.189]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 699C910D2 for ; Thu, 20 Jul 2023 06:02:19 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.55]) by szxga03-in.huawei.com (SkyGuard) with ESMTP id 4R6CT02qTZzLntD; Thu, 20 Jul 2023 20:59:48 +0800 (CST) Received: from localhost.localdomain (10.175.112.125) by kwepemm600020.china.huawei.com (7.193.23.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 20 Jul 2023 21:02:16 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v3 03/10] mm/page_io: introduce bio_first_folio_all() Date: Thu, 20 Jul 2023 21:01:40 +0800 Message-ID: <20230720130147.4071649-4-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230720130147.4071649-1-zhangpeng362@huawei.com> References: <20230720130147.4071649-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems702-chm.china.huawei.com (10.3.19.179) To kwepemm600020.china.huawei.com (7.193.23.147) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771946477029004431 X-GMAIL-MSGID: 1771946477029004431 From: ZhangPeng Introduce bio_first_folio_all() to return a folio, which makes it easier to use. Suggested-by: Matthew Wilcox (Oracle) Signed-off-by: ZhangPeng --- Documentation/block/biovecs.rst | 1 + include/linux/bio.h | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/Documentation/block/biovecs.rst b/Documentation/block/biovecs.rst index ddb867e0185b..b9dc0c9dbee4 100644 --- a/Documentation/block/biovecs.rst +++ b/Documentation/block/biovecs.rst @@ -134,6 +134,7 @@ Usage of helpers: bio_for_each_bvec_all() bio_first_bvec_all() bio_first_page_all() + bio_first_folio_all() bio_last_bvec_all() * The following helpers iterate over single-page segment. The passed 'struct diff --git a/include/linux/bio.h b/include/linux/bio.h index c4f5b5228105..027ff9ab5d12 100644 --- a/include/linux/bio.h +++ b/include/linux/bio.h @@ -253,6 +253,11 @@ static inline struct page *bio_first_page_all(struct bio *bio) return bio_first_bvec_all(bio)->bv_page; } +static inline struct folio *bio_first_folio_all(struct bio *bio) +{ + return page_folio(bio_first_page_all(bio)); +} + static inline struct bio_vec *bio_last_bvec_all(struct bio *bio) { WARN_ON_ONCE(bio_flagged(bio, BIO_CLONED)); From patchwork Thu Jul 20 13:01:41 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "zhangpeng (AS)" X-Patchwork-Id: 123273 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3118404vqt; Thu, 20 Jul 2023 06:28:26 -0700 (PDT) X-Google-Smtp-Source: APBJJlFBkVEZsDZ1aaeehNdKSKyI3zRYtfprjgOoZmOGUmh/l8WdEMluw6nD1gp3WjwdCZlz6WMi X-Received: by 2002:a05:6a20:1c2:b0:105:6d0e:c046 with SMTP id 2-20020a056a2001c200b001056d0ec046mr19545924pzz.26.1689859705533; Thu, 20 Jul 2023 06:28:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689859705; cv=none; d=google.com; s=arc-20160816; b=efU5XkFBAhVqfBJh+Dz1FU3EC+X+/Yi1asv86cL6dMoMbfrHVkuTbsJD8fBS4iTmV7 zoHHpKdKCLXrsDFVckf9UbqMoC7m6eFLuQ0HLzjkjO0AzSYkN0GlvgeifOg2Bp/MVLXZ BXQT1qXhQdrvcbzP0fv5kUkmY6vDyJ9AXf2+vWeUWFydLFIocB/UPI25xKUzkdSDTaHF laR86pR5RhX+qEFBKE1wEY/qsrxG+mNDIZpkb3NCMMFbMXDKpdH7qrFtDASXNyfN8k98 eGShwLvIXUlYQusjZ3G7Jdaw7wNOSfN3KdgsfKxXLIwI7Fb2qeuC/wB5U2G6dSVTiiMs gmAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=2wILzb2wdzx6gb3QQe8NCuw5mHGSyWx+uSmLft9oKJA=; fh=q8rOnvZaN5Z50YvgZS1uBArX5ZcEEwPcusRFazgmNUQ=; b=VIMS0ksn+6z/u+dU9HW4zQi/wM6RKO/foqCmhpHbII0tzOrou0fqL7WpdLzGMb/aFx 8QqA5IClPPyHgMl0KRRI8y9K2+q5SxePsVMMq4wht/weHkhyhPirbOxnfZweB5cqd8k7 mg7aIaT5YSWmYxNL2hEJoHhN/JzxEuThZkXIRcnd4nFK12CK4ikAaV1x6msVdQ1PNI5v ZCQyX/ZqDoBdr0K7gByZkuq0BjLypL9+MX4FKOLFCG4iOem0o5FjlYS6t5DydRi94ZGq 1KMDoNI6s8lnAFxTm5Zf6NYYNXOlFqPy0npB50LIVVt/8zbCQ5RlUKa5BprUUXMjdema HgyQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id h190-20020a6383c7000000b0055bc2612ed4si823898pge.39.2023.07.20.06.28.12; Thu, 20 Jul 2023 06:28:25 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231654AbjGTNCg (ORCPT + 99 others); Thu, 20 Jul 2023 09:02:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57554 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231432AbjGTNCZ (ORCPT ); Thu, 20 Jul 2023 09:02:25 -0400 Received: from szxga08-in.huawei.com (szxga08-in.huawei.com [45.249.212.255]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 75F09269E for ; Thu, 20 Jul 2023 06:02:20 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.56]) by szxga08-in.huawei.com (SkyGuard) with ESMTP id 4R6CW05Zwzz18Lhl; Thu, 20 Jul 2023 21:01:32 +0800 (CST) Received: from localhost.localdomain (10.175.112.125) by kwepemm600020.china.huawei.com (7.193.23.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 20 Jul 2023 21:02:17 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v3 04/10] mm/page_io: use a folio in __end_swap_bio_write() Date: Thu, 20 Jul 2023 21:01:41 +0800 Message-ID: <20230720130147.4071649-5-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230720130147.4071649-1-zhangpeng362@huawei.com> References: <20230720130147.4071649-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems702-chm.china.huawei.com (10.3.19.179) To kwepemm600020.china.huawei.com (7.193.23.147) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771946330736421741 X-GMAIL-MSGID: 1771946330736421741 From: ZhangPeng Saves two implicit call to compound_head(). Signed-off-by: ZhangPeng --- mm/page_io.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mm/page_io.c b/mm/page_io.c index 5ddb5d9c5013..d9f5fa5b7281 100644 --- a/mm/page_io.c +++ b/mm/page_io.c @@ -29,7 +29,7 @@ static void __end_swap_bio_write(struct bio *bio) { - struct page *page = bio_first_page_all(bio); + struct folio *folio = bio_first_folio_all(bio); if (bio->bi_status) { /* @@ -40,13 +40,13 @@ static void __end_swap_bio_write(struct bio *bio) * * Also clear PG_reclaim to avoid folio_rotate_reclaimable() */ - set_page_dirty(page); + folio_mark_dirty(folio); pr_alert_ratelimited("Write-error on swap-device (%u:%u:%llu)\n", MAJOR(bio_dev(bio)), MINOR(bio_dev(bio)), (unsigned long long)bio->bi_iter.bi_sector); - ClearPageReclaim(page); + folio_clear_reclaim(folio); } - end_page_writeback(page); + folio_end_writeback(folio); } static void end_swap_bio_write(struct bio *bio) From patchwork Thu Jul 20 13:01:42 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "zhangpeng (AS)" X-Patchwork-Id: 123256 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3102433vqt; Thu, 20 Jul 2023 06:05:35 -0700 (PDT) X-Google-Smtp-Source: APBJJlHGJOK6MpCqMN7HmkhEOoq5zk3vwyESqQnoX9BK7rBabzPHVxBPTOwiLMR+mkKprmQkm0LQ X-Received: by 2002:a17:906:64d9:b0:994:5503:69c2 with SMTP id p25-20020a17090664d900b00994550369c2mr5300044ejn.1.1689858335010; Thu, 20 Jul 2023 06:05:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689858334; cv=none; d=google.com; s=arc-20160816; b=C+fw1uaRg3L9bZzdx3ELWvzAKozwI6vsJ3VaH/ct3VsVyKyXn8IHfsaU2628090j3O knL9ZVXmYWfkd9/An/cdv1Ij+Ihl4fs6ET6tBfB9UBDzzb7IqJi26QKXL4RpW6j4UrGH TQspTGbtQAp+q73QU2a7aAMWYlrdxF0rvd6YIjnCV4tWpKO0FsMywyrmtBVxCc6UaRyo ymfEf6JWTueLBd4T0GRp16CVCAAFeXBFMH9yqyJ2JlUSzIa/KpvaZqKZb2hfSOZJBKcE 9YtzC7FlsosBqfeTOcK5pKksDTyPL60XaDyAeeOAnuMJEOqYas2QlAzOz/TdRJff/2QV 9pDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=CB+qHE2AIiaz5vX2bP273n+UcyM/xFYJgaKztaFkiuE=; fh=q8rOnvZaN5Z50YvgZS1uBArX5ZcEEwPcusRFazgmNUQ=; b=vdTiiMdXLNPxz5Nc9MJnvxYwsIeiXPqTEAWD/1fxEX+hTBLcy2xdaks3ItNZTDlKlj DNpIYqxnz0a1RVKbLqtCFIW2Wy6QNK2ydTgK/JLQnLbFWJw2HVlcKcjb2aBbB+lUYGFN BQtqkRI1L6fRgpLp4MpFuYXZoPSCJV0vjCNg3+1swtBgmRRDWV2flSjPtruW7oJBLaXq R89KEzIo/UfSn9yGG0VaOcBnXSLx5Z1wAxbjKuxX3MF1MtsIw6hUXugecQI1UED4L1/E Ae/GRY1UOwpiv0XZh2PPEs9ywuTOHo9tNisdYk4rlpySBFvYzfBSxBbLmqonmsecu5hl jhAA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id t23-20020a17090605d700b0099381745ba7si672238ejt.878.2023.07.20.06.04.56; Thu, 20 Jul 2023 06:05:34 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231518AbjGTNC3 (ORCPT + 99 others); Thu, 20 Jul 2023 09:02:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57530 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231315AbjGTNCV (ORCPT ); Thu, 20 Jul 2023 09:02:21 -0400 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 880A0269F for ; Thu, 20 Jul 2023 06:02:20 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.56]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4R6CSG5GfNztRdc; Thu, 20 Jul 2023 20:59:10 +0800 (CST) Received: from localhost.localdomain (10.175.112.125) by kwepemm600020.china.huawei.com (7.193.23.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 20 Jul 2023 21:02:17 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v3 05/10] mm/page_io: use a folio in __end_swap_bio_read() Date: Thu, 20 Jul 2023 21:01:42 +0800 Message-ID: <20230720130147.4071649-6-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230720130147.4071649-1-zhangpeng362@huawei.com> References: <20230720130147.4071649-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems702-chm.china.huawei.com (10.3.19.179) To kwepemm600020.china.huawei.com (7.193.23.147) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_MED, RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771944893721508321 X-GMAIL-MSGID: 1771944893721508321 From: ZhangPeng Saves one implicit call to compound_head(). Signed-off-by: ZhangPeng --- mm/page_io.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mm/page_io.c b/mm/page_io.c index d9f5fa5b7281..3b97289153f9 100644 --- a/mm/page_io.c +++ b/mm/page_io.c @@ -57,16 +57,16 @@ static void end_swap_bio_write(struct bio *bio) static void __end_swap_bio_read(struct bio *bio) { - struct page *page = bio_first_page_all(bio); + struct folio *folio = bio_first_folio_all(bio); if (bio->bi_status) { pr_alert_ratelimited("Read-error on swap-device (%u:%u:%llu)\n", MAJOR(bio_dev(bio)), MINOR(bio_dev(bio)), (unsigned long long)bio->bi_iter.bi_sector); } else { - SetPageUptodate(page); + folio_mark_uptodate(folio); } - unlock_page(page); + folio_unlock(folio); } static void end_swap_bio_read(struct bio *bio) From patchwork Thu Jul 20 13:01:43 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "zhangpeng (AS)" X-Patchwork-Id: 123257 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3102679vqt; Thu, 20 Jul 2023 06:05:52 -0700 (PDT) X-Google-Smtp-Source: APBJJlF3J5pnICqQP6/w4yxF6xteXdHKDklLb8JogOQhuWJyc51/+HSPNu6S3jks/0xPDgDXh0Xo X-Received: by 2002:a17:907:75ca:b0:99b:4edc:8a00 with SMTP id jl10-20020a17090775ca00b0099b4edc8a00mr2033811ejc.37.1689858352571; Thu, 20 Jul 2023 06:05:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689858352; cv=none; d=google.com; s=arc-20160816; b=MeU1lu2b40dHuOUZuNUEKomD5tEA+sAqs48FyfUf2Jh7hqiaBaaRZrWqUYJTtNNx8a En/QYclqhifUN7jOwg5kJjBCLicwZJc8+ZPjMQL1uS1WRclzqW9FVWJmghoBMu5Ga6rB nvsaJMiCaICJfBOYBAczjfaGwGtPdTvaTl+lKuxtrK2zCG8oyLqJhZUEgMmyZCNN4C9Z 8fjBjMbOZto0E0qxUGKPaTIeqMRKO47YpRq1/tI3P2QkuwbpskNlNSuJYB8K0FRmK7nF bQwLlsZ+29hLn8mPIzosrgb+YdhdwBeV3cmTUUwXwwZPCnRxEczJzmpU9SIBgh3mCyx9 Oz8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=UIF1/RDQxGiWQWtgFqv/0f1S/VSRVZSzWjrR6f+CKz4=; fh=q8rOnvZaN5Z50YvgZS1uBArX5ZcEEwPcusRFazgmNUQ=; b=YuUvfcrp2S6sKY8v5OK1HJRwEMq+/fmB6fXLfP3GKwHVgZoBPE2SdTfLTkcnNOsdn7 n1FBA842snrBIqG5PbfI4hdIJXh5cCY10uxYxAqFGB79DEjYR6C/jPrtmP/KASZmHGhJ fY9ocUdBN3Ewa7o9e9u+5DTq7zyTsh/LAOEfJM03DJIW5Zs6isP/DyO+myqYuhxL5Hka /84m+S3WyIJxnv9fa8a4HkODGw5tDQ45m/9dBAb9YGfjKVqoSBqjveI2sctbFd7QwEba QxkkmjRoWBs6i+aEXOQ+/nG/bL6LMU5IaznVfLR6ECyk2OKA8mp3P29l6xCp3xNexp5k Eczw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id o17-20020a170906861100b0098e08768a43si591370ejx.408.2023.07.20.06.05.27; Thu, 20 Jul 2023 06:05:52 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231564AbjGTNCb (ORCPT + 99 others); Thu, 20 Jul 2023 09:02:31 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57536 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231341AbjGTNCW (ORCPT ); Thu, 20 Jul 2023 09:02:22 -0400 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E8E4110D2 for ; Thu, 20 Jul 2023 06:02:21 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.53]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4R6CS30yXYzNmVt; Thu, 20 Jul 2023 20:58:59 +0800 (CST) Received: from localhost.localdomain (10.175.112.125) by kwepemm600020.china.huawei.com (7.193.23.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 20 Jul 2023 21:02:18 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v3 06/10] mm/page_io: use a folio in sio_read_complete() Date: Thu, 20 Jul 2023 21:01:43 +0800 Message-ID: <20230720130147.4071649-7-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230720130147.4071649-1-zhangpeng362@huawei.com> References: <20230720130147.4071649-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems702-chm.china.huawei.com (10.3.19.179) To kwepemm600020.china.huawei.com (7.193.23.147) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771944911852744996 X-GMAIL-MSGID: 1771944911852744996 From: ZhangPeng Saves one implicit call to compound_head(). Signed-off-by: ZhangPeng --- mm/page_io.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mm/page_io.c b/mm/page_io.c index 3b97289153f9..7e7a9f67b9ad 100644 --- a/mm/page_io.c +++ b/mm/page_io.c @@ -403,17 +403,17 @@ static void sio_read_complete(struct kiocb *iocb, long ret) if (ret == sio->len) { for (p = 0; p < sio->pages; p++) { - struct page *page = sio->bvec[p].bv_page; + struct folio *folio = page_folio(sio->bvec[p].bv_page); - SetPageUptodate(page); - unlock_page(page); + folio_mark_uptodate(folio); + folio_unlock(folio); } count_vm_events(PSWPIN, sio->pages); } else { for (p = 0; p < sio->pages; p++) { - struct page *page = sio->bvec[p].bv_page; + struct folio *folio = page_folio(sio->bvec[p].bv_page); - unlock_page(page); + folio_unlock(folio); } pr_alert_ratelimited("Read-error on swap-device\n"); } From patchwork Thu Jul 20 13:01:44 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "zhangpeng (AS)" X-Patchwork-Id: 123278 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3119426vqt; Thu, 20 Jul 2023 06:30:10 -0700 (PDT) X-Google-Smtp-Source: APBJJlEBAMTwO58WwThMGpGM/VtMjpD60KHUOE0SMVTZMfXLam2CinEfSkYg349Excb5QdZP5RlH X-Received: by 2002:a05:6a00:1506:b0:682:713e:e510 with SMTP id q6-20020a056a00150600b00682713ee510mr2935976pfu.27.1689859810336; Thu, 20 Jul 2023 06:30:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689859810; cv=none; d=google.com; s=arc-20160816; b=WprLtjCsB0H8Ul0WSpM4mkP/9iQUikKcrkisqXgZMJ45xqtFTfEBz5E68+XKyOxlGp 2BFvX2CWjEH53fjtvRRppOvyCTPQHfozlkPG/GgNOAK5gclxztA/GVECcQRzJGxfLDoi XO/Zn8HxREZ3Jn9QOb41QAyCvgjtBcuZNDj1vap74wCswIVTSW0PqLjsjkB+ddwSS46l XPSK4anjvRYBFCdoAw11g5AhOfLxEESBSLY8P+ztjvGh2M4fyJQCUQRqeFntdIGtRpZx OYX1F/1G5Wi/E2yxYXGvdovhU3dqaFtOyuG17s7IV0XbT+xNLUzMOgkodKWAJ7fb93+K +09g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=yLRa2ewWzPH1vKlLihFR0E4jRNz9kx/0dw9KKzLjX+E=; fh=q8rOnvZaN5Z50YvgZS1uBArX5ZcEEwPcusRFazgmNUQ=; b=KeN/Vc62P7jC79Guc0CKwWeI76cpFu0ilOiMgZ4fq1pjKBAWl3euANSKUwFe1wG2tI mCNCXapkzmKous2XDHYlcZfqNheRVS1tQNuHVpvXH9SYBaNBBZcTVdmh59xfdWMJpxmo UE8NTL4JYJ2sVKo3bvR1ISosqdkgD3UCmen5V21xXju7Cda93X5i7TP/IM/k7l1s1n2x 4XPrQIASNpSCFSvhH7StTgh7qr4euRI9xE2HaVApkLWi90OlZ0nuI86pXJdUO7+WFzio 3oE+CHZjarMuG2qL3pSRBtUXHO6EQsLJRqI/qtR4KVCH+EXQeKkbsQMg3pulFZWamOoi HLaA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id c15-20020a056a00248f00b006834175c797si1003575pfv.330.2023.07.20.06.29.56; Thu, 20 Jul 2023 06:30:10 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231439AbjGTNCe (ORCPT + 99 others); Thu, 20 Jul 2023 09:02:34 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57542 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231398AbjGTNCX (ORCPT ); Thu, 20 Jul 2023 09:02:23 -0400 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9CA5B269A for ; Thu, 20 Jul 2023 06:02:22 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.54]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4R6CVH0XC6zVjqr; Thu, 20 Jul 2023 21:00:55 +0800 (CST) Received: from localhost.localdomain (10.175.112.125) by kwepemm600020.china.huawei.com (7.193.23.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 20 Jul 2023 21:02:19 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v3 07/10] mm/page_io: use a folio in swap_writepage_bdev_sync() Date: Thu, 20 Jul 2023 21:01:44 +0800 Message-ID: <20230720130147.4071649-8-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230720130147.4071649-1-zhangpeng362@huawei.com> References: <20230720130147.4071649-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems702-chm.china.huawei.com (10.3.19.179) To kwepemm600020.china.huawei.com (7.193.23.147) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771946440617512422 X-GMAIL-MSGID: 1771946440617512422 From: ZhangPeng Saves one implicit call to compound_head(). Signed-off-by: ZhangPeng Reviewed-by: Matthew Wilcox (Oracle) --- mm/page_io.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mm/page_io.c b/mm/page_io.c index 7e7a9f67b9ad..9df2a85e31b1 100644 --- a/mm/page_io.c +++ b/mm/page_io.c @@ -331,6 +331,7 @@ static void swap_writepage_bdev_sync(struct page *page, { struct bio_vec bv; struct bio bio; + struct folio *folio = page_folio(page); bio_init(&bio, sis->bdev, &bv, 1, REQ_OP_WRITE | REQ_SWAP | wbc_to_write_flags(wbc)); @@ -340,8 +341,8 @@ static void swap_writepage_bdev_sync(struct page *page, bio_associate_blkg_from_page(&bio, page); count_swpout_vm_event(page); - set_page_writeback(page); - unlock_page(page); + folio_start_writeback(folio); + folio_unlock(folio); submit_bio_wait(&bio); __end_swap_bio_write(&bio); From patchwork Thu Jul 20 13:01:45 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "zhangpeng (AS)" X-Patchwork-Id: 123266 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3117573vqt; Thu, 20 Jul 2023 06:26:59 -0700 (PDT) X-Google-Smtp-Source: APBJJlHBi9PPcWu1wF8jhjbfc/NCed0HjWhICNg6plZxLJZDSjKIAnt0Jz9nH2a7BHc22fYUEdm3 X-Received: by 2002:a17:90a:1110:b0:25c:8b5e:814 with SMTP id d16-20020a17090a111000b0025c8b5e0814mr1925434pja.44.1689859618599; Thu, 20 Jul 2023 06:26:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689859618; cv=none; d=google.com; s=arc-20160816; b=x+8ksIPrIzutkZ2XjRlwzO7q4PzqmYQW7nHmbuSoA3KeQA6xj1LGhLCWsX4Ri2Zau2 eepUoZTU7jDJvMH1zBQ9WfiYOcjbmJuymQw4cOpa8AkjUd3ybT+/CcVLQ/wAUMg7RxG+ ef5Njh7WIPCobK4iPcprRqfAH+4xmMEvtFMQWtDUNLXJsLlaFHBoxCdQgwvIM0WvYe/X nQg6hkGHRQhIDCouAF01w2fbvpKC0fFsC+2Ii7Lsll+Nn5jk/QMwLBOUXlD8Vb3Q9hZE DNq0IWolGQWcpMUaBuqB7LrbpAI4OZY8haervKZGIlnivfd0NcD1LhXQfuq/h/uEccXe 0c/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=VoMOxTnnrTWZ8rs4+m1BH19jtkngfSRXW7ZSyIZxahg=; fh=q8rOnvZaN5Z50YvgZS1uBArX5ZcEEwPcusRFazgmNUQ=; b=biRKaRrG75awfin0kBDOu2+Wda0sPpI3Fgezox39nML8Zpdqmw5QDGryiz3G0fR1fS n0zGrkyi52b3cv78L0X8ABRm5hxACKsvb0qn4GEe6g1Um+pRFAskCVMu+CENkNRL0uOt vxvfibXJMKjotb904UYYnD6zVhA8uTMBJHC3h89VI9Kz437Ot0WsUxCcM1oP34MMYpUa ux72IKaTMtELgjqQUuNXhghL1Pl6DcXdxGJO+Qf0B/asPny4aqj+6OMVVk0r4Hy+8RLc lVNKf+TPZo6KQU8VOhOLrL5zSl21pt8jeHVATC3+nFSntrxO0sFpLCCKmlhK1ZsUfLEb qEjw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ls14-20020a17090b350e00b00250ce1755e9si1286873pjb.14.2023.07.20.06.26.44; Thu, 20 Jul 2023 06:26:58 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230153AbjGTNCj (ORCPT + 99 others); Thu, 20 Jul 2023 09:02:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57566 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231438AbjGTNC0 (ORCPT ); Thu, 20 Jul 2023 09:02:26 -0400 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D8E56269A for ; Thu, 20 Jul 2023 06:02:24 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.54]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4R6CS44zXXzNmTw; Thu, 20 Jul 2023 20:59:00 +0800 (CST) Received: from localhost.localdomain (10.175.112.125) by kwepemm600020.china.huawei.com (7.193.23.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 20 Jul 2023 21:02:20 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v3 08/10] mm/page_io: use a folio in swap_writepage_bdev_async() Date: Thu, 20 Jul 2023 21:01:45 +0800 Message-ID: <20230720130147.4071649-9-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230720130147.4071649-1-zhangpeng362@huawei.com> References: <20230720130147.4071649-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems702-chm.china.huawei.com (10.3.19.179) To kwepemm600020.china.huawei.com (7.193.23.147) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771946239129358807 X-GMAIL-MSGID: 1771946239129358807 From: ZhangPeng Saves one implicit call to compound_head(). Signed-off-by: ZhangPeng Reviewed-by: Matthew Wilcox (Oracle) --- mm/page_io.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mm/page_io.c b/mm/page_io.c index 9df2a85e31b1..07bad3a4b701 100644 --- a/mm/page_io.c +++ b/mm/page_io.c @@ -352,6 +352,7 @@ static void swap_writepage_bdev_async(struct page *page, struct writeback_control *wbc, struct swap_info_struct *sis) { struct bio *bio; + struct folio *folio = page_folio(page); bio = bio_alloc(sis->bdev, 1, REQ_OP_WRITE | REQ_SWAP | wbc_to_write_flags(wbc), @@ -362,8 +363,8 @@ static void swap_writepage_bdev_async(struct page *page, bio_associate_blkg_from_page(bio, page); count_swpout_vm_event(page); - set_page_writeback(page); - unlock_page(page); + folio_start_writeback(folio); + folio_unlock(folio); submit_bio(bio); } From patchwork Thu Jul 20 13:01:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "zhangpeng (AS)" X-Patchwork-Id: 123280 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3119587vqt; Thu, 20 Jul 2023 06:30:25 -0700 (PDT) X-Google-Smtp-Source: APBJJlHGLrBVxH4aVv/4XMG4zpUgFGTzOfX88INh6ALq47ichf2JoBpuyMQ64jPqbrLJCEA9PSLn X-Received: by 2002:a05:6a20:2452:b0:137:2204:4ea6 with SMTP id t18-20020a056a20245200b0013722044ea6mr6529673pzc.27.1689859824688; Thu, 20 Jul 2023 06:30:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689859824; cv=none; d=google.com; s=arc-20160816; b=i0JxXnIgArU8AGtz3OFvJgkGIpIEW5+LlAdZjBwlrNFw1xBWaOBx6pYh91GO9aLufU m81/AjgBww44IIGTQrO6aIZRmxzIGUtSFVOrXbnPCUY/NqOsrZTp6RMtfeQiU8c2Z74s kazqD/nSmtf5sgsUxCVhKxSIeRsjXqYE5PHWrB4fWl8A5P0w/T/DYPg4MAdhkoRD/6s4 qxou5VyA/gq/j0QWPMx86bcaQLw7/QBYBsK8J4ESEt8e/ixHR/vRQ0ejRMZujmfvzZ1I gKsvZaAhzZqnzC3qk6mzcqkRBAR0qQoPIWzO9SAdSPCfbT6+LwQw8h7FA4BrWOu1pflr 4j1w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=ZiToJVy6IXCLdfNrEMRmMkKZFmbdR+n71Ox99bPoVHs=; fh=q8rOnvZaN5Z50YvgZS1uBArX5ZcEEwPcusRFazgmNUQ=; b=LINNBJh6Bl8V5qxYHoptf/eQwBojeJhTL+FNG+GeN85fdfXf9dPa0uhTQy69T0KRHV 5rocMQaNqeUQlzrx7JL9EOpdAccDJ7EsaIXS0qlTVRSVsFzvMh7tTna2Xft3a1bfff5K 8i/923Gd+VCbmvzK1NKK/y67mjlC/6l+2N+nl160H9BsmBw0pvOJgmvwqHTK6hhvqQMs UMtJKVKQh1Gd+aRn2SoJ8MjSzVyTDT/wLB8T+JwnkfKE025zyaiDsW27Dh/aGUUra9Fc nmr0X2Z+eZ83qejPEYybKmZeFmvy4TbAmW74qVr9tF2wICxOzPYl+2VHCoQU9lE2IbQY M8Ig== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id bd17-20020a056a00279100b006634db9e11dsi873456pfb.313.2023.07.20.06.30.10; Thu, 20 Jul 2023 06:30:24 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231684AbjGTNCl (ORCPT + 99 others); Thu, 20 Jul 2023 09:02:41 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57580 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231460AbjGTNC0 (ORCPT ); Thu, 20 Jul 2023 09:02:26 -0400 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 35541269D for ; Thu, 20 Jul 2023 06:02:24 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.55]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4R6CS53LFGzNmWS; Thu, 20 Jul 2023 20:59:01 +0800 (CST) Received: from localhost.localdomain (10.175.112.125) by kwepemm600020.china.huawei.com (7.193.23.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 20 Jul 2023 21:02:21 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v3 09/10] mm/page_io: convert count_swpout_vm_event() to take in a folio Date: Thu, 20 Jul 2023 21:01:46 +0800 Message-ID: <20230720130147.4071649-10-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230720130147.4071649-1-zhangpeng362@huawei.com> References: <20230720130147.4071649-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems702-chm.china.huawei.com (10.3.19.179) To kwepemm600020.china.huawei.com (7.193.23.147) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771946455806386890 X-GMAIL-MSGID: 1771946455806386890 From: ZhangPeng Convert count_swpout_vm_event() to take in a folio. We can remove five implicit calls to compound_head() by taking in a folio. Signed-off-by: ZhangPeng --- mm/page_io.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/mm/page_io.c b/mm/page_io.c index 07bad3a4b701..da3f38404585 100644 --- a/mm/page_io.c +++ b/mm/page_io.c @@ -205,13 +205,11 @@ int swap_writepage(struct page *page, struct writeback_control *wbc) return 0; } -static inline void count_swpout_vm_event(struct page *page) +static inline void count_swpout_vm_event(struct folio *folio) { -#ifdef CONFIG_TRANSPARENT_HUGEPAGE - if (unlikely(PageTransHuge(page))) + if (unlikely(folio_test_pmd_mappable(folio))) count_vm_event(THP_SWPOUT); -#endif - count_vm_events(PSWPOUT, thp_nr_pages(page)); + count_vm_events(PSWPOUT, folio_nr_pages(folio)); } #if defined(CONFIG_MEMCG) && defined(CONFIG_BLK_CGROUP) @@ -280,7 +278,7 @@ static void sio_write_complete(struct kiocb *iocb, long ret) } } else { for (p = 0; p < sio->pages; p++) - count_swpout_vm_event(sio->bvec[p].bv_page); + count_swpout_vm_event(page_folio(sio->bvec[p].bv_page)); } for (p = 0; p < sio->pages; p++) @@ -339,7 +337,7 @@ static void swap_writepage_bdev_sync(struct page *page, __bio_add_page(&bio, page, thp_size(page), 0); bio_associate_blkg_from_page(&bio, page); - count_swpout_vm_event(page); + count_swpout_vm_event(folio); folio_start_writeback(folio); folio_unlock(folio); @@ -362,7 +360,7 @@ static void swap_writepage_bdev_async(struct page *page, __bio_add_page(bio, page, thp_size(page), 0); bio_associate_blkg_from_page(bio, page); - count_swpout_vm_event(page); + count_swpout_vm_event(folio); folio_start_writeback(folio); folio_unlock(folio); submit_bio(bio); From patchwork Thu Jul 20 13:01:47 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "zhangpeng (AS)" X-Patchwork-Id: 123258 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3104642vqt; Thu, 20 Jul 2023 06:08:18 -0700 (PDT) X-Google-Smtp-Source: APBJJlE/yL1mRu4IdBIjmQFLUAAaZhoWD1njalsoV3etPoi8J3WqmpK0IRbUsPveHB5dNZvUoK/P X-Received: by 2002:a17:906:cc93:b0:993:d75b:63ea with SMTP id oq19-20020a170906cc9300b00993d75b63eamr4781874ejb.16.1689858498504; Thu, 20 Jul 2023 06:08:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689858498; cv=none; d=google.com; s=arc-20160816; b=06ajMuaGrAKpevFVJnEvdDe4gkOA4GdUF70utLuQXIJFxB1adrJbY2qrwrr6C9+v8s rg6y6ndL2VauXTQCaFpcEUK+aO6EFOX860KO9T8m3dPm50CDPvDCg1tJgBMEIPfYThjj Hwdy57j0EKEdddm/9FJSR6Yv9ZLU/pgtezV0nGhgMb2foNO6sOjONsBxlRUdAT4RL3X6 U2otGBE2qQC0G5ZkwQY+8ZyRRSWhggDtHfa9CPlVaWTYEWtSoWe03A1cb53KKVac7Tmb FtzmTFnIMpDiZ8yqtULNRCDA0LEnKF1YYIit/fGXz7Y1Q0nRm0nuHiU4l8PFSI8y9PJh 8TtA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=4t8XLJPyanjJPYKfxZvv1GZ4bOrqT8Oez47EILxWmoc=; fh=q8rOnvZaN5Z50YvgZS1uBArX5ZcEEwPcusRFazgmNUQ=; b=C3igkK2LtffxRgk8vOmbZzmLjBFUHeJ3IfFkhWKOuP5yEbbULwfR8rg3OfKkDTJZir BdQp67QVr/BWLKAPQmEgf9ch/IvEk0wdVq134bXegUNlQwU9Ki0HmqgefMhRItNZUvBB mnMACkmM4gy+af4DEry1muNcxfEVWfHM1Q0P2u5n5ZTpnJL/hBz9/yIGQabdVosYd6L/ kIms4X9b0yjMzpogDgnlE2cFiB1zC9c1LwHJCXV62XxPfGSD0uQ4XFAX22ud0VYHf9eH mm0hoj3RyHSXSN9NrmyR7TtFNKfqSh9GXsTJg5nWl/vlkpKq5kX8Gl9u6TyZUGT1ZvGQ /2Ow== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id o17-20020a170906861100b0098e08768a43si591370ejx.408.2023.07.20.06.07.47; Thu, 20 Jul 2023 06:08:18 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231528AbjGTNCp (ORCPT + 99 others); Thu, 20 Jul 2023 09:02:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57572 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231454AbjGTNC0 (ORCPT ); Thu, 20 Jul 2023 09:02:26 -0400 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 12A1C269F for ; Thu, 20 Jul 2023 06:02:25 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.55]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4R6CW44vcBzrRqs; Thu, 20 Jul 2023 21:01:36 +0800 (CST) Received: from localhost.localdomain (10.175.112.125) by kwepemm600020.china.huawei.com (7.193.23.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 20 Jul 2023 21:02:21 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v3 10/10] mm/page_io: convert bio_associate_blkg_from_page() to take in a folio Date: Thu, 20 Jul 2023 21:01:47 +0800 Message-ID: <20230720130147.4071649-11-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230720130147.4071649-1-zhangpeng362@huawei.com> References: <20230720130147.4071649-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems702-chm.china.huawei.com (10.3.19.179) To kwepemm600020.china.huawei.com (7.193.23.147) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_MED, RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771945064645494258 X-GMAIL-MSGID: 1771945064645494258 From: ZhangPeng Convert bio_associate_blkg_from_page() to take in a folio. We can remove two implicit calls to compound_head() by taking in a folio. Signed-off-by: ZhangPeng Reviewed-by: Matthew Wilcox (Oracle) --- mm/page_io.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mm/page_io.c b/mm/page_io.c index da3f38404585..cc2503bd511a 100644 --- a/mm/page_io.c +++ b/mm/page_io.c @@ -213,12 +213,12 @@ static inline void count_swpout_vm_event(struct folio *folio) } #if defined(CONFIG_MEMCG) && defined(CONFIG_BLK_CGROUP) -static void bio_associate_blkg_from_page(struct bio *bio, struct page *page) +static void bio_associate_blkg_from_page(struct bio *bio, struct folio *folio) { struct cgroup_subsys_state *css; struct mem_cgroup *memcg; - memcg = page_memcg(page); + memcg = folio_memcg(folio); if (!memcg) return; @@ -228,7 +228,7 @@ static void bio_associate_blkg_from_page(struct bio *bio, struct page *page) rcu_read_unlock(); } #else -#define bio_associate_blkg_from_page(bio, page) do { } while (0) +#define bio_associate_blkg_from_page(bio, folio) do { } while (0) #endif /* CONFIG_MEMCG && CONFIG_BLK_CGROUP */ struct swap_iocb { @@ -336,7 +336,7 @@ static void swap_writepage_bdev_sync(struct page *page, bio.bi_iter.bi_sector = swap_page_sector(page); __bio_add_page(&bio, page, thp_size(page), 0); - bio_associate_blkg_from_page(&bio, page); + bio_associate_blkg_from_page(&bio, folio); count_swpout_vm_event(folio); folio_start_writeback(folio); @@ -359,7 +359,7 @@ static void swap_writepage_bdev_async(struct page *page, bio->bi_end_io = end_swap_bio_write; __bio_add_page(bio, page, thp_size(page), 0); - bio_associate_blkg_from_page(bio, page); + bio_associate_blkg_from_page(bio, folio); count_swpout_vm_event(folio); folio_start_writeback(folio); folio_unlock(folio);