Message ID | 943938ff75580b210eebf6c885659dd95f029486.1712126039.git.sweettea-kernel@dorminy.me (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | fiemap extension for more physical information | expand |
On Fri, Apr 05, 2024 at 01:17:45PM -0600, Andreas Dilger wrote: > On Apr 3, 2024, at 1:22 AM, Sweet Tea Dorminy <sweettea-kernel@dorminy.me> wrote: > > > > Signed-off-by: Sweet Tea Dorminy <sweettea-kernel@dorminy.me> > > --- > > fs/bcachefs/fs.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/fs/bcachefs/fs.c b/fs/bcachefs/fs.c > > index d2793bae842d..54f613f977b4 100644 > > --- a/fs/bcachefs/fs.c > > +++ b/fs/bcachefs/fs.c > > @@ -921,7 +921,7 @@ static int bch2_fill_extent(struct bch_fs *c, > > flags2 |= FIEMAP_EXTENT_UNWRITTEN; > > > > if (p.crc.compression_type) { > > - flags2 |= FIEMAP_EXTENT_ENCODED; > > + flags2 |= FIEMAP_EXTENT_DATA_COMPRESSED; > > (defect) This should *also* set FIEMAP_EXTENT_ENCODED in this case, > along with FIEMAP_EXTENT_DATA_COMPRESSED. Both for compatibility with > older code that doesn't understand FIEMAP_EXTENT_DATA_COMPRESSED, and > because the data still cannot be read directly from the volume when it > is not mounted. > > Probably Kent should chime in here with what needs to be done to set > the phys_len properly for bcachefs, or leave this patch out of your > series and let him submit it directly. With proposed wrapper in the > first patch of the series there isn't a hard requirement to change > all of the filesystems in one shot. You get phys len from crc.compressed_size - that's always guaranteed, even if it's not compressed
diff --git a/fs/bcachefs/fs.c b/fs/bcachefs/fs.c index d2793bae842d..54f613f977b4 100644 --- a/fs/bcachefs/fs.c +++ b/fs/bcachefs/fs.c @@ -921,7 +921,7 @@ static int bch2_fill_extent(struct bch_fs *c, flags2 |= FIEMAP_EXTENT_UNWRITTEN; if (p.crc.compression_type) { - flags2 |= FIEMAP_EXTENT_ENCODED; + flags2 |= FIEMAP_EXTENT_DATA_COMPRESSED; phys_len = p.crc.compressed_size << 9; } else offset += p.crc.offset;
Signed-off-by: Sweet Tea Dorminy <sweettea-kernel@dorminy.me> --- fs/bcachefs/fs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)