HomeFreeBSD

Add flag to struct task to mark the task as requiring network epoch.

Description

Add flag to struct task to mark the task as requiring network epoch.

When processing a taskqueue and a task has associated epoch, then
enter for duration of the task. If consecutive tasks belong to the
same epoch, batch them. Now we are talking about the network epoch
only.

Shrink the ta_priority size to 8-bits. No current consumers use
a priority that won't fit into 8 bits. Also complexity of
taskqueue_enqueue() is a square of maximum value of priority, so
we unlikely ever want to go over UCHAR_MAX here.

Reviewed by: hselasky
Differential Revision: https://reviews.freebsd.org/D23518

Details

Provenance
glebiusAuthored on
Reviewer
hselasky
Differential Revision
D23518: epoch support for taskqueues [2]
Parents
rS357770: vfs: fix vhold race in mnt_vnode_next_lazy_relock
Branches
Unknown
Tags
Unknown