summaryrefslogtreecommitdiffstats
path: root/debian/patches-rt/hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches-rt/hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch')
-rw-r--r--debian/patches-rt/hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch271
1 files changed, 0 insertions, 271 deletions
diff --git a/debian/patches-rt/hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch b/debian/patches-rt/hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch
deleted file mode 100644
index 7d620ef72..000000000
--- a/debian/patches-rt/hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch
+++ /dev/null
@@ -1,271 +0,0 @@
-From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
-Date: Tue, 3 Jul 2018 11:25:41 +0200
-Subject: [PATCH v2] hrtimer: consolidate hrtimer_init() + hrtimer_init_sleeper() calls
-Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.2/older/patches-5.2.17-rt9.tar.xz
-
-hrtimer_init_sleeper() calls require a prior initialisation of the
-hrtimer object with hrtimer_init(). Lets make the initialisation of
-the hrtimer object part of hrtimer_init_sleeper(). To remain
-consistent consider init_on_stack as well.
-
-Beside adapting the hrtimer_init_sleeper[_on_stack]() functions, call
-sites need to be updated as well.
-
-Link: http://lkml.kernel.org/r/20180703092541.2870-1-anna-maria@linutronix.de
-Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
-[anna-maria: Updating the commit message, add staging/android/vsoc.c]
-Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de>
----
- block/blk-mq.c | 3 --
- drivers/staging/android/vsoc.c | 6 +----
- include/linux/hrtimer.h | 19 ++++++++++++++--
- include/linux/wait.h | 4 +--
- kernel/futex.c | 19 +++++++---------
- kernel/time/hrtimer.c | 46 ++++++++++++++++++++++++++++++++---------
- net/core/pktgen.c | 4 +--
- 7 files changed, 67 insertions(+), 34 deletions(-)
-
---- a/block/blk-mq.c
-+++ b/block/blk-mq.c
-@@ -3423,10 +3423,9 @@ static bool blk_mq_poll_hybrid_sleep(str
- kt = nsecs;
-
- mode = HRTIMER_MODE_REL;
-- hrtimer_init_on_stack(&hs.timer, CLOCK_MONOTONIC, mode);
-+ hrtimer_init_sleeper_on_stack(&hs, CLOCK_MONOTONIC, mode, current);
- hrtimer_set_expires(&hs.timer, kt);
-
-- hrtimer_init_sleeper(&hs, current);
- do {
- if (blk_mq_rq_state(rq) == MQ_RQ_COMPLETE)
- break;
---- a/drivers/staging/android/vsoc.c
-+++ b/drivers/staging/android/vsoc.c
-@@ -437,12 +437,10 @@ static int handle_vsoc_cond_wait(struct
- return -EINVAL;
- wake_time = ktime_set(arg->wake_time_sec, arg->wake_time_nsec);
-
-- hrtimer_init_on_stack(&to->timer, CLOCK_MONOTONIC,
-- HRTIMER_MODE_ABS);
-+ hrtimer_init_sleeper_on_stack(to, CLOCK_MONOTONIC,
-+ HRTIMER_MODE_ABS, current);
- hrtimer_set_expires_range_ns(&to->timer, wake_time,
- current->timer_slack_ns);
--
-- hrtimer_init_sleeper(to, current);
- }
-
- while (1) {
---- a/include/linux/hrtimer.h
-+++ b/include/linux/hrtimer.h
-@@ -364,10 +364,17 @@ DECLARE_PER_CPU(struct tick_device, tick
- /* Initialize timers: */
- extern void hrtimer_init(struct hrtimer *timer, clockid_t which_clock,
- enum hrtimer_mode mode);
-+extern void hrtimer_init_sleeper(struct hrtimer_sleeper *sl, clockid_t clock_id,
-+ enum hrtimer_mode mode,
-+ struct task_struct *task);
-
- #ifdef CONFIG_DEBUG_OBJECTS_TIMERS
- extern void hrtimer_init_on_stack(struct hrtimer *timer, clockid_t which_clock,
- enum hrtimer_mode mode);
-+extern void hrtimer_init_sleeper_on_stack(struct hrtimer_sleeper *sl,
-+ clockid_t clock_id,
-+ enum hrtimer_mode mode,
-+ struct task_struct *task);
-
- extern void destroy_hrtimer_on_stack(struct hrtimer *timer);
- #else
-@@ -377,6 +384,15 @@ static inline void hrtimer_init_on_stack
- {
- hrtimer_init(timer, which_clock, mode);
- }
-+
-+static inline void hrtimer_init_sleeper_on_stack(struct hrtimer_sleeper *sl,
-+ clockid_t clock_id,
-+ enum hrtimer_mode mode,
-+ struct task_struct *task)
-+{
-+ hrtimer_init_sleeper(sl, clock_id, mode, task);
-+}
-+
- static inline void destroy_hrtimer_on_stack(struct hrtimer *timer) { }
- #endif
-
-@@ -481,9 +497,6 @@ extern long hrtimer_nanosleep(const stru
- const enum hrtimer_mode mode,
- const clockid_t clockid);
-
--extern void hrtimer_init_sleeper(struct hrtimer_sleeper *sl,
-- struct task_struct *tsk);
--
- extern int schedule_hrtimeout_range(ktime_t *expires, u64 delta,
- const enum hrtimer_mode mode);
- extern int schedule_hrtimeout_range_clock(ktime_t *expires,
---- a/include/linux/wait.h
-+++ b/include/linux/wait.h
-@@ -489,8 +489,8 @@ do { \
- int __ret = 0; \
- struct hrtimer_sleeper __t; \
- \
-- hrtimer_init_on_stack(&__t.timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL); \
-- hrtimer_init_sleeper(&__t, current); \
-+ hrtimer_init_sleeper_on_stack(&__t, CLOCK_MONOTONIC, HRTIMER_MODE_REL, \
-+ current); \
- if ((timeout) != KTIME_MAX) \
- hrtimer_start_range_ns(&__t.timer, timeout, \
- current->timer_slack_ns, \
---- a/kernel/futex.c
-+++ b/kernel/futex.c
-@@ -2722,10 +2722,9 @@ static int futex_wait(u32 __user *uaddr,
- if (abs_time) {
- to = &timeout;
-
-- hrtimer_init_on_stack(&to->timer, (flags & FLAGS_CLOCKRT) ?
-- CLOCK_REALTIME : CLOCK_MONOTONIC,
-- HRTIMER_MODE_ABS);
-- hrtimer_init_sleeper(to, current);
-+ hrtimer_init_sleeper_on_stack(to, (flags & FLAGS_CLOCKRT) ?
-+ CLOCK_REALTIME : CLOCK_MONOTONIC,
-+ HRTIMER_MODE_ABS, current);
- hrtimer_set_expires_range_ns(&to->timer, *abs_time,
- current->timer_slack_ns);
- }
-@@ -2824,9 +2823,8 @@ static int futex_lock_pi(u32 __user *uad
-
- if (time) {
- to = &timeout;
-- hrtimer_init_on_stack(&to->timer, CLOCK_REALTIME,
-- HRTIMER_MODE_ABS);
-- hrtimer_init_sleeper(to, current);
-+ hrtimer_init_sleeper_on_stack(to, CLOCK_REALTIME,
-+ HRTIMER_MODE_ABS, current);
- hrtimer_set_expires(&to->timer, *time);
- }
-
-@@ -3244,10 +3242,9 @@ static int futex_wait_requeue_pi(u32 __u
-
- if (abs_time) {
- to = &timeout;
-- hrtimer_init_on_stack(&to->timer, (flags & FLAGS_CLOCKRT) ?
-- CLOCK_REALTIME : CLOCK_MONOTONIC,
-- HRTIMER_MODE_ABS);
-- hrtimer_init_sleeper(to, current);
-+ hrtimer_init_sleeper_on_stack(to, (flags & FLAGS_CLOCKRT) ?
-+ CLOCK_REALTIME : CLOCK_MONOTONIC,
-+ HRTIMER_MODE_ABS, current);
- hrtimer_set_expires_range_ns(&to->timer, *abs_time,
- current->timer_slack_ns);
- }
---- a/kernel/time/hrtimer.c
-+++ b/kernel/time/hrtimer.c
-@@ -1651,13 +1651,44 @@ static enum hrtimer_restart hrtimer_wake
- return HRTIMER_NORESTART;
- }
-
--void hrtimer_init_sleeper(struct hrtimer_sleeper *sl, struct task_struct *task)
-+static void __hrtimer_init_sleeper(struct hrtimer_sleeper *sl,
-+ clockid_t clock_id,
-+ enum hrtimer_mode mode,
-+ struct task_struct *task)
- {
-+ __hrtimer_init(&sl->timer, clock_id, mode);
- sl->timer.function = hrtimer_wakeup;
- sl->task = task;
- }
-+
-+/**
-+ * hrtimer_init_sleeper - initialize sleeper to the given clock
-+ * @sl: sleeper to be initialized
-+ * @clock_id: the clock to be used
-+ * @mode: timer mode abs/rel
-+ * @task: the task to wake up
-+ */
-+void hrtimer_init_sleeper(struct hrtimer_sleeper *sl, clockid_t clock_id,
-+ enum hrtimer_mode mode, struct task_struct *task)
-+{
-+ debug_init(&sl->timer, clock_id, mode);
-+ __hrtimer_init_sleeper(sl, clock_id, mode, task);
-+
-+}
- EXPORT_SYMBOL_GPL(hrtimer_init_sleeper);
-
-+#ifdef CONFIG_DEBUG_OBJECTS_TIMERS
-+void hrtimer_init_sleeper_on_stack(struct hrtimer_sleeper *sl,
-+ clockid_t clock_id,
-+ enum hrtimer_mode mode,
-+ struct task_struct *task)
-+{
-+ debug_object_init_on_stack(&sl->timer, &hrtimer_debug_descr);
-+ __hrtimer_init_sleeper(sl, clock_id, mode, task);
-+}
-+EXPORT_SYMBOL_GPL(hrtimer_init_sleeper_on_stack);
-+#endif
-+
- int nanosleep_copyout(struct restart_block *restart, struct timespec64 *ts)
- {
- switch(restart->nanosleep.type) {
-@@ -1681,8 +1712,6 @@ static int __sched do_nanosleep(struct h
- {
- struct restart_block *restart;
-
-- hrtimer_init_sleeper(t, current);
--
- do {
- set_current_state(TASK_INTERRUPTIBLE);
- hrtimer_start_expires(&t->timer, mode);
-@@ -1719,10 +1748,9 @@ static long __sched hrtimer_nanosleep_re
- struct hrtimer_sleeper t;
- int ret;
-
-- hrtimer_init_on_stack(&t.timer, restart->nanosleep.clockid,
-- HRTIMER_MODE_ABS);
-+ hrtimer_init_sleeper_on_stack(&t, restart->nanosleep.clockid,
-+ HRTIMER_MODE_ABS, current);
- hrtimer_set_expires_tv64(&t.timer, restart->nanosleep.expires);
--
- ret = do_nanosleep(&t, HRTIMER_MODE_ABS);
- destroy_hrtimer_on_stack(&t.timer);
- return ret;
-@@ -1740,7 +1768,7 @@ long hrtimer_nanosleep(const struct time
- if (dl_task(current) || rt_task(current))
- slack = 0;
-
-- hrtimer_init_on_stack(&t.timer, clockid, mode);
-+ hrtimer_init_sleeper_on_stack(&t, clockid, mode, current);
- hrtimer_set_expires_range_ns(&t.timer, timespec64_to_ktime(*rqtp), slack);
- ret = do_nanosleep(&t, mode);
- if (ret != -ERESTART_RESTARTBLOCK)
-@@ -1940,11 +1968,9 @@ schedule_hrtimeout_range_clock(ktime_t *
- return -EINTR;
- }
-
-- hrtimer_init_on_stack(&t.timer, clock_id, mode);
-+ hrtimer_init_sleeper_on_stack(&t, clock_id, mode, current);
- hrtimer_set_expires_range_ns(&t.timer, *expires, delta);
-
-- hrtimer_init_sleeper(&t, current);
--
- hrtimer_start_expires(&t.timer, mode);
-
- if (likely(t.task))
---- a/net/core/pktgen.c
-+++ b/net/core/pktgen.c
-@@ -2154,7 +2154,8 @@ static void spin(struct pktgen_dev *pkt_
- s64 remaining;
- struct hrtimer_sleeper t;
-
-- hrtimer_init_on_stack(&t.timer, CLOCK_MONOTONIC, HRTIMER_MODE_ABS);
-+ hrtimer_init_sleeper_on_stack(&t, CLOCK_MONOTONIC, HRTIMER_MODE_ABS,
-+ current);
- hrtimer_set_expires(&t.timer, spin_until);
-
- remaining = ktime_to_ns(hrtimer_expires_remaining(&t.timer));
-@@ -2169,7 +2170,6 @@ static void spin(struct pktgen_dev *pkt_
- } while (ktime_compare(end_time, spin_until) < 0);
- } else {
- /* see do_nanosleep */
-- hrtimer_init_sleeper(&t, current);
- do {
- set_current_state(TASK_INTERRUPTIBLE);
- hrtimer_start_expires(&t.timer, HRTIMER_MODE_ABS);