Using global taskqueue_thread XXX with the vnet tasks scheduled during VNET destruction. VNET shutdown needs to wait for all vnet-scoped SAs/SPs to be handled, and doing that from taskqueue_thread task deadlocks because the same thread proceeds the removals.
Details
Details
- Reviewers
markj - Commits
- rGf76826b892de: ipsec offload: use private taskqueue thread
Diff Detail
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
sys/netipsec/ipsec_offload.c | ||
---|---|---|
171 | It's not permitted to use NULL as the last parameter, it should be &ipsec_accel_tq. taskqueue_thread_enqueue() dereferences it. |