All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wang Shilong <wangsl.fnst@cn.fujitsu.com>
To: Marc MERLIN <marc@merlins.org>
Cc: linux-btrfs@vger.kernel.org
Subject: Re: 3.14.0rc3: did not find backref in send_root
Date: Wed, 26 Feb 2014 15:51:37 +0800	[thread overview]
Message-ID: <530D9D09.8070600@cn.fujitsu.com> (raw)
In-Reply-To: <20140226074603.GA11372@merlins.org>

On 02/26/2014 03:46 PM, Marc MERLIN wrote:
> On Wed, Feb 26, 2014 at 11:38:30AM +0800, Wang Shilong wrote:
>> Hi Marc,
>>
>> On 02/26/2014 01:30 AM, Marc MERLIN wrote:
>>> On Tue, Feb 25, 2014 at 03:50:15PM +0800, Wang Shilong wrote:
>>>> Hi Marc,
>>>>
>>>> This seems a regression which has been fixed by the following
>>>> commit(only pushed into btrfs-next):
>>>>
>>>> https://git.kernel.org/cgit/linux/kernel/git/josef/btrfs-next.git/commit/?id=1334bebe71bebbca47b3b92f25511ea980fdeab8
>>> I'll revert this, thanks.
>>>
>>> Mmmh, but I just found another problem I didn't have before upgrading to 3.14.0-rc3
>>> (on my laptop this time):
>> What is your previous version, give a double check whether the
>> following commit exists:
>>
>> Btrfs: remove transaction from btrfs send(commitid: 41ce9970)
>>
>> This regression should exist in 3.14 Sine chris firstly pull big
>> btrfs request for Linux 3.14.
>>> + btrfs send -p /mnt/btrfs_pool1/var_ro.20140224_14:01:54 var_ro.20140225_09:27:57
>>> + btrfs receive /mnt/btrfs_pool2//
>>> At subvol var_ro.20140225_09:27:57
>>> At snapshot var_ro.20140225_09:27:57
>>> ERROR: send ioctl failed with -5: Input/output error
>>> ERROR: unexpected EOF in stream.
>> Did dmesg output the same things like before?
>>
>> Hm, we can esaily trigger that regression if there is snapshot and
>> send running concurrently.
>> (balance/scrub ...device operations can also trigger send failure.)
> So I was confused because I got this on my server:
> On Mon, Feb 24, 2014 at 10:36:52PM -0800, Marc MERLIN wrote:
>> I got this during a btrfs send:
>> BTRFS error (device dm-2): did not find backref in send_root. inode=22672, offset=524288, disk_byte=1490517954560 found extent=1490517954560
> and that on my laptop:
> [82841.563339] BTRFS info (device dm-0): csum failed ino 2590 extent 2397949952 csum 3100992190 wanted 2786811954 mirror 0
>
> I've applied your patch from
> https://git.kernel.org/cgit/linux/kernel/git/josef/btrfs-next.git/commit/?id=1334bebe71bebbca47b3b92f25511ea980fdeab8
>
> legolas:/mnt/btrfs_pool1# bash -vx /var/local/scr/btrfs-subvolume-backup -k 5  var /mnt/btrfs_pool2/
>
> still failed on my laptop
> + btrfs send -p /mnt/btrfs_pool1/var_ro.20140224_14:01:54 var_ro.20140225_23:28:47
> + btrfs receive /mnt/btrfs_pool2//
> At subvol var_ro.20140225_23:28:47
> At snapshot var_ro.20140225_23:28:47
> ERROR: send ioctl failed with -5: Input/output error
> ERROR: unexpected EOF in stream.
> [  216.534313] BTRFS info (device dm-0): csum failed ino 2326136 off 192512 csum 3851586574 expected csum 1402824092
>
> Then again, this seems to be my problem on the laptop:
> legolas:/mnt/btrfs_pool1# btrfs scrub status /mnt/btrfs_pool1
> scrub status for 4850ee22-bf32-4131-a841-02abdb4a5ba6
> 	scrub started at Tue Feb 25 07:35:07 2014 and finished after 1945 seconds
> 	total bytes scrubbed: 451.64GiB with 2 errors
> 	error details: csum=2
> 	corrected errors: 0, uncorrectable errors: 2, unverified errors: 0
>
> Ok, so that's not a btrfs send problem.
> Just out of curiosity, how do I find out which inodes are compromized so
> that I can delete/restore them?
You can use command  "btrfs inspect-internal inode-resolve" which will 
print inode's
corresponding path with it's inode id.

For your case, something like this:

  btrfs inspect-internal inode-resolve -v 2326135 /mnt/btrfs_pool1

Thanks,
Wang
>
> Back to my server, I installed the new kernel, and I'm testing send
> again. So far it hasn't failed, so there is a chance the patch fixed the
> problem, but I'll only know more tomorrow after it's run longer.
>
> Thanks,
> Marc


  reply	other threads:[~2014-02-26  7:53 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-25  6:36 3.14.0rc3: did not find backref in send_root Marc MERLIN
2014-02-25  7:50 ` Wang Shilong
2014-02-25 17:30   ` 3.14.0rc3: btrfs send ioctl failed with -5: Input/output error Marc MERLIN
2014-02-26  3:38     ` Wang Shilong
2014-02-26  7:46 ` 3.14.0rc3: did not find backref in send_root Marc MERLIN
2014-02-26  7:51   ` Wang Shilong [this message]
2014-02-26 17:16     ` Marc MERLIN
2014-05-06  6:10 ` David Brown
2014-05-06  6:49   ` Blaz Repas
2014-05-10  8:13   ` David Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=530D9D09.8070600@cn.fujitsu.com \
    --to=wangsl.fnst@cn.fujitsu.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=marc@merlins.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.