Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FreeBSD: Improve taskq wrapper #15356

Merged
merged 1 commit into from
Oct 13, 2023
Merged

FreeBSD: Improve taskq wrapper #15356

merged 1 commit into from
Oct 13, 2023

Commits on Oct 12, 2023

  1. FreeBSD: Improve taskq wrapper

     - Group tqent_task and tqent_timeout_task into a union.  They are
    never used same time. This shrinks taskq_ent_t from 192 to 160 bytes.
     - Remove tqent_registered.  Use tqent_id != 0 instead.
     - Remove tqent_cancelled.  Use taskqueue pending counter instead.
     - Change tqent_type into uint_t.  We don't need to pack it any more.
     - Change tqent_rc into uint_t, matching refcount(9).
     - Take shared locks in taskq_lookup().
     - Call proper taskqueue_drain_timeout() for TIMEOUT_TASK in
    taskq_cancel_id() and taskq_wait_id().
     - Switch from CK_LIST to regular LIST.
    
    Signed-off-by:	Alexander Motin <mav@FreeBSD.org>
    Sponsored by:	iXsystems, Inc.
    amotin committed Oct 12, 2023
    Configuration menu
    Copy the full SHA
    bad9ae0 View commit details
    Browse the repository at this point in the history