timer: Remove unused data arguments from macros
authorKees Cook <keescook@chromium.org>
Mon, 23 Oct 2017 01:22:50 +0000 (18:22 -0700)
committerKees Cook <keescook@chromium.org>
Tue, 21 Nov 2017 23:57:14 +0000 (15:57 -0800)
With the .data field removed, the ignored data arguments in timer macros
can be removed.

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Tejun Heo <tj@kernel.org>
Cc: Lai Jiangshan <jiangshanlai@gmail.com>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Shaohua Li <shli@fb.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
include/linux/kthread.h
include/linux/timer.h
include/linux/workqueue.h

index 3203e36b2ee81f746b6d87c16701cdc567274ebd..b855c5b72b26340252412a3d0dd25f8c125696d8 100644 (file)
@@ -119,7 +119,6 @@ struct kthread_delayed_work {
 #define KTHREAD_DELAYED_WORK_INIT(dwork, fn) {                         \
        .work = KTHREAD_WORK_INIT((dwork).work, (fn)),                  \
        .timer = __TIMER_INITIALIZER((TIMER_FUNC_TYPE)kthread_delayed_work_timer_fn,\
-                                    (TIMER_DATA_TYPE)&(dwork.timer),   \
                                     TIMER_IRQSAFE),                    \
        }
 
@@ -167,7 +166,6 @@ extern void __kthread_init_worker(struct kthread_worker *worker,
                kthread_init_work(&(dwork)->work, (fn));                \
                __setup_timer(&(dwork)->timer,                          \
                              (TIMER_FUNC_TYPE)kthread_delayed_work_timer_fn,\
-                             (TIMER_DATA_TYPE)&(dwork)->timer,         \
                              TIMER_IRQSAFE);                           \
        } while (0)
 
index a6d04fb72c9e2eceb478042b1e1052813a02bd11..e6bab51db13d6c20a09a4a0d30f8f97c2094194a 100644 (file)
@@ -66,7 +66,7 @@ struct timer_list {
 #define TIMER_DATA_TYPE                struct timer_list *
 #define TIMER_FUNC_TYPE                void (*)(TIMER_DATA_TYPE)
 
-#define __TIMER_INITIALIZER(_function, _data, _flags) {                \
+#define __TIMER_INITIALIZER(_function, _flags) {               \
                .entry = { .next = TIMER_ENTRY_STATIC },        \
                .function = (_function),                        \
                .flags = (_flags),                              \
@@ -76,7 +76,7 @@ struct timer_list {
 
 #define DEFINE_TIMER(_name, _function)                         \
        struct timer_list _name =                               \
-               __TIMER_INITIALIZER((TIMER_FUNC_TYPE)_function, 0, 0)
+               __TIMER_INITIALIZER((TIMER_FUNC_TYPE)_function, 0)
 
 void init_timer_key(struct timer_list *timer, unsigned int flags,
                    const char *name, struct lock_class_key *key);
@@ -115,13 +115,13 @@ static inline void init_timer_on_stack_key(struct timer_list *timer,
        init_timer_on_stack_key((_timer), (_flags), NULL, NULL)
 #endif
 
-#define __setup_timer(_timer, _fn, _data, _flags)                      \
+#define __setup_timer(_timer, _fn, _flags)                             \
        do {                                                            \
                __init_timer((_timer), (_flags));                       \
                (_timer)->function = (_fn);                             \
        } while (0)
 
-#define __setup_timer_on_stack(_timer, _fn, _data, _flags)             \
+#define __setup_timer_on_stack(_timer, _fn, _flags)                    \
        do {                                                            \
                __init_timer_on_stack((_timer), (_flags));              \
                (_timer)->function = (_fn);                             \
@@ -132,16 +132,14 @@ static inline void timer_setup(struct timer_list *timer,
                               void (*callback)(struct timer_list *),
                               unsigned int flags)
 {
-       __setup_timer(timer, (TIMER_FUNC_TYPE)callback,
-                     (TIMER_DATA_TYPE)timer, flags);
+       __setup_timer(timer, (TIMER_FUNC_TYPE)callback, flags);
 }
 
 static inline void timer_setup_on_stack(struct timer_list *timer,
                               void (*callback)(struct timer_list *),
                               unsigned int flags)
 {
-       __setup_timer_on_stack(timer, (TIMER_FUNC_TYPE)callback,
-                              (TIMER_DATA_TYPE)timer, flags);
+       __setup_timer_on_stack(timer, (TIMER_FUNC_TYPE)callback, flags);
 }
 #else
 /*
@@ -151,11 +149,11 @@ static inline void timer_setup_on_stack(struct timer_list *timer,
  */
 # define timer_setup(timer, callback, flags)                           \
                __setup_timer((timer), (TIMER_FUNC_TYPE)(callback),     \
-                             (TIMER_DATA_TYPE)(timer), (flags))
+                             (flags))
 # define timer_setup_on_stack(timer, callback, flags)                  \
                __setup_timer_on_stack((timer),                         \
                                       (TIMER_FUNC_TYPE)(callback),     \
-                                      (TIMER_DATA_TYPE)(timer), (flags))
+                                      (flags))
 #endif
 
 #define from_timer(var, callback_timer, timer_fieldname) \
index 01a050fc6650ab055315d1dd00f5309bbe263450..8d11580237f52fbcbdd5a03e00818ef3e388b62c 100644 (file)
@@ -177,7 +177,6 @@ struct execute_work {
 #define __DELAYED_WORK_INITIALIZER(n, f, tflags) {                     \
        .work = __WORK_INITIALIZER((n).work, (f)),                      \
        .timer = __TIMER_INITIALIZER((TIMER_FUNC_TYPE)delayed_work_timer_fn,\
-                                    (TIMER_DATA_TYPE)&(n.timer),       \
                                     (tflags) | TIMER_IRQSAFE),         \
        }
 
@@ -244,7 +243,6 @@ static inline unsigned int work_static(struct work_struct *work) { return 0; }
                INIT_WORK(&(_work)->work, (_func));                     \
                __setup_timer(&(_work)->timer,                          \
                              (TIMER_FUNC_TYPE)delayed_work_timer_fn,   \
-                             (TIMER_DATA_TYPE)&(_work)->timer,         \
                              (_tflags) | TIMER_IRQSAFE);               \
        } while (0)
 
@@ -253,7 +251,6 @@ static inline unsigned int work_static(struct work_struct *work) { return 0; }
                INIT_WORK_ONSTACK(&(_work)->work, (_func));             \
                __setup_timer_on_stack(&(_work)->timer,                 \
                                       (TIMER_FUNC_TYPE)delayed_work_timer_fn,\
-                                      (TIMER_DATA_TYPE)&(_work)->timer,\
                                       (_tflags) | TIMER_IRQSAFE);      \
        } while (0)