fs/btrfs/extent_io.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
The assert is only true in !subpage case. We can either fix it this way
or completely remove it.
This fixes and should be folded into:
btrfs: fix broken drop_caches on extent buffer folios
Signed-off-by: Daniel Vacek <neelx@suse.com>
---
fs/btrfs/extent_io.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c
index 80a8563a25add..3b3f73894ffe2 100644
--- a/fs/btrfs/extent_io.c
+++ b/fs/btrfs/extent_io.c
@@ -3411,7 +3411,7 @@ struct extent_buffer *alloc_extent_buffer(struct btrfs_fs_info *fs_info,
continue;
}
- ASSERT(!folio_test_private(folio));
+ ASSERT(!btrfs_meta_is_subpage(fs_info) && !folio_test_private(folio));
folio_put(folio);
eb->folios[i] = NULL;
}
--
2.47.2
在 2025/5/12 22:58, Daniel Vacek 写道: > The assert is only true in !subpage case. We can either fix it this way > or completely remove it. > > This fixes and should be folded into: > btrfs: fix broken drop_caches on extent buffer folios > > Signed-off-by: Daniel Vacek <neelx@suse.com> Looks good to me. Although I agree with Boris, it's better to remove the ASSERT(). Subpage is no longer a corner/minor usage anymore, we shouldn't treat subpage and normal cases differently when possible. Reviewed-by: Qu Wenruo <wqu@suse.com> Thanks, Qu > --- > fs/btrfs/extent_io.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c > index 80a8563a25add..3b3f73894ffe2 100644 > --- a/fs/btrfs/extent_io.c > +++ b/fs/btrfs/extent_io.c > @@ -3411,7 +3411,7 @@ struct extent_buffer *alloc_extent_buffer(struct btrfs_fs_info *fs_info, > continue; > } > > - ASSERT(!folio_test_private(folio)); > + ASSERT(!btrfs_meta_is_subpage(fs_info) && !folio_test_private(folio)); > folio_put(folio); > eb->folios[i] = NULL; > }
On Mon, May 12, 2025 at 03:28:50PM +0200, Daniel Vacek wrote: > The assert is only true in !subpage case. We can either fix it this way > or completely remove it. > > This fixes and should be folded into: > btrfs: fix broken drop_caches on extent buffer folios > > Signed-off-by: Daniel Vacek <neelx@suse.com> I would lean towards removing it, personally. But LGTM, thanks. Reviewed-by: Boris Burkov <boris@bur.io> > --- > fs/btrfs/extent_io.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c > index 80a8563a25add..3b3f73894ffe2 100644 > --- a/fs/btrfs/extent_io.c > +++ b/fs/btrfs/extent_io.c > @@ -3411,7 +3411,7 @@ struct extent_buffer *alloc_extent_buffer(struct btrfs_fs_info *fs_info, > continue; > } > > - ASSERT(!folio_test_private(folio)); > + ASSERT(!btrfs_meta_is_subpage(fs_info) && !folio_test_private(folio)); > folio_put(folio); > eb->folios[i] = NULL; > } > -- > 2.47.2 >
On Mon, 12 May 2025 at 19:53, Boris Burkov <boris@bur.io> wrote: > > On Mon, May 12, 2025 at 03:28:50PM +0200, Daniel Vacek wrote: > > The assert is only true in !subpage case. We can either fix it this way > > or completely remove it. > > > > This fixes and should be folded into: > > btrfs: fix broken drop_caches on extent buffer folios > > > > Signed-off-by: Daniel Vacek <neelx@suse.com> > > I would lean towards removing it, personally. But LGTM, thanks. Good. Let's remove it then. Will you amend your patch? > Reviewed-by: Boris Burkov <boris@bur.io> > > > --- > > fs/btrfs/extent_io.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c > > index 80a8563a25add..3b3f73894ffe2 100644 > > --- a/fs/btrfs/extent_io.c > > +++ b/fs/btrfs/extent_io.c > > @@ -3411,7 +3411,7 @@ struct extent_buffer *alloc_extent_buffer(struct btrfs_fs_info *fs_info, > > continue; > > } > > > > - ASSERT(!folio_test_private(folio)); > > + ASSERT(!btrfs_meta_is_subpage(fs_info) && !folio_test_private(folio)); > > folio_put(folio); > > eb->folios[i] = NULL; > > } > > -- > > 2.47.2 > >
© 2016 - 2026 Red Hat, Inc.