Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp2814877pxu; Mon, 7 Dec 2020 17:02:28 -0800 (PST) X-Google-Smtp-Source: ABdhPJxGrxkY8i1V0DiujRWu7V7FPotDWolTq0UAjEOPuSU+xpU6xVirwrNJtURzKRcX8+/ej/3w X-Received: by 2002:aa7:cad2:: with SMTP id l18mr22457562edt.183.1607389347996; Mon, 07 Dec 2020 17:02:27 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1607389347; cv=none; d=google.com; s=arc-20160816; b=rK0UXvUHanK3Wvj/9PZOn4hFkljBvP/TfQ+tXg/9wAOwi5J7ftYLn9rCC0Z8gYT7ts cR2ggxn0zuAhX//iUw5wR31Tm0AMA7lcwmsgXqqjn8fPjyN0BtNIxOtJLKd1Dsmq3Z3u bzWnCB2e77tHxy0cX4CHNA8UgAtE0cztsNBN8JwCl5TY0h6UD0fCMWUPyG0RptThE3Z4 /JqeFmJvs0Ui+oZU16RP1c/B4UfsKWCfwSTFJZFTL10/VFWFgVxckoceJ3RfYyT0LzjO KWtwr20Rv9V1pUXfvLnFVSmou5qy/oIZz3VxIuaolNahOGnTt+JVnRB3DqS3IcohGhoj Q9TA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject; bh=2iWptE+BU2/vZ+HSPKFRndYrclZG/CkZ3z8wgvqJHYU=; b=jd41w0/Dfsa8C5zmBUUlxO5lAq8iK5cLbW7TLRV8n76M1h3XX/ltgZN9iv+gaCItQv +hGXBoOeFIsC3wbpbEpBkZX8AcNCnNBrJ3BZM/e+qMJdKisDwrddCIS1UwvkeZhPi/lF OkOV73C5x52tifqnN+7bt9ExuTFwFrT/711EUHlLr54AqMJ1Gib/fSP7czyTh9J51t0m K3t3gWT+mZjpyD010/PEjzCXq6tZkq/yIYxAg8heBcGhgU5zg9N4/wAmYLd3mqgwb+Mf fA+DSLWL1QHIbiRXRzSHcnNZdtX5mSJ7uu52YCXcSqgOvT8qrHHw85KUomhHELTsXMJ2 e1+A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id dk11si8977804edb.594.2020.12.07.17.02.04; Mon, 07 Dec 2020 17:02:27 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726709AbgLHA7z (ORCPT + 99 others); Mon, 7 Dec 2020 19:59:55 -0500 Received: from szxga05-in.huawei.com ([45.249.212.191]:9550 "EHLO szxga05-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726545AbgLHA7z (ORCPT ); Mon, 7 Dec 2020 19:59:55 -0500 Received: from DGGEMS401-HUB.china.huawei.com (unknown [172.30.72.59]) by szxga05-in.huawei.com (SkyGuard) with ESMTP id 4Cqhd54FxVzM1N0; Tue, 8 Dec 2020 08:58:33 +0800 (CST) Received: from [10.136.114.67] (10.136.114.67) by smtp.huawei.com (10.3.19.201) with Microsoft SMTP Server (TLS) id 14.3.487.0; Tue, 8 Dec 2020 08:59:12 +0800 Subject: Re: [f2fs-dev] [PATCH v5 RESEND] f2fs: compress: add compress_inode to cache compressed blocks To: Eric Biggers CC: , , References: <20201207095220.73093-1-yuchao0@huawei.com> From: Chao Yu Message-ID: <8cccbe7f-94c0-ddd0-4da5-234d02839ae0@huawei.com> Date: Tue, 8 Dec 2020 08:59:12 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [10.136.114.67] X-CFilter-Loop: Reflected Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2020/12/8 2:13, Eric Biggers wrote: > On Mon, Dec 07, 2020 at 05:52:20PM +0800, Chao Yu wrote: >> diff --git a/Documentation/filesystems/f2fs.rst b/Documentation/filesystems/f2fs.rst >> index dae15c96e659..fd413d319e93 100644 >> --- a/Documentation/filesystems/f2fs.rst >> +++ b/Documentation/filesystems/f2fs.rst >> @@ -268,6 +268,9 @@ compress_mode=%s Control file compression mode. This supports "fs" and "user" >> choosing the target file and the timing. The user can do manual >> compression/decompression on the compression enabled files using >> ioctls. >> +compress_cache Support to use address space of inner inode to cache >> + compressed block, in order to improve cache hit ratio of >> + random read. > > What is an "inner inode"? Mount options should be understandable without > understanding filesystem implementation details. I'd like to use "a filesystem managed inode" instead, if there is no further comment. > >> +const struct address_space_operations f2fs_compress_aops = { >> + .releasepage = f2fs_release_page, >> + .invalidatepage = f2fs_invalidate_page, >> +}; >> + >> +struct address_space *COMPRESS_MAPPING(struct f2fs_sb_info *sbi) >> +{ >> + return sbi->compress_inode->i_mapping; >> +} >> + >> +void invalidate_compress_page(struct f2fs_sb_info *sbi, block_t blkaddr) >> +{ >> + if (!sbi->compress_inode) >> + return; >> + invalidate_mapping_pages(COMPRESS_MAPPING(sbi), blkaddr, blkaddr); >> +} > > Global functions should have the "f2fs_" prefix. Yup, Thanks, > > - Eric > . >