On Wed, Sep 5, 2018 at 10:45 PM, Liu Bo <obuil.liubo@xxxxxxxxx> 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.
[1] btrfs: make sure we create all new bgs
thanks,
liubo
>
> On Tue, Sep 4, 2018 at 6:14 PM, Liu Bo <bo.liu@xxxxxxxxxxxxxxxxx> 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.liu@xxxxxxxxxxxxxxxxx>
>> ---
>> 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
>>