On 6.09.2018 09:47, Liu Bo wrote:
> On Wed, Sep 5, 2018 at 10:45 PM, Liu Bo <obuil.li...@gmail.com> wrote:
>> Somehow this ends up with crash in btrfs/124, I'm trying to figure out
>> what went wrong.
>>
>
> It revealed the problem addressed in Josef's patch[1], so with it,
> this patch works just fine.
What exactly was the crash ?
>
> [1] btrfs: make sure we create all new bgs
>
> thanks,
> liubo
>
>>
>> On Tue, Sep 4, 2018 at 6:14 PM, Liu Bo <bo....@linux.alibaba.com> wrote:
>>> __btrfs_end_transaction() has done the metadata release twice,
>>> probably because it used to process delayed refs in between, but now
>>> that we don't process delayed refs any more, the 2nd release is always
>>> a noop.
>>>
>>> Signed-off-by: Liu Bo <bo....@linux.alibaba.com>
>>> ---
>>> fs/btrfs/transaction.c | 6 ------
>>> 1 file changed, 6 deletions(-)
>>>
>>> diff --git a/fs/btrfs/transaction.c b/fs/btrfs/transaction.c
>>> index bb1b9f526e98..94b036a74d11 100644
>>> --- a/fs/btrfs/transaction.c
>>> +++ b/fs/btrfs/transaction.c
>>> @@ -826,12 +826,6 @@ static int __btrfs_end_transaction(struct
>>> btrfs_trans_handle *trans,
>>> return 0;
>>> }
>>>
>>> - btrfs_trans_release_metadata(trans);
>>> - trans->block_rsv = NULL;
>>> -
>>> - if (!list_empty(&trans->new_bgs))
>>> - btrfs_create_pending_block_groups(trans);
>>> -
>>> trans->delayed_ref_updates = 0;
>>> if (!trans->sync) {
>>> must_run_delayed_refs =
>>> --
>>> 1.8.3.1
>>>
>