svn commit: r322672 - in head/sys: compat/linuxkpi/common/src sys
Conrad Meyer
cem at FreeBSD.org
Fri Aug 18 18:55:08 UTC 2017
Author: cem
Date: Fri Aug 18 18:55:07 2017
New Revision: 322672
URL: https://svnweb.freebsd.org/changeset/base/322672
Log:
Move some other SI_SUB_INIT_IF initializations to SI_SUB_TASKQ
Drop the EARLY_AP_STARTUP gtaskqueue code, as gtaskqueues are now
initialized before APs are started.
Reviewed by: hselasky@, jhb@
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D12054
Modified:
head/sys/compat/linuxkpi/common/src/linux_tasklet.c
head/sys/compat/linuxkpi/common/src/linux_work.c
head/sys/sys/gtaskqueue.h
Modified: head/sys/compat/linuxkpi/common/src/linux_tasklet.c
==============================================================================
--- head/sys/compat/linuxkpi/common/src/linux_tasklet.c Fri Aug 18 18:26:30 2017 (r322671)
+++ head/sys/compat/linuxkpi/common/src/linux_tasklet.c Fri Aug 18 18:55:07 2017 (r322672)
@@ -110,7 +110,7 @@ tasklet_subsystem_init(void *arg __unused)
"tasklet", i, -1, buf);
}
}
-SYSINIT(linux_tasklet, SI_SUB_INIT_IF, SI_ORDER_THIRD, tasklet_subsystem_init, NULL);
+SYSINIT(linux_tasklet, SI_SUB_TASKQ, SI_ORDER_THIRD, tasklet_subsystem_init, NULL);
static void
tasklet_subsystem_uninit(void *arg __unused)
@@ -128,7 +128,7 @@ tasklet_subsystem_uninit(void *arg __unused)
mtx_destroy(&tw->mtx);
}
}
-SYSUNINIT(linux_tasklet, SI_SUB_INIT_IF, SI_ORDER_THIRD, tasklet_subsystem_uninit, NULL);
+SYSUNINIT(linux_tasklet, SI_SUB_TASKQ, SI_ORDER_THIRD, tasklet_subsystem_uninit, NULL);
void
tasklet_init(struct tasklet_struct *ts,
Modified: head/sys/compat/linuxkpi/common/src/linux_work.c
==============================================================================
--- head/sys/compat/linuxkpi/common/src/linux_work.c Fri Aug 18 18:26:30 2017 (r322671)
+++ head/sys/compat/linuxkpi/common/src/linux_work.c Fri Aug 18 18:55:07 2017 (r322672)
@@ -577,7 +577,7 @@ linux_work_init(void *arg)
system_power_efficient_wq = linux_system_short_wq;
system_unbound_wq = linux_system_short_wq;
}
-SYSINIT(linux_work_init, SI_SUB_INIT_IF, SI_ORDER_THIRD, linux_work_init, NULL);
+SYSINIT(linux_work_init, SI_SUB_TASKQ, SI_ORDER_THIRD, linux_work_init, NULL);
static void
linux_work_uninit(void *arg)
@@ -591,4 +591,4 @@ linux_work_uninit(void *arg)
system_power_efficient_wq = NULL;
system_unbound_wq = NULL;
}
-SYSUNINIT(linux_work_uninit, SI_SUB_INIT_IF, SI_ORDER_THIRD, linux_work_uninit, NULL);
+SYSUNINIT(linux_work_uninit, SI_SUB_TASKQ, SI_ORDER_THIRD, linux_work_uninit, NULL);
Modified: head/sys/sys/gtaskqueue.h
==============================================================================
--- head/sys/sys/gtaskqueue.h Fri Aug 18 18:26:30 2017 (r322671)
+++ head/sys/sys/gtaskqueue.h Fri Aug 18 18:55:07 2017 (r322672)
@@ -80,7 +80,6 @@ int taskqgroup_adjust(struct taskqgroup *qgroup, int c
#define TASKQGROUP_DECLARE(name) \
extern struct taskqgroup *qgroup_##name
-#ifdef EARLY_AP_STARTUP
#define TASKQGROUP_DEFINE(name, cnt, stride) \
\
struct taskqgroup *qgroup_##name; \
@@ -89,23 +88,9 @@ static void \
taskqgroup_define_##name(void *arg) \
{ \
qgroup_##name = taskqgroup_create(#name); \
- taskqgroup_adjust(qgroup_##name, (cnt), (stride)); \
} \
\
-SYSINIT(taskqgroup_##name, SI_SUB_INIT_IF, SI_ORDER_FIRST, \
- taskqgroup_define_##name, NULL)
-#else /* !EARLY_AP_STARTUP */
-#define TASKQGROUP_DEFINE(name, cnt, stride) \
- \
-struct taskqgroup *qgroup_##name; \
- \
-static void \
-taskqgroup_define_##name(void *arg) \
-{ \
- qgroup_##name = taskqgroup_create(#name); \
-} \
- \
-SYSINIT(taskqgroup_##name, SI_SUB_INIT_IF, SI_ORDER_FIRST, \
+SYSINIT(taskqgroup_##name, SI_SUB_TASKQ, SI_ORDER_FIRST, \
taskqgroup_define_##name, NULL); \
\
static void \
@@ -116,7 +101,6 @@ taskqgroup_adjust_##name(void *arg) \
\
SYSINIT(taskqgroup_adj_##name, SI_SUB_SMP, SI_ORDER_ANY, \
taskqgroup_adjust_##name, NULL)
-#endif /* EARLY_AP_STARTUP */
TASKQGROUP_DECLARE(net);
TASKQGROUP_DECLARE(softirq);
More information about the svn-src-all
mailing list