Loading kernel/workqueue.c +10 −11 Original line number Diff line number Diff line Loading @@ -114,6 +114,7 @@ int fastcall queue_work(struct workqueue_struct *wq, struct work_struct *work) put_cpu(); return ret; } EXPORT_SYMBOL_GPL(queue_work); static void delayed_work_timer_fn(unsigned long __data) { Loading Loading @@ -147,6 +148,7 @@ int fastcall queue_delayed_work(struct workqueue_struct *wq, } return ret; } EXPORT_SYMBOL_GPL(queue_delayed_work); int queue_delayed_work_on(int cpu, struct workqueue_struct *wq, struct work_struct *work, unsigned long delay) Loading @@ -168,6 +170,7 @@ int queue_delayed_work_on(int cpu, struct workqueue_struct *wq, } return ret; } EXPORT_SYMBOL_GPL(queue_delayed_work_on); static void run_workqueue(struct cpu_workqueue_struct *cwq) { Loading Loading @@ -302,6 +305,7 @@ void fastcall flush_workqueue(struct workqueue_struct *wq) unlock_cpu_hotplug(); } } EXPORT_SYMBOL_GPL(flush_workqueue); static struct task_struct *create_workqueue_thread(struct workqueue_struct *wq, int cpu) Loading Loading @@ -379,6 +383,7 @@ struct workqueue_struct *__create_workqueue(const char *name, } return wq; } EXPORT_SYMBOL_GPL(__create_workqueue); static void cleanup_workqueue_thread(struct workqueue_struct *wq, int cpu) { Loading Loading @@ -416,6 +421,7 @@ void destroy_workqueue(struct workqueue_struct *wq) free_percpu(wq->cpu_wq); kfree(wq); } EXPORT_SYMBOL_GPL(destroy_workqueue); static struct workqueue_struct *keventd_wq; Loading @@ -423,17 +429,20 @@ int fastcall schedule_work(struct work_struct *work) { return queue_work(keventd_wq, work); } EXPORT_SYMBOL(schedule_work); int fastcall schedule_delayed_work(struct work_struct *work, unsigned long delay) { return queue_delayed_work(keventd_wq, work, delay); } EXPORT_SYMBOL(schedule_delayed_work); int schedule_delayed_work_on(int cpu, struct work_struct *work, unsigned long delay) { return queue_delayed_work_on(cpu, keventd_wq, work, delay); } EXPORT_SYMBOL(schedule_delayed_work_on); /** * schedule_on_each_cpu - call a function on each online CPU from keventd Loading Loading @@ -470,6 +479,7 @@ void flush_scheduled_work(void) { flush_workqueue(keventd_wq); } EXPORT_SYMBOL(flush_scheduled_work); /** * cancel_rearming_delayed_workqueue - reliably kill off a delayed Loading Loading @@ -626,14 +636,3 @@ void init_workqueues(void) BUG_ON(!keventd_wq); } EXPORT_SYMBOL_GPL(__create_workqueue); EXPORT_SYMBOL_GPL(queue_work); EXPORT_SYMBOL_GPL(queue_delayed_work); EXPORT_SYMBOL_GPL(queue_delayed_work_on); EXPORT_SYMBOL_GPL(flush_workqueue); EXPORT_SYMBOL_GPL(destroy_workqueue); EXPORT_SYMBOL(schedule_work); EXPORT_SYMBOL(schedule_delayed_work); EXPORT_SYMBOL(schedule_delayed_work_on); EXPORT_SYMBOL(flush_scheduled_work); Loading
kernel/workqueue.c +10 −11 Original line number Diff line number Diff line Loading @@ -114,6 +114,7 @@ int fastcall queue_work(struct workqueue_struct *wq, struct work_struct *work) put_cpu(); return ret; } EXPORT_SYMBOL_GPL(queue_work); static void delayed_work_timer_fn(unsigned long __data) { Loading Loading @@ -147,6 +148,7 @@ int fastcall queue_delayed_work(struct workqueue_struct *wq, } return ret; } EXPORT_SYMBOL_GPL(queue_delayed_work); int queue_delayed_work_on(int cpu, struct workqueue_struct *wq, struct work_struct *work, unsigned long delay) Loading @@ -168,6 +170,7 @@ int queue_delayed_work_on(int cpu, struct workqueue_struct *wq, } return ret; } EXPORT_SYMBOL_GPL(queue_delayed_work_on); static void run_workqueue(struct cpu_workqueue_struct *cwq) { Loading Loading @@ -302,6 +305,7 @@ void fastcall flush_workqueue(struct workqueue_struct *wq) unlock_cpu_hotplug(); } } EXPORT_SYMBOL_GPL(flush_workqueue); static struct task_struct *create_workqueue_thread(struct workqueue_struct *wq, int cpu) Loading Loading @@ -379,6 +383,7 @@ struct workqueue_struct *__create_workqueue(const char *name, } return wq; } EXPORT_SYMBOL_GPL(__create_workqueue); static void cleanup_workqueue_thread(struct workqueue_struct *wq, int cpu) { Loading Loading @@ -416,6 +421,7 @@ void destroy_workqueue(struct workqueue_struct *wq) free_percpu(wq->cpu_wq); kfree(wq); } EXPORT_SYMBOL_GPL(destroy_workqueue); static struct workqueue_struct *keventd_wq; Loading @@ -423,17 +429,20 @@ int fastcall schedule_work(struct work_struct *work) { return queue_work(keventd_wq, work); } EXPORT_SYMBOL(schedule_work); int fastcall schedule_delayed_work(struct work_struct *work, unsigned long delay) { return queue_delayed_work(keventd_wq, work, delay); } EXPORT_SYMBOL(schedule_delayed_work); int schedule_delayed_work_on(int cpu, struct work_struct *work, unsigned long delay) { return queue_delayed_work_on(cpu, keventd_wq, work, delay); } EXPORT_SYMBOL(schedule_delayed_work_on); /** * schedule_on_each_cpu - call a function on each online CPU from keventd Loading Loading @@ -470,6 +479,7 @@ void flush_scheduled_work(void) { flush_workqueue(keventd_wq); } EXPORT_SYMBOL(flush_scheduled_work); /** * cancel_rearming_delayed_workqueue - reliably kill off a delayed Loading Loading @@ -626,14 +636,3 @@ void init_workqueues(void) BUG_ON(!keventd_wq); } EXPORT_SYMBOL_GPL(__create_workqueue); EXPORT_SYMBOL_GPL(queue_work); EXPORT_SYMBOL_GPL(queue_delayed_work); EXPORT_SYMBOL_GPL(queue_delayed_work_on); EXPORT_SYMBOL_GPL(flush_workqueue); EXPORT_SYMBOL_GPL(destroy_workqueue); EXPORT_SYMBOL(schedule_work); EXPORT_SYMBOL(schedule_delayed_work); EXPORT_SYMBOL(schedule_delayed_work_on); EXPORT_SYMBOL(flush_scheduled_work);