Page MenuHomeFreeBSD

Add SI_SUB_TASKQ after SI_SUB_INTR and move taskqueue initialization there for EARLY_AP_STARTUP
ClosedPublic

Authored by cem on Aug 16 2017, 9:32 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Nov 20, 5:21 PM
Unknown Object (File)
Thu, Nov 20, 5:12 PM
Unknown Object (File)
Thu, Nov 20, 5:10 PM
Unknown Object (File)
Thu, Nov 20, 5:03 PM
Unknown Object (File)
Sat, Nov 8, 5:52 AM
Unknown Object (File)
Mon, Nov 3, 5:00 AM
Unknown Object (File)
Sun, Oct 26, 4:42 PM
Unknown Object (File)
Oct 23 2025, 12:47 PM
Subscribers

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

This revision is now accepted and ready to land.Aug 16 2017, 9:35 PM

Looks good to me assuming it boots. A few other places that are using SI_SUB_INIT_IF that might be candidates for now using SI_SUB_TASKQ:

compat/linuxkpi/common/src/linux_work.c:SYSINIT(linux_work_init, SI_SUB_INIT_IF, SI_ORDER_THIRD, linux_work_init, NULL);
compat/linuxkpi/common/src/linux_work.c:SYSUNINIT(linux_work_uninit, SI_SUB_INIT_IF, SI_ORDER_THIRD, linux_work_uninit, NULL);
compat/linuxkpi/common/src/linux_tasklet.c:SYSINIT(linux_tasklet, SI_SUB_INIT_IF, SI_ORDER_THIRD, tasklet_subsystem_init, NULL);
compat/linuxkpi/common/src/linux_tasklet.c:SYSUNINIT(linux_tasklet, SI_SUB_INIT_IF, SI_ORDER_THIRD, tasklet_subsystem_uninit, NULL);
sys/gtaskqueue.h:SYSINIT(taskqgroup_##name, SI_SUB_INIT_IF, SI_ORDER_FIRST,    \
sys/gtaskqueue.h:SYSINIT(taskqgroup_##name, SI_SUB_INIT_IF, SI_ORDER_FIRST,    \

I think gtaskqueue.h is trickier. I bet that this would make it simpler though as it could always do the non-EARLY_AP_STARTUP case and remove the #ifdef's as SI_SUB_TASKQ will always be before SI_SUB_SMP.

This revision was automatically updated to reflect the committed changes.