In rctx_chaseds(), the dns_resolver_createfetch() was created with fctx->task and fctx as callback argument. This would lead to task de-serialization because the fctx->task is initialized with task external to the fetch context. This could become a problem when the shutdown event has been posted at the same time as resume_dslookup() is run created via rctx_chaseds().
Use matching task from the resolver buckets to create internal fetches (e.g. when ev_fctx is used as callback argument).