diff options
Diffstat (limited to 'cpukit/libfs/src/jffs2/include/linux/workqueue.h')
-rw-r--r-- | cpukit/libfs/src/jffs2/include/linux/workqueue.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/cpukit/libfs/src/jffs2/include/linux/workqueue.h b/cpukit/libfs/src/jffs2/include/linux/workqueue.h index 45a2942bfc..9811c7cd3e 100644 --- a/cpukit/libfs/src/jffs2/include/linux/workqueue.h +++ b/cpukit/libfs/src/jffs2/include/linux/workqueue.h @@ -2,6 +2,7 @@ #define __LINUX_WORKQUEUE_H__ #include <rtems/chain.h> +#include <linux/mutex.h> struct work_struct { rtems_chain_node node; }; @@ -11,7 +12,6 @@ struct work_struct { rtems_chain_node node; }; }) #define INIT_DELAYED_WORK(delayed_work, delayed_workqueue_callback) ({ \ - _Chain_Initialize_node(&(delayed_work)->work.node); \ (delayed_work)->callback = delayed_workqueue_callback; \ }) @@ -20,8 +20,12 @@ struct work_struct { rtems_chain_node node; }; typedef void (*work_callback_t)(struct work_struct *work); struct delayed_work { struct work_struct work; - uint64_t execution_time; + struct mutex dw_mutex; + volatile bool pending; + volatile uint64_t execution_time; work_callback_t callback; + /* Superblock provided for locking */ + struct super_block *sb; }; #define to_delayed_work(work) RTEMS_CONTAINER_OF(work, struct delayed_work, work) |