On 2017年12月12日 18:22, Juergen Sauer wrote:
> Hi collegues,
> this morning we've got a problm with btrfs in Debian Stable.
> 
> Yesterday we had our fs filled below 30% space usage.
> No further usage came in the usage is nearly the same, but ...
> 
> # df -h .
> Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
> /dev/vdb1      483G    483G  148K  100% /mnt
> 
> # btrfs fi df .
> Data, single: total=480.97GiB, used=480.97GiB
> System, single: total=32.00MiB, used=96.00KiB
> Metadata, single: total=2.00GiB, used=1.29GiB
> GlobalReserve, single: total=512.00MiB, used=0.00B
> 
> # btrfs fi show .
> Label: 'AXSDaten'  uuid: fde7e31f-4127-4a9d-b7c6-774ceff8f7c1
>         Total devices 1 FS bytes used 482.26GiB
>         devid    1 size 483.00GiB used 483.00GiB path /dev/vdb1
> 
> # btrfs --version
> btrfs-progs v4.7.3
> 
> we found exerpt of kernel log:
> [  199.391577] attempt to access beyond end of device
> [  199.391598] vdb1: rw=536870984, want=1012922336, limit=1012922335

I doubt if it's just a off-by-one bug.

It can be that, btrfs think it's enlarged while partition table doesn't
think so, so btrfs tries to submit write beyond the partition end.

> [  199.391615] BTRFS error (device vdb1): bdev /dev/vdb1 errs: wr 301,
> rd 0, flush 0, corrupt 0, gen 0
> r
> If I interpret the log right, on the FS the kernel wants to write on
> block  1012922336, but the fs was created with max 1012922335 blocks.
> 
> Looks to us here like a typical off-by-one error on accessing the last
> block of device.
> 
> This error was repeating under ff. conditions:
> - shutdown the virtual server (kvm),
> - extend the physical file of the according virtual hdd by 20% (from 483
> Gib to 520 GiB)
> - restart virtual server
> - fixed partion size (parted), mounted
> - called btrfs fi resize max on the corresponding mount point

The following info is needed to debug the problem.

1) Chunk tree dump of the btrfs:
   # btrfs inspect dump-tree -t 3 /dev/vdb1

2) Super dump of the btrfs:
   # btrfs inspect dump-super -f /dev/vdb1

3) Kernel version
   # uname -a
   (Well, I'm not a Debian user so I don't really know the kernel
    version just by "Debian Stable")

4) Partition info
   Better with binary output in byte unit.

Thanks,
Qu

> 
> Error came back, nearly at once.
> 
> Any other Idea to fix this error?
> 
> mit freundlichen Grüßen
> Jürgen Sauer
> 

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to