All of lore.kernel.org
 help / color / mirror / Atom feed
From: Qu Wenruo <wqu@suse.com>
To: linux-btrfs@vger.kernel.org
Subject: [PATCH RFC 3/8] btrfs: make compress_file_range() to be subpage compatible
Date: Wed, 23 Jun 2021 13:55:24 +0800	[thread overview]
Message-ID: <20210623055529.166678-4-wqu@suse.com> (raw)
In-Reply-To: <20210623055529.166678-1-wqu@suse.com>

In function compress_file_range(), then the compression is finished, the
function just round up @total_in to PAGE_SIZE.

This is fine for regular sectorsize == PAGE_SIZE case, but not for
subpage.

Just change the ALIGN(, PAGE_SIZE) to round_up(, sectorsize) so that
both regular sectorsize and subpage sectorsize will be happy.

Signed-off-by: Qu Wenruo <wqu@suse.com>
---
 fs/btrfs/inode.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index e102e3672475..30cb8b1fc067 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -759,7 +759,7 @@ static noinline int compress_file_range(struct async_chunk *async_chunk)
 		 * win, compare the page count read with the blocks on disk,
 		 * compression must free at least one sector size
 		 */
-		total_in = ALIGN(total_in, PAGE_SIZE);
+		total_in = round_up(total_in, fs_info->sectorsize);
 		if (total_compressed + blocksize <= total_in) {
 			compressed_extents++;
 
-- 
2.32.0


  parent reply	other threads:[~2021-06-23  5:55 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-23  5:55 [PATCH RFC 0/8] btrfs: experimental compression support for subpage Qu Wenruo
2021-06-23  5:55 ` [PATCH RFC 1/8] btrfs: don't pass compressed pages to btrfs_writepage_endio_finish_ordered() Qu Wenruo
2021-06-23  5:55 ` [PATCH RFC 2/8] btrfs: make btrfs_subpage_end_and_test_writer() to handle pages not locked by btrfs_page_start_writer_lock() Qu Wenruo
2021-06-23  5:55 ` Qu Wenruo [this message]
2021-06-23  5:55 ` [PATCH RFC 4/8] btrfs: make btrfs_submit_compressed_write() to be subpage compatible Qu Wenruo
2021-06-23  5:55 ` [PATCH RFC 5/8] btrfs: use async_chunk::async_cow to replace the confusing pending pointer Qu Wenruo
2021-06-23  5:55 ` [PATCH RFC 6/8] btrfs: make end_compressed_bio_writeback() to be subpage compatble Qu Wenruo
2021-06-23  5:55 ` [PATCH RFC 7/8] btrfs: make extent_write_locked_range() to be subpage compatible Qu Wenruo
2021-07-05 12:43   ` Qu Wenruo
2021-06-23  5:55 ` [PATCH RFC 8/8] btrfs: only allow subpage compression if the range fully covers the first page Qu Wenruo
2021-06-23 21:23 ` [PATCH RFC 0/8] btrfs: experimental compression support for subpage David Sterba
2021-06-24  1:10   ` Qu Wenruo
2021-06-23 22:37 ` David Sterba
2021-06-23 22:54   ` Qu Wenruo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210623055529.166678-4-wqu@suse.com \
    --to=wqu@suse.com \
    --cc=linux-btrfs@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.