36 lines
897 B
Diff
36 lines
897 B
Diff
From: Felix Fietkau <nbd@nbd.name>
|
|
Date: Wed, 11 Nov 2020 13:34:26 +0100
|
|
Subject: [PATCH] backports: backport tasklet_setup, from_tasklet
|
|
|
|
Backport the new tasklet API
|
|
|
|
Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|
---
|
|
|
|
--- a/backport-include/linux/interrupt.h
|
|
+++ b/backport-include/linux/interrupt.h
|
|
@@ -31,6 +31,23 @@ static inline void backport_hrtimer_star
|
|
hrtimer_start(timer, _time, mode);
|
|
}
|
|
#define hrtimer_start LINUX_BACKPORT(hrtimer_start)
|
|
+
|
|
+#endif
|
|
+
|
|
+#if LINUX_VERSION_IS_LESS(5,9,0)
|
|
+
|
|
+static inline void
|
|
+tasklet_setup(struct tasklet_struct *t,
|
|
+ void (*callback)(struct tasklet_struct *))
|
|
+{
|
|
+ void (*cb)(unsigned long data) = (void *)callback;
|
|
+
|
|
+ tasklet_init(t, cb, (unsigned long)t);
|
|
+}
|
|
+
|
|
+#define from_tasklet(var, callback_tasklet, tasklet_fieldname) \
|
|
+ container_of(callback_tasklet, typeof(*var), tasklet_fieldname)
|
|
+
|
|
#endif
|
|
|
|
#endif /* _BP_LINUX_INTERRUPT_H */
|