[4.9] btrfs check --repair looping over file extent discount errors
Hello,
backup harddisk connected via eSATA. Hard kernel hang, mouse pointer freezing two times seemingly after finishing /home backup and creating new snapshot on source BTRFS SSD RAID 1 for / in order to backup it. I did scrubbed / and it appears to be okay, but I didn´t run btrfs check on it. Anyway deleting that subvolume works and I as I suspected an issue with the backup disk I started with that one.
I got
merkaba:~> btrfs --version
btrfs-progs v4.9.1
merkaba:~> cat /proc/version
Linux version 4.9.20-tp520-btrfstrim+ (martin@merkaba) (gcc version 6.3.0 20170321 (Debian 6.3.0-11) ) #6 SMP PREEMPT Mon Apr 3 11:42:17 CEST 2017
merkaba:~> btrfs fi sh feenwald
Label: 'feenwald' uuid: […]
Total devices 1 FS bytes used 1.26TiB
devid 1 size 2.73TiB used 1.27TiB path /dev/sdc1
on Debian unstable on ThinkPad T520 connected via eSATA port on Minidock.
I am now running btrfs check --repair on it after without --repair the command reported file extent discount errors and it appears to loop on the same file extent discount errors for ages. Any advice?
I do have another backup harddisk with BTRFS that worked fine today, so I do not need to recover that drive immediately. I may let it run for a little more time, but then will abort the repair process as I really think its looping just over and over and over the same issues again. At some time I may just copy all the stuff that is on that harddisk, but not on the other one over to the other one and mkfs.btrfs the filesystem again, but I´d rather like to know whats happening here.
Here is output:
merkaba:~> btrfs check --repair /dev/sdc1
enabling repair mode
Checking filesystem on /dev/sdc1
[… UUID ommited …]
checking extents
Fixed 0 roots.
checking free space cache
cache and super generation don't match, space cache will be invalidated checking fs roots
root 257 inode 4979842 errors 100, file extent discount Found file extent holes:
start: 0, len: 78798848
root 257 inode 4980212 errors 100, file extent discount
Found file extent holes:
start: 0, len: 143360
root 257 inode 4980214 errors 100, file extent discount
Found file extent holes:
start: 0, len: 4227072
root 257 inode 4979842 errors 100, file extent discount
Found file extent holes:
start: 0, len: 78798848
root 257 inode 4980212 errors 100, file extent discount
Found file extent holes:
start: 0, len: 143360
root 257 inode 4980214 errors 100, file extent discount
Found file extent holes:
start: 0, len: 4227072
root 257 inode 4979842 errors 100, file extent discount
Found file extent holes:
start: 0, len: 78798848
root 257 inode 4980212 errors 100, file extent discount
Found file extent holes:
start: 0, len: 143360
root 257 inode 4980214 errors 100, file extent discount
Found file extent holes:
start: 0, len: 4227072
root 257 inode 4979842 errors 100, file extent discount
Found file extent holes:
start: 0, len: 78798848
root 257 inode 4980212 errors 100, file extent discount
Found file extent holes:
start: 0, len: 143360
root 257 inode 4980214 errors 100, file extent discount
Found file extent holes:
start: 0, len: 4227072
[… hours later …]
root 257 inode 4979842 errors 100, file extent discount
Found file extent holes:
start: 0, len: 78798848
root 257 inode 4980212 errors 100, file extent discount
Found file extent holes:
start: 0, len: 143360
root 257 inode 4980214 errors 100, file extent discount
Found file extent holes:
start: 0, len: 4227072
root 257 inode 4979842 errors 100, file extent discount
Found file extent holes:
start: 0, len: 78798848
root 257 inode 4980212 errors 100, file extent discount
Found file extent holes:
start: 0, len: 143360
root 257 inode 4980214 errors 100, file extent discount
Found file extent holes:
start: 0, len: 4227072
root 257 inode 4979842 errors 100, file extent discount
Found file extent holes:
start: 0, len: 78798848
root 257 inode 4980212 errors 100, file extent discount
Found file extent holes:
start: 0, len: 143360
root 257 inode 4980214 errors 100, file extent discount
Found file extent holes:
start: 0, len: 4227072This basically seems to go on like this forever.
Thanks,
Signature · 1 line
Martin
Hello.
I am planning to copy of important data on the disk with the broken filesystem to the disk with the good filesystem and then reformatitting the disk with the broken filesystem soon, probably in the course of the day… so in case you want any debug information before that, let me know ASAP.
Thanks,
Martin
Martin Steigerwald - 14.04.17, 21:35:
Quoted 117 lines
Hello,
backup harddisk connected via eSATA. Hard kernel hang, mouse pointer freezing two times seemingly after finishing /home backup and creating new snapshot on source BTRFS SSD RAID 1 for / in order to backup it. I did scrubbed / and it appears to be okay, but I didn´t run btrfs check on it. Anyway deleting that subvolume works and I as I suspected an issue with the backup disk I started with that one.
I got
merkaba:~> btrfs --version
btrfs-progs v4.9.1merkaba:~> cat
/proc/version
Linux version 4.9.20-tp520-btrfstrim+ (martin@merkaba) (gcc version 6.3.0 20170321 (Debian 6.3.0-11) ) #6 SMP PREEMPT Mon Apr 3 11:42:17 CEST 2017merkaba:~> btrfs fi sh feenwald
Label: 'feenwald' uuid: […]
Total devices 1 FS bytes used 1.26TiB
devid 1 size 2.73TiB used 1.27TiB path/dev/sdc1on Debian unstable on ThinkPad T520 connected via eSATA port on Minidock.
I am now running btrfs check --repair on it after without --repair the command reported file extent discount errors and it appears to loop on the same file extent discount errors for ages. Any advice?
I do have another backup harddisk with BTRFS that worked fine today, so I do not need to recover that drive immediately. I may let it run for a little more time, but then will abort the repair process as I really think its looping just over and over and over the same issues again. At some time I may just copy all the stuff that is on that harddisk, but not on the other one over to the other one and mkfs.btrfs the filesystem again, but I´d rather like to know whats happening here.
Here is output:
merkaba:~> btrfs check --repair
/dev/sdc1
enabling repair mode
Checking filesystem on/dev/sdc1
[… UUID ommited …]
checking extents
Fixed 0 roots.
checking free space cache
cache and super generation don't match, space cache will be invalidated checking fs roots
root 257 inode 4979842 errors 100, file extent discount Found file extent holes:start: 0, len: 78798848 root 257 inode 4980212 errors 100, file extent discount Found file extent holes: start: 0, len: 143360 root 257 inode 4980214 errors 100, file extent discount Found file extent holes: start: 0, len: 4227072 root 257 inode 4979842 errors 100, file extent discount Found file extent holes: start: 0, len: 78798848 root 257 inode 4980212 errors 100, file extent discount Found file extent holes: start: 0, len: 143360 root 257 inode 4980214 errors 100, file extent discount Found file extent holes: start: 0, len: 4227072 root 257 inode 4979842 errors 100, file extent discount Found file extent holes: start: 0, len: 78798848 root 257 inode 4980212 errors 100, file extent discount Found file extent holes: start: 0, len: 143360 root 257 inode 4980214 errors 100, file extent discount Found file extent holes: start: 0, len: 4227072 root 257 inode 4979842 errors 100, file extent discount Found file extent holes: start: 0, len: 78798848 root 257 inode 4980212 errors 100, file extent discount Found file extent holes: start: 0, len: 143360 root 257 inode 4980214 errors 100, file extent discount Found file extent holes: start: 0, len: 4227072 [… hours later …] root 257 inode 4979842 errors 100, file extent discount Found file extent holes: start: 0, len: 78798848 root 257 inode 4980212 errors 100, file extent discount Found file extent holes: start: 0, len: 143360 root 257 inode 4980214 errors 100, file extent discount Found file extent holes: start: 0, len: 4227072 root 257 inode 4979842 errors 100, file extent discount Found file extent holes: start: 0, len: 78798848 root 257 inode 4980212 errors 100, file extent discount Found file extent holes: start: 0, len: 143360 root 257 inode 4980214 errors 100, file extent discount Found file extent holes: start: 0, len: 4227072 root 257 inode 4979842 errors 100, file extent discount Found file extent holes: start: 0, len: 78798848 root 257 inode 4980212 errors 100, file extent discount Found file extent holes: start: 0, len: 143360 root 257 inode 4980214 errors 100, file extent discount Found file extent holes: start: 0, len: 4227072This basically seems to go on like this forever.
Thanks,
Signature · 1 line
Martin
Is the file system created with no-holes?
Chris Murphy
Hello Chris.
Chris Murphy - 22.04.17, 09:31:
Quoted 1 line
Is the file system created with no-holes?
I have how to find out about it and while doing accidentally set that feature on another filesystem (btrfstune only seems to be able to enable the feature, not show the current state of it).
But as there is no notice of the feature being set as standard in manpage of mkfs.btrfs as of BTRFS tools 4.9.1 and as I didn´t set it myself, I best bet is that the feature is not enable on the filesystem.
Now I wonder… how to disable the feature on that other filesystem again.
Thanks,
Martin Steigerwald - 22.04.17, 20:01:
Quoted 4 lines
Chris Murphy - 22.04.17, 09:31:
Quoted 1 line
Is the file system created with no-holes?
I have how to find out about it and while doing accidentally set that
I didn´t find out how to find out about it and…
Quoted 8 lines
feature on another filesystem (btrfstune only seems to be able to enable the feature, not show the current state of it).
But as there is no notice of the feature being set as standard in manpage of mkfs.btrfs as of BTRFS tools 4.9.1 and as I didn´t set it myself, I best bet is that the feature is not enable on the filesystem.
Now I wonder… how to disable the feature on that other filesystem again.
Signature · 1 line
Martin