MODULE_LICENSE("GPL");
+static struct workqueue_struct *mywq;
+
static void do_mywork(struct work_struct *data)
{
printk(KERN_INFO "I've been scheduled.\n");
+ queue_delayed_work(mywq, to_delayed_work(data), 8 * HZ);
}
DECLARE_DELAYED_WORK(mywork, do_mywork);
-static struct workqueue_struct *mywq;
static int mywq_init(void)
{
static void mywq_exit(void)
{
+ cancel_delayed_work_sync(&mywork);
flush_workqueue(mywq);
destroy_workqueue(mywq);
}