Back to home page

LXR

 
 

    


File indexing completed on 2025-05-11 08:24:17

0001 #ifndef __LINUX_WORKQUEUE_H__
0002 #define __LINUX_WORKQUEUE_H__
0003 
0004 #include <rtems/chain.h>
0005 #include <linux/mutex.h>
0006 
0007 struct work_struct { rtems_chain_node node; };
0008 
0009 #define queue_delayed_work(workqueue, delayed_work, delay_ms) ({ \
0010   jffs2_queue_delayed_work(delayed_work, delay_ms); \
0011   0; \
0012 })
0013 
0014 #define INIT_DELAYED_WORK(delayed_work, delayed_workqueue_callback) ({ \
0015   (delayed_work)->callback = delayed_workqueue_callback; \
0016 })
0017 
0018 #define msecs_to_jiffies(a) (a)
0019 
0020 typedef void (*work_callback_t)(struct work_struct *work);
0021 struct delayed_work {
0022     struct work_struct work;
0023     struct mutex dw_mutex;
0024     volatile bool pending;
0025     volatile uint64_t execution_time;
0026     work_callback_t callback;
0027     /* Superblock provided for locking */
0028     struct super_block *sb;
0029 };
0030 
0031 #define to_delayed_work(work) RTEMS_CONTAINER_OF(work, struct delayed_work, work)
0032 void jffs2_queue_delayed_work(struct delayed_work *work, int delay_ms);
0033 
0034 #endif /* __LINUX_WORKQUEUE_H__ */