Well, the file in this inode is fine, I was able to copy it off the
disk. However, rm-ing the file causes a segmentation fault. Shortly
after that, I get a kernel oops. Same thing happens if I attempt to
re-run scrub.

How can I delete that inode? Could deleting it destroy the filesystem
beyond repair?

Regards,
Ivan

On Mon, Mar 28, 2016 at 3:10 AM, Qu Wenruo <quwenruo.bt...@gmx.com> wrote:
>
>
> Ivan P wrote on 2016/03/27 16:31 +0200:
>>
>> Thanks for the reply,
>>
>> the raid1 array was created from scratch, so not converted from ext*.
>> I used btrfs-progs version 4.2.3 on kernel 4.2.5 to create the array, btw.
>
>
> I don't remember any strange behavior after 4.0, so no clue here.
>
> Go to the subvolume 5 (the top-level subvolume), find inode 71723 and try to
> remove it.
> Then, use 'btrfs filesystem sync <mount point>' to sync the inode removal.
>
> Finally use latest btrfs-progs to check if the problem disappears.
>
> This problem seems to be quite strange, so I can't locate the root cause,
> but try to remove the file and hopes kernel can handle it.
>
> Thanks,
> Qu
>>
>>
>> Is there a way to fix the current situation without taking the whole
>> data off the disk?
>> I'm not familiar with file systems terms, so what exactly could I have
>> lost, if anything?
>>
>> Regards,
>> Ivan
>>
>> On Sun, Mar 27, 2016 at 4:23 PM, Qu Wenruo <quwenruo.bt...@gmx.com
>> <mailto:quwenruo.bt...@gmx.com>> wrote:
>>
>>
>>
>>     On 03/27/2016 05:54 PM, Ivan P wrote:
>>
>>         Read the info on the wiki, here's the rest of the requested
>>         information:
>>
>>         # uname -r
>>         4.4.5-1-ARCH
>>
>>         # btrfs fi show
>>         Label: 'ArchVault'  uuid: cd8a92b6-c5b5-4b19-b5e6-a839828d12d8
>>                  Total devices 1 FS bytes used 2.10GiB
>>                  devid    1 size 14.92GiB used 4.02GiB path /dev/sdc1
>>
>>         Label: 'Vault'  uuid: 013cda95-8aab-4cb2-acdd-2f0f78036e02
>>                  Total devices 2 FS bytes used 800.72GiB
>>                  devid    1 size 931.51GiB used 808.01GiB path /dev/sda
>>                  devid    2 size 931.51GiB used 808.01GiB path /dev/sdb
>>
>>         # btrfs fi df /mnt/vault/
>>         Data, RAID1: total=806.00GiB, used=799.81GiB
>>         System, RAID1: total=8.00MiB, used=128.00KiB
>>         Metadata, RAID1: total=2.00GiB, used=936.20MiB
>>         GlobalReserve, single: total=320.00MiB, used=0.00B
>>
>>         On Fri, Mar 25, 2016 at 3:16 PM, Ivan P <chrnosphe...@gmail.com
>>         <mailto:chrnosphe...@gmail.com>> wrote:
>>
>>             Hello,
>>
>>             using kernel  4.4.5 and btrfs-progs 4.4.1, I today ran a
>>             scrub on my
>>             2x1Tb btrfs raid1 array and it finished with 36
>>             unrecoverable errors
>>             [1], all blaming the treeblock 741942071296. Running "btrfs
>>             check
>>             --readonly" on one of the devices lists that extent as
>>             corrupted [2].
>>
>>             How can I recover, how much did I really lose, and how can I
>>             prevent
>>             it from happening again?
>>             If you need me to provide more info, do tell.
>>
>>             [1] http://cwillu.com:8080/188.110.141.36/1
>>
>>
>>     This message itself is normal, it just means a tree block is
>>     crossing 64K stripe boundary.
>>     And due to scrub limit, it can check if it's good or bad.
>>     But....
>>
>>             [2] http://pastebin.com/xA5zezqw
>>
>>     This one is much more meaningful, showing several strange bugs.
>>
>>     1. corrupt extent record: key 741942071296 168 1114112
>>     This means, this is a EXTENT_ITEM(168), and according to the offset,
>>     it means the length of the extent is, 1088K, definitely not a valid
>>     tree block size.
>>
>>     But according to [1], kernel think it's a tree block, which is quite
>>     strange.
>>     Normally, such mismatch only happens in fs converted from ext*.
>>
>>     2. Backref 741942071296 root 5 owner 71723 offset 2589392896
>>     num_refs 0 not found in extent tree
>>
>>     num_refs 0, this is also strange, normal backref won't have a zero
>>     refrence number.
>>
>>     3. bad metadata [741942071296, 741943185408) crossing stripe boundary
>>     It could be a false warning fixed in latest btrfsck.
>>     But you're using 4.4.1, so I think that's the problem.
>>
>>     4. bad extent [741942071296, 741943185408), type mismatch with chunk
>>     This seems to explain the problem, a data extent appears in a
>>     metadata chunk.
>>     It seems that you're really using converted btrfs.
>>
>>     If so, just roll it back to ext*. Current btrfs-convert has known
>>     bug but fix is still under review.
>>
>>     If want to use btrfs, use a newly created one instead of
>> btrfs-convert.
>>
>>     Thanks,
>>     Qu
>>
>>
>>             Regards,
>>             Soukyuu
>>
>>             P.S.: please add me to CC when replying as I did not
>>             subscribe to the
>>             mailing list. Majordomo won't let me use my hotmail address
>>             and I
>>             don't want that much traffic on this address.
>>
>>         --
>>         To unsubscribe from this list: send the line "unsubscribe
>>         linux-btrfs" in
>>         the body of a message to majord...@vger.kernel.org
>>         <mailto:majord...@vger.kernel.org>
>>         More majordomo info at http://vger.kernel.org/majordomo-info.html
>>
>>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to