<snip>

>>> And then report back on the output of the extra debug 
>>> statements. 
>>>
>>> Your global rsv is essentially unused, this means 
>>> in the worst case the code should fallback to using the global rsv
>>> for satisfying the memory allocation for delayed refs. So we should
>>> figure out why this isn't' happening. 
>> Patch applied. Thank you very much, Nikolay. I'll let you know as soon as we 
>> hit ENOSPC again.
> 
> There is the output:
> 
> [24672.573075] BTRFS info (device sdb): space_info 4 has 18446744072971649024 
> free, is not full
> [24672.573077] BTRFS info (device sdb): space_info total=308163903488, 
> used=304593289216, pinned=2321940480, reserved=174800896, may_use=1811644416, 
> readonly=131072
> [24672.573079] use_block_rsv: Not using global blockrsv! Current 
> blockrsv->type = 1 blockrsv->space_info = ffff999a57db7000 
> global_rsv->space_info = ffff999a57db7000
> [24672.573083] BTRFS: Transaction aborted (error -28)

Bummer, so you are indeed running out of global space reservations in
context which can't really use any other reservation type, thus the
ENOSPC. Was the stacktrace again during processing of running delayed refs?
--
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