All of lore.kernel.org
 help / color / mirror / Atom feed
* strangely large space_info value in dmesg
@ 2021-09-16 12:32 Eli V
  2021-09-16 12:38 ` Qu Wenruo
  0 siblings, 1 reply; 3+ messages in thread
From: Eli V @ 2021-09-16 12:32 UTC (permalink / raw)
  To: linux-btrfs

I just upgraded one of my btrfs systems from 4.19 kernel to 5.10.46
dmesg is outputing the below messages, I assume because of the
enospc_debug mount option I've had in fstab for quite some time now.
Didn't check all of the numbers, but the first line free value does
seem erroneous, unless that's some sort of theoretical maximum being
displayed. This is a fairly large filesystem at 382TB (btrfs usage
below,) but that's a lot more free then total space:

Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): space_info 4 has
18446743694945091584 free, is not full
[Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): space_info
total=955742420992, used=468888780800, pinned=2666528768,
reserved=360448000, may_use=862591057920, readonly=65536
[Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): global_block_rsv:
size 536870912 reserved 536870912
[Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): trans_block_rsv:
size 1048576 reserved 1048576
[Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): chunk_block_rsv:
size 0 reserved 0
[Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): delayed_block_rsv:
size 0 reserved 0
[Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): delayed_refs_rsv:
size 862469488640 reserved 862052614144

$ btrfs filesystem usage -T /mirror
Overall:
    Device size:                 382.02TiB
    Device allocated:            380.64TiB
    Device unallocated:            1.38TiB
    Device missing:                  0.00B
    Used:                        338.61TiB
    Free (estimated):             42.52TiB      (min: 41.83TiB)
    Free (statfs, df):            42.52TiB
    Data ratio:                       1.00
    Metadata ratio:                   2.00
    Global reserve:              512.00MiB      (used: 0.00B)
    Multiple profiles:                  no

            Data      Metadata  System
Id Path     single    RAID1     RAID1     Unallocated
-- -------- --------- --------- --------- -----------
 1 /dev/sdb  27.12TiB  59.01GiB         -   105.00GiB
 2 /dev/sdc  27.15TiB  78.00GiB         -    58.00GiB
 3 /dev/sdd  36.12TiB 101.00GiB         -   169.00GiB
 4 /dev/sde  36.18TiB 126.00GiB         -    80.00GiB
 5 /dev/sdf  54.15TiB 188.06GiB  64.00MiB   244.00GiB
 6 /dev/sdg  54.05TiB 293.03GiB   8.00MiB   239.00GiB
 7 /dev/sdh  72.05TiB 486.06GiB 104.00MiB   246.00GiB
 8 /dev/sdi  72.07TiB 449.04GiB  32.00MiB   270.00GiB
-- -------- --------- --------- --------- -----------
   Total    378.90TiB 890.10GiB 104.00MiB     1.38TiB
   Used     337.76TiB 436.91GiB  68.69MiB

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: strangely large space_info value in dmesg
  2021-09-16 12:32 strangely large space_info value in dmesg Eli V
@ 2021-09-16 12:38 ` Qu Wenruo
  2021-09-17 11:09   ` David Sterba
  0 siblings, 1 reply; 3+ messages in thread
From: Qu Wenruo @ 2021-09-16 12:38 UTC (permalink / raw)
  To: Eli V, linux-btrfs



On 2021/9/16 20:32, Eli V wrote:
> I just upgraded one of my btrfs systems from 4.19 kernel to 5.10.46
> dmesg is outputing the below messages, I assume because of the
> enospc_debug mount option I've had in fstab for quite some time now.
> Didn't check all of the numbers, but the first line free value does
> seem erroneous, unless that's some sort of theoretical maximum being
> displayed. This is a fairly large filesystem at 382TB (btrfs usage
> below,) but that's a lot more free then total space:
>
> Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): space_info 4 has
> 18446743694945091584 free, is not full

This is space info dump, normally meaning you're hitting ENOSPC.

The free value has underflow, we should output it in s64 other than u64.

The free space should be -378764460032.

But if you see no problem, it means we just hit transient ENOSPC during
some operations and can allocate new space for it.

Thus it's really enospc_debug causing some debug output.

Thanks,
Qu

> [Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): space_info
> total=955742420992, used=468888780800, pinned=2666528768,
> reserved=360448000, may_use=862591057920, readonly=65536
> [Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): global_block_rsv:
> size 536870912 reserved 536870912
> [Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): trans_block_rsv:
> size 1048576 reserved 1048576
> [Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): chunk_block_rsv:
> size 0 reserved 0
> [Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): delayed_block_rsv:
> size 0 reserved 0
> [Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): delayed_refs_rsv:
> size 862469488640 reserved 862052614144
>
> $ btrfs filesystem usage -T /mirror
> Overall:
>      Device size:                 382.02TiB
>      Device allocated:            380.64TiB
>      Device unallocated:            1.38TiB
>      Device missing:                  0.00B
>      Used:                        338.61TiB
>      Free (estimated):             42.52TiB      (min: 41.83TiB)
>      Free (statfs, df):            42.52TiB
>      Data ratio:                       1.00
>      Metadata ratio:                   2.00
>      Global reserve:              512.00MiB      (used: 0.00B)
>      Multiple profiles:                  no
>
>              Data      Metadata  System
> Id Path     single    RAID1     RAID1     Unallocated
> -- -------- --------- --------- --------- -----------
>   1 /dev/sdb  27.12TiB  59.01GiB         -   105.00GiB
>   2 /dev/sdc  27.15TiB  78.00GiB         -    58.00GiB
>   3 /dev/sdd  36.12TiB 101.00GiB         -   169.00GiB
>   4 /dev/sde  36.18TiB 126.00GiB         -    80.00GiB
>   5 /dev/sdf  54.15TiB 188.06GiB  64.00MiB   244.00GiB
>   6 /dev/sdg  54.05TiB 293.03GiB   8.00MiB   239.00GiB
>   7 /dev/sdh  72.05TiB 486.06GiB 104.00MiB   246.00GiB
>   8 /dev/sdi  72.07TiB 449.04GiB  32.00MiB   270.00GiB
> -- -------- --------- --------- --------- -----------
>     Total    378.90TiB 890.10GiB 104.00MiB     1.38TiB
>     Used     337.76TiB 436.91GiB  68.69MiB
>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: strangely large space_info value in dmesg
  2021-09-16 12:38 ` Qu Wenruo
@ 2021-09-17 11:09   ` David Sterba
  0 siblings, 0 replies; 3+ messages in thread
From: David Sterba @ 2021-09-17 11:09 UTC (permalink / raw)
  To: Qu Wenruo; +Cc: Eli V, linux-btrfs

On Thu, Sep 16, 2021 at 08:38:52PM +0800, Qu Wenruo wrote:
> 
> 
> On 2021/9/16 20:32, Eli V wrote:
> > I just upgraded one of my btrfs systems from 4.19 kernel to 5.10.46
> > dmesg is outputing the below messages, I assume because of the
> > enospc_debug mount option I've had in fstab for quite some time now.
> > Didn't check all of the numbers, but the first line free value does
> > seem erroneous, unless that's some sort of theoretical maximum being
> > displayed. This is a fairly large filesystem at 382TB (btrfs usage
> > below,) but that's a lot more free then total space:
> >
> > Thu Sep 16 06:17:55 2021] BTRFS info (device sdb): space_info 4 has
> > 18446743694945091584 free, is not full
> 
> This is space info dump, normally meaning you're hitting ENOSPC.
> 
> The free value has underflow, we should output it in s64 other than u64.
> 
> The free space should be -378764460032.

It's still a bit weird to see a negative number but as you found out
it's due to overcommit so it's possible.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-09-17 11:09 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-16 12:32 strangely large space_info value in dmesg Eli V
2021-09-16 12:38 ` Qu Wenruo
2021-09-17 11:09   ` David Sterba

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.