• Tejun Heo's avatar
    workqueue: move hot fields of workqueue_struct to the end · 2728fd2f
    Tejun Heo authored
    Move wq->flags and ->cpu_pwqs to the end of workqueue_struct and align
    them to the cacheline.  These two fields are used in the work item
    issue path and thus hot.  The scheduled NUMA affinity support will add
    dispatch table at the end of workqueue_struct and relocating these two
    fields will allow us hitting only single cacheline on hot paths.
    
    Note that wq->pwqs isn't moved although it currently is being used in
    the work item issue path for unbound workqueues.  The dispatch table
    mentioned above will replace its use in the issue path, so it will
    become cold once NUMA support is implemented.
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Reviewed-by: default avatarLai Jiangshan <laijs@cn.fujitsu.com>
    2728fd2f
workqueue.c 124 KB