From patchwork Fri Jul 21 03:44: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: 123544 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3544445vqt; Thu, 20 Jul 2023 21:10:57 -0700 (PDT) X-Google-Smtp-Source: APBJJlHVKatk/pm6Rqoiel8FltlogMeOPjZxyC9VGPF4rNcRmvu0I7K8Q7C67Lgff9tayOOumBjH X-Received: by 2002:a17:907:778b:b0:99b:4a2b:2ea3 with SMTP id ky11-20020a170907778b00b0099b4a2b2ea3mr624601ejc.17.1689912657386; Thu, 20 Jul 2023 21:10:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689912657; cv=none; d=google.com; s=arc-20160816; b=kAayoHpReApgIUeJwwt8YHzQIhOdghuquaMzG+j4aDoHP2P+YWCjcrij0vyccAeRRz /ZgZ3X78Zq54FC33LHmQOI8jj7TW2r8UwYU8ABHT1ZNhFmuOGAn8tWfocZboPEXHXWi0 4b36W38982qb/3aBFkYLNR+kG2NWgtMTdRNSyFCyDOplB0ym5QxR1N1xym8cYduwEP2/ qv2fYA+elVHcSKK7/dd8Zo+nqv71PmyJss5ik+rDkBKmI8dV/mmanpBORLEnTPlj2DYl 8D3AlQL2obycFhhI8tTWE/vX0zGMnDHmgpAG2SIaTHlNRrDUD3s6f/+h8f6raIksv8ge EdAg== 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=KttMYZTaTL4XOgxLpd8/rDvZEY1ONSJ0JMBhu/PJNv5p3ibYwe7aDnTc4og6D8LcWz 4HDqUQAWjmuKTgl+CHzGK6FfLt2Ndogs03qZoEH4ImjEPhOa7tKwe2fWcT6vIOyfla8L GWVbmiMCD5XtssPSXH5vpvuFJTybhCqGEqbANvAQ27TgDSb37Tp+trHNDG3BiB1HwwAk DuRS70lhXFE4jv4J21ZDyMtM9svnjmRQktOgeRUA55ev7C4ogQEyVRt3N/it37fXpvNU zFYdDBlAsf0GWKCIOZPMi4W6nt+iHaTYOvlpEuTxpLyMr8U2grgpmA/gU5HYH+lzilvs Nsug== 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 ov9-20020a170906fc0900b00992ca771e71si1648996ejb.138.2023.07.20.21.10.32; Thu, 20 Jul 2023 21:10:57 -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 S230080AbjGUDpQ (ORCPT + 99 others); Thu, 20 Jul 2023 23:45:16 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58582 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229616AbjGUDpN (ORCPT ); Thu, 20 Jul 2023 23:45:13 -0400 Received: from szxga08-in.huawei.com (szxga08-in.huawei.com [45.249.212.255]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 51EB32729 for ; Thu, 20 Jul 2023 20:45:11 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.57]) by szxga08-in.huawei.com (SkyGuard) with ESMTP id 4R6b5g0PLYz18MC2; Fri, 21 Jul 2023 11:44:23 +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; Fri, 21 Jul 2023 11:45:08 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v4 01/10] mm/page_io: remove unneeded ClearPageUptodate() Date: Fri, 21 Jul 2023 11:44:42 +0800 Message-ID: <20230721034451.16412-2-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230721034451.16412-1-zhangpeng362@huawei.com> References: <20230721034451.16412-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) 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: 1772001854477920928 X-GMAIL-MSGID: 1772001854477920928 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 Fri Jul 21 03:44: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: 123547 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3547656vqt; Thu, 20 Jul 2023 21:19:50 -0700 (PDT) X-Google-Smtp-Source: APBJJlENkmt5+XBv+cxj28cVSXBowOXhJ/UdmSLOAbmsphknQgOvKPb3eXxsZ97VX7SOS+V1GCYn X-Received: by 2002:a17:902:8f8c:b0:1b6:8863:8c9f with SMTP id z12-20020a1709028f8c00b001b688638c9fmr711419plo.6.1689913190197; Thu, 20 Jul 2023 21:19:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689913190; cv=none; d=google.com; s=arc-20160816; b=xHnvtZgHzc9YQ2zQx55NjS+KgXaqvdFTiRuUnCeI8R+Hl/3QcB00ZMtSHlc9SUDUUs jwXInvnc+9/daUcZscxu1m+MfkrZ+SH6LbEN/rspQzofCk+BBqXBPeCoMczO4VB52wcP ccwSgjkKZJsNqjbZTlJPJT4OXV3dxN4uSTiU1+qjzkixR45cyQmP74XXjZZ07YkuFh7/ Ano9ZZJCrAtcgsA4p+OSK0ELo3zdZSjfKFjfomXT1y7nJ7vrbjgRzU/yxaZ5rRJPBFhY 2VZr58Tu2DvZuv4BPMLPEi9nr+4rdxbBnP/MEzBzvcsxxQ+TRYFTOTC99V2Ne9v2ND/x HioQ== 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=iZmWfs+0s7lT0tn2aRxB+OxEa5eHvlejvCwxgb/4JXGGTUb2W/ObSSO9RX4X1m9UJC fV/Cm1JSNvoWYxJwESoVSBTO47HlHBi48yGPudXiG/ZZJvadY0Bqpb6Wo9EshWCXtNak jqgiumq8Bmzhn4/PCbAK9f7a+w5mgtlIQEITTQdqC0r6ml8/9klLq4qYl71zwl9lTGvP yyqf50GVZxe/LgAf06bpANisLM2SzzCa4FoK7Qc7dVZg/LSFsBCeirM96sSAcA/hB+rL QWEzaBnk7PmXWu3li7cfiEkOn2rLpWDQ0Kd7twu2fVYy8nW+Q8cCXYuaXxPPcWXztCYW frfQ== 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 jz8-20020a170903430800b001b89b7ce902si2157934plb.305.2023.07.20.21.19.37; Thu, 20 Jul 2023 21:19:50 -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 S230100AbjGUDpS (ORCPT + 99 others); Thu, 20 Jul 2023 23:45:18 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58584 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229947AbjGUDpN (ORCPT ); Thu, 20 Jul 2023 23:45:13 -0400 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E6E40272D for ; Thu, 20 Jul 2023 20:45:11 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.53]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4R6b2x0j9XztRMB; Fri, 21 Jul 2023 11:42: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; Fri, 21 Jul 2023 11:45:08 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v4 02/10] mm/page_io: remove unneeded SetPageError() Date: Fri, 21 Jul 2023 11:44:43 +0800 Message-ID: <20230721034451.16412-3-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230721034451.16412-1-zhangpeng362@huawei.com> References: <20230721034451.16412-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) 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: 1772002413456301914 X-GMAIL-MSGID: 1772002413456301914 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 Fri Jul 21 03:44: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: 123540 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3539954vqt; Thu, 20 Jul 2023 21:00:42 -0700 (PDT) X-Google-Smtp-Source: APBJJlFdGs8rjrm3CSdQBCLDR3ljnSCjLJtdr0DnJhWDofMSlWKl2wyHsXwQeVgValiLNtYnIh34 X-Received: by 2002:a05:6358:7e44:b0:133:b42:69ca with SMTP id p4-20020a0563587e4400b001330b4269camr655844rwm.18.1689912041764; Thu, 20 Jul 2023 21:00:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689912041; cv=none; d=google.com; s=arc-20160816; b=s4vIHoZvXCvO96lUvbSO6mVx1tNmnjepHd+hygGaT83nxdzVEoAP7Dj2CVHhMqZlnG WKgpqee1KGwAN0X2pNqV/Hybemm4hZ2U1uTRjtIIDV3l8ctheNWo/RT6k21iyuc6RK+A ag8DRXhFL/s2N6OXbSEY2tMiv1YeEEIR1VLwlVk3Zdii94Ncm6A3fxDmvfncBn5daUPj tdw1nB7SFZjU5fmE936eoUtJ0Wzy0jhqDijB3fQDrBxgmRqSgJrLcQM9x+LmwY019wnX 1yxgOOmsQ6eRVPrSBEnJjkYjVtgqoXH74hEy6hZGhvTV7bAU3fCxG9jZu2fkC0EQ2QvZ pn1g== 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=zzDBAjgTvtOd9u40rcr4ucfHfeVMNQjcFeInEjoOsdfPcbNRuWyUe8Uk2aqvyCnFqa QCDVcrFu8J5ZFObia3DmYQTtNAdJb//9EX+wRycyHMxqQJniyTsbWq7wyptSNKmYSwff 7pxQQSAgqE0wKGHkhH92cTZH8jy19sdWUewSnyCta+4bDeSKjoj39wGlOW4iNrZcstOj FlbtdQgxs0oK4KdgtFpXoEl1aTIZSnMv/9s0GasWEfzxwAwCeZpFq2nOOxyzLVFch2uT VDkQNtTkcio+Qi+F/8+h12ddl3wIQ1NNbU54kV7ctltE9jHIXcAcspbglOmEmwCqkMb9 Dd6A== 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 e70-20020a636949000000b0055c4c9cbfedsi2087476pgc.862.2023.07.20.21.00.27; Thu, 20 Jul 2023 21:00:41 -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 S229457AbjGUDpW (ORCPT + 99 others); Thu, 20 Jul 2023 23:45:22 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58590 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230049AbjGUDpN (ORCPT ); Thu, 20 Jul 2023 23:45:13 -0400 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6FFB6272E for ; Thu, 20 Jul 2023 20:45:12 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.57]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4R6b4w2MtfzVjnH; Fri, 21 Jul 2023 11:43:44 +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; Fri, 21 Jul 2023 11:45:09 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v4 03/10] mm/page_io: introduce bio_first_folio_all() Date: Fri, 21 Jul 2023 11:44:44 +0800 Message-ID: <20230721034451.16412-4-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230721034451.16412-1-zhangpeng362@huawei.com> References: <20230721034451.16412-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) 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: 1772001209281291669 X-GMAIL-MSGID: 1772001209281291669 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 Fri Jul 21 03:44: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: 123548 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3550674vqt; Thu, 20 Jul 2023 21:28:50 -0700 (PDT) X-Google-Smtp-Source: APBJJlHVzky7DaaNzByt8Wk5DwuVIhivcCc9tlY759Ls9HZhWrraxJbMhmtRo8xKsJyREwjuMzCU X-Received: by 2002:a17:906:cc0c:b0:982:8de1:aad9 with SMTP id ml12-20020a170906cc0c00b009828de1aad9mr707171ejb.64.1689913730421; Thu, 20 Jul 2023 21:28:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689913730; cv=none; d=google.com; s=arc-20160816; b=ROqqeLUscyWeXVIChCnPR7R03HABZ95zAP83m1IF231j1zDwtg2I055Abkwyu1B41w w4Spd3ItVkCDzJo/QFz9oQ9Ax+LgZe9RhSC3049MHGMgzwwhDqunO9OJUcR05XDx7nRK wnBUv0xNzg8ojf4YXa7y+/ClUr+sC/qsPI75CePdnEFcb2t05cAlv/pc9tAmdcr4bnUl lNQ3STf8ynQzuEF5RPQoOWthHVGMBscAqQep+VuP4cOpAMRqecOXN8ZVILd64GGMqZfv GZ/RNAK61I8GOYK2P1i9Qa0lvbQ2nGuupFtUofaMyKCFjTy7rLuYRBxFW33RWK8Ocyo7 INJQ== 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=VU82ms8EcyOoJ6XIfyTJzdHVcY39DDeQHThHJ3V6hjn9gj/Wry92wQKBEEWQbrHHXg l9/fDMePqmHMcgyB/aHokIXuL37s6lJG5wNxMkY1fLKYif+dPvtABEHa05cjVO/ImKBu IuNABRKQXNTWJyRmGNUom2uvlvoCRpvWE1wgYhO2ty1l+jv1PguIW6kb9E2El9E1HfKh BCVcQvjAg54kxGHE0G6dByRIFmaQkNUjSWJJRmvmjZWClYiLt2yb1CSvyvgOGNNbNIt2 /nejGIqM/6DzmOy7RXsVmh1d+rGk2O4sbgitY4QdxC7tgL0a6ZQROU9RYH+kGdsOs6bI LHuQ== 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 k17-20020a1709065fd100b009969e8865c6si1531379ejv.491.2023.07.20.21.28.26; Thu, 20 Jul 2023 21:28:50 -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 S230146AbjGUDpY (ORCPT + 99 others); Thu, 20 Jul 2023 23:45:24 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58594 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230053AbjGUDpO (ORCPT ); Thu, 20 Jul 2023 23:45:14 -0400 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 39F251BFC for ; Thu, 20 Jul 2023 20:45:13 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.54]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4R6b4x0PtvzVjnQ; Fri, 21 Jul 2023 11:43:45 +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; Fri, 21 Jul 2023 11:45:10 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v4 04/10] mm/page_io: use a folio in __end_swap_bio_write() Date: Fri, 21 Jul 2023 11:44:45 +0800 Message-ID: <20230721034451.16412-5-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230721034451.16412-1-zhangpeng362@huawei.com> References: <20230721034451.16412-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) 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: 1772002979758634775 X-GMAIL-MSGID: 1772002979758634775 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 Fri Jul 21 03:44: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: 123555 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3557637vqt; Thu, 20 Jul 2023 21:48:12 -0700 (PDT) X-Google-Smtp-Source: APBJJlFCR/22WEPT7aXMd7KWHsFqq+ST+29SG/QrilVjcuCWaHkzK59Pe6jxGI2AVxA3NlMEcJ0q X-Received: by 2002:a50:ee17:0:b0:51d:98d0:3049 with SMTP id g23-20020a50ee17000000b0051d98d03049mr585898eds.21.1689914892705; Thu, 20 Jul 2023 21:48:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689914892; cv=none; d=google.com; s=arc-20160816; b=w1aSX9hFuI8eKNc1aGlwYz9pVi7PiWOoAW4PDvKXxLtXnJ9Pe9gBBOjRKRl+MS0D++ Ta050ug/Ngm9YKYdT/NOE2h4sVn1UhiASQFWtNXvXi2dmTBcet7zuMbpsGQOLoeBXG+r M5asylErm6/CMNulVokuRkvXkcPa/xeU2WZ9fIuM95SNTl0vuI4hGqPESIcagkq7Cswl hzrrVSIOX9xE+sSDeA7796/FO5fsRu7QQoSTSv4QMav3EvdqjIO8XHoUWh1qcX6gMPZW QXMPcm1DqOzkhMftDyji1MEe6zJWVFoLQyDMTmUhgQEDHn6tYez06A43Er/I0fkFDIjh OCgA== 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=k/329i5JMvaQeFYEBgTqFhaixXtYmHZnMM+0d01WgDAfgK7Rk/mfCd3Dc5hIJAsEse pG820VOfbqJptvZUf4c3jXGRu8gGTpgvonf1K4uNVJULk/fuQqwbAgc+x91wljfI7Kov guMAWgv+9xHGPKvpBY4aejhIs4QO2j+mstzvFYoA0h/T3TV3DVWERJ2YmKVf0DPeRDS0 Uq8Wn1Ve2yrDiR/mNLow/8+pPNUc95BpwCKXiG+J9GAaibJaVj/G4k3j8DeE5DuudFkU vhNL16rexy7f+bQtKVQILSiLHGBpwzOOL+pILoy5X5P5nvuRjh2OakMMojs4exaK3WXk wbTg== 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 f9-20020a056402150900b0051e22d772a2si1892950edw.679.2023.07.20.21.47.49; Thu, 20 Jul 2023 21:48:12 -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 S230053AbjGUDp1 (ORCPT + 99 others); Thu, 20 Jul 2023 23:45:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58600 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230058AbjGUDpO (ORCPT ); Thu, 20 Jul 2023 23:45:14 -0400 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C4FC02729 for ; Thu, 20 Jul 2023 20:45:13 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.53]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4R6b2z22NLztRRT; Fri, 21 Jul 2023 11:42:03 +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; Fri, 21 Jul 2023 11:45:11 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v4 05/10] mm/page_io: use a folio in __end_swap_bio_read() Date: Fri, 21 Jul 2023 11:44:46 +0800 Message-ID: <20230721034451.16412-6-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230721034451.16412-1-zhangpeng362@huawei.com> References: <20230721034451.16412-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) 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: 1772004198598584734 X-GMAIL-MSGID: 1772004198598584734 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 Fri Jul 21 03:44: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: 123542 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3542447vqt; Thu, 20 Jul 2023 21:05:55 -0700 (PDT) X-Google-Smtp-Source: APBJJlEwJOO294BDefBwN/zJ/4mMrXrZT29d+dg9XjZyoPn8OvF0dkTq5uTtIB07MYX2s9E5M/h8 X-Received: by 2002:a05:6358:2495:b0:132:ce1f:6793 with SMTP id m21-20020a056358249500b00132ce1f6793mr799634rwc.21.1689912355526; Thu, 20 Jul 2023 21:05:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689912355; cv=none; d=google.com; s=arc-20160816; b=nXZTapJCl8GACKxC9Z7FN5Ot0KMNYD0wUcOUR7ZsYJ/7riDI1EphTNDsvxK75Vt5h5 jHuIRq03lko0FDHmWYcgyR41yENjVelljtDMPp1cfESKYriMfy81EAb7N1/5wIGPJ3sf V+ql28dFf8HpKPGnJanppDbu/Enc4z6jI2tG1OV0RozeD0S8QQSuy3NmKl66amGI4NxP ytFIweFJY5LuDgJjGZTTupQ0EZJGvZXnJp6m4HTq0MzkFhN30DVS1pfTm9dlQPFQ4TA9 r4JeMQN5f8KmXbq1GZ8j51QCYUCgQPk6MNRDnGphiWeEKMPDlq5VE6+ItKB8oVR6mum+ m/pA== 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=WqQWK9TsEa8n0IcR2BJHT3IJcd/+xSCOCRgF0IuUpS1h/GEwxdvXA8hl6byG0KyP8J mOUh77N32AXImOubf02DIKuJ0bTQ74P52Of20OiQLq4y1yV4mCZ+v5Pcb2JUDCyJCUfy EcQyocBctyUSNKGcTLEBaHfaChM2FLim+wAilFJFQCJA+OGv/Dz+FPv2ZLj1FreFI6qn ITk3jItV7pOiEKzBowbJXmoamQaTxoUNvJuKD/GI5ALqbI+WDZzV6FS+hNa0NM5UNd6n E6GPsLKOyWobX23bwj7taz7zUQauC9/zmIZriwbT1egzDmyIejwXjQ1Jf4ToLfVsbMNz iPfw== 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 z6-20020a633306000000b00541710a9d44si2167252pgz.114.2023.07.20.21.05.42; Thu, 20 Jul 2023 21:05: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 S229689AbjGUDpf (ORCPT + 99 others); Thu, 20 Jul 2023 23:45:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58612 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230077AbjGUDpQ (ORCPT ); Thu, 20 Jul 2023 23:45:16 -0400 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2179F272C for ; Thu, 20 Jul 2023 20:45:15 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.53]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4R6b5j6SfrzrRqs; Fri, 21 Jul 2023 11:44:25 +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; Fri, 21 Jul 2023 11:45:11 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v4 06/10] mm/page_io: use a folio in sio_read_complete() Date: Fri, 21 Jul 2023 11:44:47 +0800 Message-ID: <20230721034451.16412-7-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230721034451.16412-1-zhangpeng362@huawei.com> References: <20230721034451.16412-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) 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: 1772001538046091973 X-GMAIL-MSGID: 1772001538046091973 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 Fri Jul 21 03:44:48 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "zhangpeng (AS)" X-Patchwork-Id: 123551 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3556792vqt; Thu, 20 Jul 2023 21:45:42 -0700 (PDT) X-Google-Smtp-Source: APBJJlE/ckzz2pIgppowOKUBkM+m/tFs3ulOUdg0AL3HF6QTzaB4OMEife4dQopa0ig9QTepzjjw X-Received: by 2002:a05:6808:192a:b0:3a3:f237:61db with SMTP id bf42-20020a056808192a00b003a3f23761dbmr1413238oib.11.1689914742231; Thu, 20 Jul 2023 21:45:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689914742; cv=none; d=google.com; s=arc-20160816; b=sNTro1EmS/g0il/JLkQjGmBdCNvMl2vkXJV/ir7GDdRNpWn0VRRhxQaATENStc/fCl IVdGv/OjDAetPSLU8HoHNvBR9oV/eshDhV8ewmkHfgFGjNovQtVDcdIOZo+rFQj59cDq ThBaPT2tXDXmyZ4Y9rHfghjroD3opgDTR51H7SY51+ziP89N0ysvjcC3sThEaaCM6lfM DAtoYHnXxJMoeDQG+FqbpvsOB8AeXOJzqsWh2nSbRBfMjQm1UkLmg9awYYhHo06dYMM3 XWa54/oQB/ben6xUA8w8FsumGZsQrpyN2X4s0BPAHT6Mz36QFDpOEntF4auxhyRWr9/2 qtmQ== 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=BFFl8P0cMNJhGO9NfhszdLf8Lf2oAMrQfB90HH9zw0tgb8usuECJUzBIWNcGGnf1XE mWdQh8yRRqkmfwN5s2AtcpeyWOd9q9nFccK3E4l5ojhCkToT32Utv38O/JGo8/risQUi podHrFsKaTfLp4ZdhUezOoDPZJ+08cyoNNQlFx012ur2L5o8uOfXPRnddzWiPky+8JrC CoWg2rdR3lAZBC3TigKWxLBNwJn+lY3lnl3iJcf91md+1X1iJdvbDoM3tODIzy2TL7q3 qcinOqwTHXV1a+QS66JWPs0Jpq7EEHKCub9C52D3y+IuieyxXAI4Jrv+uBjloxKU8y93 Nmxw== 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 n23-20020a63f817000000b0055390839e3dsi2062844pgh.528.2023.07.20.21.45.28; Thu, 20 Jul 2023 21:45:42 -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 S229679AbjGUDpa (ORCPT + 99 others); Thu, 20 Jul 2023 23:45:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58610 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230072AbjGUDpP (ORCPT ); Thu, 20 Jul 2023 23:45:15 -0400 Received: from szxga08-in.huawei.com (szxga08-in.huawei.com [45.249.212.255]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 12BBA1BFC for ; Thu, 20 Jul 2023 20:45:15 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.56]) by szxga08-in.huawei.com (SkyGuard) with ESMTP id 4R6b5l2VVVz18M5x; Fri, 21 Jul 2023 11:44:27 +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; Fri, 21 Jul 2023 11:45:12 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v4 07/10] mm/page_io: use a folio in swap_writepage_bdev_sync() Date: Fri, 21 Jul 2023 11:44:48 +0800 Message-ID: <20230721034451.16412-8-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230721034451.16412-1-zhangpeng362@huawei.com> References: <20230721034451.16412-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) 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: 1772004040333650605 X-GMAIL-MSGID: 1772004040333650605 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 Fri Jul 21 03:44:49 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "zhangpeng (AS)" X-Patchwork-Id: 123541 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3540979vqt; Thu, 20 Jul 2023 21:02:28 -0700 (PDT) X-Google-Smtp-Source: APBJJlHSH7M1ie1yNixrz2OBLONlfPSv9iPapt/pj+JH1X/OIUr3tg6jKORQwQhQVn1rWTL56oBl X-Received: by 2002:a5e:8e06:0:b0:783:6eef:1496 with SMTP id a6-20020a5e8e06000000b007836eef1496mr841830ion.19.1689912148277; Thu, 20 Jul 2023 21:02:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689912148; cv=none; d=google.com; s=arc-20160816; b=Ck0GalcbxC+GI08aAiPt1xalVOeG1rfpPH9xNidVc/BEe89n1bkGSv3oQA0hFOOv7o juokBGv/Pwc1lqv2OSXmlDnT/Ae/BVMeF6URvQdRrpG73l1WMgCzHi3+ybFZkL3pWm2J 22laermXUwi/D1ehTv6D994ofVdN+nAKe80D0L0I4YfeFzTJv0HNMifEzDpoi11tumG1 JRV+biG/L7GUaNWW1+5i2r48Nq3QSp7buF3zMOu9/GnWDdZDFnGEBq1bZlTRy44v3Csv 1W3r5lNH/eabJ+b43NG7gTWyviE1nGdJ6B+vMU20lkoQPDw9ELDuLCBLoqIEM7A7cK9v Gy4g== 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=WgpTMyRgkjgAMNt33zcxOJ3EDrC+WFNYNebvmQ+k1iGwQg4VZm2wjIrUJQ+flmvmZu BSw6w7AHnVDTXvkCMkAQ+JyaTo8HLAz9fBGrozjNU062OEorlSxTZMsUNn4QedKQbQVT 1tQXYJkVhzMcJbTBc6zDBOeSx7K0joGS/uIaIBH+BgSbACyWORLLIPVjbkL3e0lw954J a1O7zyCk7x6ASUZZWLlBnA0qQF8YBjeeedTmgo+zH+9n+2D5JIOj7hR8kaf4NYoXOy7Q vZV43gnRXFZ625WZNWpMiXMyahPtZBvzfuLi8JujA3l4+E8VSZW8Tc0b1CkuBZwWOvol EqNg== 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 e2-20020a637442000000b0055fce913d52si1953114pgn.761.2023.07.20.21.02.14; Thu, 20 Jul 2023 21:02:28 -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 S230025AbjGUDpj (ORCPT + 99 others); Thu, 20 Jul 2023 23:45:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58626 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229797AbjGUDpR (ORCPT ); Thu, 20 Jul 2023 23:45:17 -0400 Received: from szxga08-in.huawei.com (szxga08-in.huawei.com [45.249.212.255]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C675C2729 for ; Thu, 20 Jul 2023 20:45:15 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.54]) by szxga08-in.huawei.com (SkyGuard) with ESMTP id 4R6b5m0YNWz18MB5; Fri, 21 Jul 2023 11:44:28 +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; Fri, 21 Jul 2023 11:45:13 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v4 08/10] mm/page_io: use a folio in swap_writepage_bdev_async() Date: Fri, 21 Jul 2023 11:44:49 +0800 Message-ID: <20230721034451.16412-9-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230721034451.16412-1-zhangpeng362@huawei.com> References: <20230721034451.16412-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) 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: 1772001320654494472 X-GMAIL-MSGID: 1772001320654494472 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 Fri Jul 21 03:44:50 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "zhangpeng (AS)" X-Patchwork-Id: 123554 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3557571vqt; Thu, 20 Jul 2023 21:48:01 -0700 (PDT) X-Google-Smtp-Source: APBJJlFKzxBUTsttlHJcCfOmEHhlcmHYSb37l3SQs7TFXWFmLRsyf150a0TmsvRtnm4du5dvws1X X-Received: by 2002:a17:906:9bcc:b0:991:f7cb:cc3d with SMTP id de12-20020a1709069bcc00b00991f7cbcc3dmr780737ejc.65.1689914881448; Thu, 20 Jul 2023 21:48:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689914881; cv=none; d=google.com; s=arc-20160816; b=B7ghslgRGk/Wxn3oEJWc528zSOAFrRGwqSJpHa8IY5e50aeEHxdGBTL+e+FGMEhSdj /WSQz8A15llUy/aZvWJIoF93IfLuh3VNP5i4blqo/Y9W9ey2+qB/Q0+jPV1prywFf/PV agVM/ff5WEsVHIs/B3fdQa3mcR1BVDPcNxXo2qP2rQH+j2/SuQMWBSQHhfDdusZzkg5o WMGgDHYalxR3JJOehtc9QCT22oLcfm/lSrXffZTXG6E7nmbVht0JCPl13Ko4F3oqkaD/ 7bMAsBwUaWQwZ78y/XNukQn/LA573G0HXoyzJr0hVVwBHhFOuy6XGAc4bFVyPES5jQGb NT/w== 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=2/8lQu2NaqApJJJ+XOK2DzlbE6EAGV4Nr6XhHRmOd70=; fh=q8rOnvZaN5Z50YvgZS1uBArX5ZcEEwPcusRFazgmNUQ=; b=a+Zv13SrH+qQFviRB0BJskE38AadK2iuWLn9aI1FWELfLIQvLOIT6qvR5GrVAEoZM/ Py9NkuscJwjdwQbPKEqiBVC6DCNqKeenLdY5cqTh1cFTeLQ8lsVpBaRiX104STdXIRnf 4OQ5FaWXN2nd06HklLMIrQ3rBUKuUW9eMuRcq5l/Rts+5Gq61cgzEMg0QK0WRoUv8ddb Z3pM9k67ktNsnCU5GwVjnz356mQN8F7w1msRxTzkSDDrtJIcqtZcNCdgG1pbI/RjYfiq KestpSFEHQ+PPCil/VK6o3s2NeV/GHVPIl+GvgSQm7DPOvUNj97Lovdyz7dp8VTnLh90 3oLg== 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 o9-20020a17090608c900b0099325282818si1674763eje.571.2023.07.20.21.47.37; Thu, 20 Jul 2023 21:48:01 -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 S230193AbjGUDpo (ORCPT + 99 others); Thu, 20 Jul 2023 23:45:44 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58630 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229801AbjGUDpR (ORCPT ); Thu, 20 Jul 2023 23:45:17 -0400 Received: from szxga08-in.huawei.com (szxga08-in.huawei.com [45.249.212.255]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6BACF1BFC for ; Thu, 20 Jul 2023 20:45:16 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.57]) by szxga08-in.huawei.com (SkyGuard) with ESMTP id 4R6b5m5fdHz18MC6; Fri, 21 Jul 2023 11:44:28 +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; Fri, 21 Jul 2023 11:45:14 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v4 09/10] mm/page_io: convert count_swpout_vm_event() to take in a folio Date: Fri, 21 Jul 2023 11:44:50 +0800 Message-ID: <20230721034451.16412-10-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230721034451.16412-1-zhangpeng362@huawei.com> References: <20230721034451.16412-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) 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: 1772004186635293387 X-GMAIL-MSGID: 1772004186635293387 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 | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/mm/page_io.c b/mm/page_io.c index 07bad3a4b701..f575c0bf545e 100644 --- a/mm/page_io.c +++ b/mm/page_io.c @@ -205,13 +205,13 @@ 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 +280,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 +339,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 +362,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 Fri Jul 21 03:44:51 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "zhangpeng (AS)" X-Patchwork-Id: 123545 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp3545826vqt; Thu, 20 Jul 2023 21:14:50 -0700 (PDT) X-Google-Smtp-Source: APBJJlFeet/SLg0yZoLk6W2VQ3n1NhByklHMLVXhgww15UNdrMmh3bzR7GmNZ7I6UK3KDtP5ASBw X-Received: by 2002:aa7:c917:0:b0:51d:94d2:ffd2 with SMTP id b23-20020aa7c917000000b0051d94d2ffd2mr535943edt.2.1689912890565; Thu, 20 Jul 2023 21:14:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689912890; cv=none; d=google.com; s=arc-20160816; b=j++xniRlHw0x7sqa02FyuAvPJ8W8pzXS3hwzk+1GJ61up/1A6qV11ISwWNZGRKFtMJ W7klcMFU6EdWaBfVzixnUKoo1PuBKZatoZbU8neuCqi2mXhICVEwsDYgK16RG+b5xy7b M8o0J1JEXjNXM6jeNeIjVnbZ7q6Mci2Do85euH4Y0lvhhPrhXM6nJjXKpJaXI+N2Yu6J mVcWKyZ2m9n73flYq4lStAi3HeW1lSV/3RGkmGl7Jno1nRCSgJRQ99HuBQulX85pDZOl RV1WguqRvVelBSXzI3cQUy1+QQ4iUNtcP52Fai6syY8Rq+E19Xm19cXoHX2c2QrTVgu7 Avyg== 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=KNlRzNfWfPR64nJJeZxoqIl1zjDq2dYg52TSFoUVVk4=; fh=q8rOnvZaN5Z50YvgZS1uBArX5ZcEEwPcusRFazgmNUQ=; b=jCF8dc7AAGH/uvpKV2eTua1DuWerv/mPg7WSTDNVxIbMPfPgHm7OSNxRb/hdjy7dKh P2a+ySqGujd5xUuoLe0mvnZiL0tnaGWLMmX4cn0jNYZFHkh2fKHgLZQUS9snlWN8Gpqc gL1UqspJ1XFCHYP8eMkCU/sxiK6j45L7OUtiPBNpFLFq7Lg80xayWtyyZ/fAbDOE0A2m BCbOQ6STL2O5LrwE36g6AWSkBwLddXOGxxpdfGYR/wTEqk9s2zJqnm3aOjybARJNHjGN 3vomdf8F5HTV2zC60pU/1yuAFiXUaB5JrH+sRiX0EcFos3pV1eSsNN/gx6YeH0r9UMAC PPVg== 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 p16-20020aa7d310000000b0051e24863dd2si1794610edq.377.2023.07.20.21.14.26; Thu, 20 Jul 2023 21:14:50 -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 S229709AbjGUDpx (ORCPT + 99 others); Thu, 20 Jul 2023 23:45:53 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58642 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230104AbjGUDpS (ORCPT ); Thu, 20 Jul 2023 23:45:18 -0400 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A66F1272D for ; Thu, 20 Jul 2023 20:45:17 -0700 (PDT) Received: from kwepemm600020.china.huawei.com (unknown [172.30.72.55]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4R6b5m5KpQzrRqj; Fri, 21 Jul 2023 11:44:28 +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; Fri, 21 Jul 2023 11:45:14 +0800 From: Peng Zhang To: , , CC: , , , , , ZhangPeng Subject: [PATCH v4 10/10] mm/page_io: convert bio_associate_blkg_from_page() to take in a folio Date: Fri, 21 Jul 2023 11:44:51 +0800 Message-ID: <20230721034451.16412-11-zhangpeng362@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230721034451.16412-1-zhangpeng362@huawei.com> References: <20230721034451.16412-1-zhangpeng362@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) 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: 1772002099253845464 X-GMAIL-MSGID: 1772002099253845464 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 f575c0bf545e..fe4c21af23f2 100644 --- a/mm/page_io.c +++ b/mm/page_io.c @@ -215,12 +215,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; @@ -230,7 +230,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 { @@ -338,7 +338,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); @@ -361,7 +361,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);