+static inline int workqueue_init_worker(struct submit_worker *sw)
+{
+ struct workqueue *wq = sw->wq;
+
+ if (!wq->ops.init_worker_fn)
+ return 0;
+
+ return wq->ops.init_worker_fn(sw);
+}
+
+static inline void workqueue_exit_worker(struct submit_worker *sw,
+ unsigned int *sum_cnt)
+{
+ struct workqueue *wq = sw->wq;
+ unsigned int tmp = 1;
+
+ if (!wq->ops.exit_worker_fn)
+ return;
+
+ if (!sum_cnt)
+ sum_cnt = &tmp;
+
+ wq->ops.exit_worker_fn(sw, sum_cnt);
+}