I have a btrfs filesystem of about 7G in a 10G image file `img.btrfs` (I shrank it using `btrfs fi resize -3G /mnt`). How can I find the total size (end byte offset) of the filesystem, so that I can shrink the image size? I.e. find out `$SIZE` for

```
truncate -s $SIZE img.btrfs

```

A mechanism that applies to any other filesystem inside an image file would be a plus.

**NOTE**: one thing that *does* work is:

```
INITIAL=$(stat -c %s img.btrfs)
mount img.btrfs /mnt
btrfs fi resize -$NBYTES /mnt
umount /mnt
truncate -s $((INITIAL - NBYTES + 1024*1024)) img.btrfs
mount /img.btrfs /mnt
btrfs fi resize max /mnt

```

i.e. shrink the btrfs, shrink the image by a little bit less (leaving a 1M overhead), then grow the btrfs to the maximum afforded by the shrunk image.