summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>2016-07-29 16:39:50 +0200
committerSebastian Andrzej Siewior <bigeasy@linutronix.de>2016-07-29 16:39:50 +0200
commitcb5f946a5c8a7798151822cc0f4e16c5e21ed03f (patch)
tree1f0921ae1dcc08d84c9d08ca072ac9c675888274
parent0cc16024f914f3e629502ed3f0a35407e773c4d7 (diff)
download4.8-rt-patches-cb5f946a5c8a7798151822cc0f4e16c5e21ed03f.tar.gz
[ANNOUNCE] 4.6.5-rt9v4.6.5-rt9-patches
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
-rw-r--r--patches/0005-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch2
-rw-r--r--patches/KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch6
-rw-r--r--patches/arch-arm64-Add-lazy-preempt-support.patch6
-rw-r--r--patches/i915-bogus-warning-from-i915-when-running-on-PREEMPT.patch2
-rw-r--r--patches/i915_compile_fix.patch4
-rw-r--r--patches/localversion.patch2
-rw-r--r--patches/preempt-lazy-support.patch16
-rw-r--r--patches/rt-add-rt-locks.patch8
-rw-r--r--patches/rtmutex-futex-prepare-rt.patch10
-rw-r--r--patches/skbufhead-raw-lock.patch2
-rw-r--r--patches/sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch6
11 files changed, 32 insertions, 32 deletions
diff --git a/patches/0005-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch b/patches/0005-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch
index b560ddf9703a7a..032f845b13b7ce 100644
--- a/patches/0005-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch
+++ b/patches/0005-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch
@@ -30,7 +30,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
--- a/kernel/futex.c
+++ b/kernel/futex.c
-@@ -866,7 +866,9 @@ void exit_pi_state_list(struct task_stru
+@@ -874,7 +874,9 @@ void exit_pi_state_list(struct task_stru
* task still owns the PI-state:
*/
if (head->next != next) {
diff --git a/patches/KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch b/patches/KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch
index f32ba0d4f3ab27..f978063030b058 100644
--- a/patches/KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch
+++ b/patches/KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch
@@ -22,7 +22,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
--- a/arch/arm/kvm/arm.c
+++ b/arch/arm/kvm/arm.c
-@@ -581,7 +581,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_v
+@@ -582,7 +582,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_v
* involves poking the GIC, which must be done in a
* non-preemptible context.
*/
@@ -31,7 +31,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
kvm_pmu_flush_hwstate(vcpu);
kvm_timer_flush_hwstate(vcpu);
kvm_vgic_flush_hwstate(vcpu);
-@@ -602,7 +602,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_v
+@@ -603,7 +603,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_v
kvm_pmu_sync_hwstate(vcpu);
kvm_timer_sync_hwstate(vcpu);
kvm_vgic_sync_hwstate(vcpu);
@@ -40,7 +40,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
continue;
}
-@@ -658,7 +658,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_v
+@@ -659,7 +659,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_v
kvm_vgic_sync_hwstate(vcpu);
diff --git a/patches/arch-arm64-Add-lazy-preempt-support.patch b/patches/arch-arm64-Add-lazy-preempt-support.patch
index e8c39a43f44f23..e6a68d6994e846 100644
--- a/patches/arch-arm64-Add-lazy-preempt-support.patch
+++ b/patches/arch-arm64-Add-lazy-preempt-support.patch
@@ -65,7 +65,7 @@ Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
DEFINE(TI_CPU, offsetof(struct thread_info, cpu));
--- a/arch/arm64/kernel/entry.S
+++ b/arch/arm64/kernel/entry.S
-@@ -411,11 +411,16 @@ ENDPROC(el1_sync)
+@@ -426,11 +426,16 @@ ENDPROC(el1_sync)
#ifdef CONFIG_PREEMPT
ldr w24, [tsk, #TI_PREEMPT] // get preempt count
@@ -85,7 +85,7 @@ Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
#endif
#ifdef CONFIG_TRACE_IRQFLAGS
bl trace_hardirqs_on
-@@ -429,6 +434,7 @@ ENDPROC(el1_irq)
+@@ -444,6 +449,7 @@ ENDPROC(el1_irq)
1: bl preempt_schedule_irq // irq en/disable is done inside
ldr x0, [tsk, #TI_FLAGS] // get new tasks TI_FLAGS
tbnz x0, #TIF_NEED_RESCHED, 1b // needs rescheduling?
@@ -93,7 +93,7 @@ Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
ret x24
#endif
-@@ -675,6 +681,7 @@ ENDPROC(cpu_switch_to)
+@@ -690,6 +696,7 @@ ENDPROC(cpu_switch_to)
*/
work_pending:
tbnz x1, #TIF_NEED_RESCHED, work_resched
diff --git a/patches/i915-bogus-warning-from-i915-when-running-on-PREEMPT.patch b/patches/i915-bogus-warning-from-i915-when-running-on-PREEMPT.patch
index 263c1c0fda88ba..8582799ec45877 100644
--- a/patches/i915-bogus-warning-from-i915-when-running-on-PREEMPT.patch
+++ b/patches/i915-bogus-warning-from-i915-when-running-on-PREEMPT.patch
@@ -18,7 +18,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -11476,7 +11476,7 @@ void intel_check_page_flip(struct drm_de
+@@ -11496,7 +11496,7 @@ void intel_check_page_flip(struct drm_de
struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
struct intel_unpin_work *work;
diff --git a/patches/i915_compile_fix.patch b/patches/i915_compile_fix.patch
index 61ffbf809d9583..05f39cdeae6b6d 100644
--- a/patches/i915_compile_fix.patch
+++ b/patches/i915_compile_fix.patch
@@ -16,8 +16,8 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
if (!mutex_is_locked(mutex))
return false;
--#if defined(CONFIG_SMP) || defined(CONFIG_DEBUG_MUTEXES)
-+#if (defined(CONFIG_SMP) || defined(CONFIG_DEBUG_MUTEXES)) && !defined(CONFIG_PREEMPT_RT_BASE)
+-#if defined(CONFIG_DEBUG_MUTEXES) || defined(CONFIG_MUTEX_SPIN_ON_OWNER)
++#if (defined(CONFIG_DEBUG_MUTEXES) || defined(CONFIG_MUTEX_SPIN_ON_OWNER)) && !defined(CONFIG_PREEMPT_RT_BASE)
return mutex->owner == task;
#else
/* Since UP may be pre-empted, we cannot assume that we own the lock */
diff --git a/patches/localversion.patch b/patches/localversion.patch
index 68c7b973cc487c..02952cda4bfa23 100644
--- a/patches/localversion.patch
+++ b/patches/localversion.patch
@@ -10,4 +10,4 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
--- /dev/null
+++ b/localversion-rt
@@ -0,0 +1 @@
-+-rt8
++-rt9
diff --git a/patches/preempt-lazy-support.patch b/patches/preempt-lazy-support.patch
index 95e1ab220a8cd9..6a003dc6665aeb 100644
--- a/patches/preempt-lazy-support.patch
+++ b/patches/preempt-lazy-support.patch
@@ -358,7 +358,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
*/
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
-@@ -3318,7 +3318,7 @@ check_preempt_tick(struct cfs_rq *cfs_rq
+@@ -3335,7 +3335,7 @@ check_preempt_tick(struct cfs_rq *cfs_rq
ideal_runtime = sched_slice(cfs_rq, curr);
delta_exec = curr->sum_exec_runtime - curr->prev_sum_exec_runtime;
if (delta_exec > ideal_runtime) {
@@ -367,7 +367,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
/*
* The current task ran long enough, ensure it doesn't get
* re-elected due to buddy favours.
-@@ -3342,7 +3342,7 @@ check_preempt_tick(struct cfs_rq *cfs_rq
+@@ -3359,7 +3359,7 @@ check_preempt_tick(struct cfs_rq *cfs_rq
return;
if (delta > ideal_runtime)
@@ -376,7 +376,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
}
static void
-@@ -3487,7 +3487,7 @@ entity_tick(struct cfs_rq *cfs_rq, struc
+@@ -3504,7 +3504,7 @@ entity_tick(struct cfs_rq *cfs_rq, struc
* validating it and just reschedule.
*/
if (queued) {
@@ -385,7 +385,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
return;
}
/*
-@@ -3669,7 +3669,7 @@ static void __account_cfs_rq_runtime(str
+@@ -3686,7 +3686,7 @@ static void __account_cfs_rq_runtime(str
* hierarchy can be throttled
*/
if (!assign_cfs_rq_runtime(cfs_rq) && likely(cfs_rq->curr))
@@ -394,7 +394,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
}
static __always_inline
-@@ -4281,7 +4281,7 @@ static void hrtick_start_fair(struct rq
+@@ -4298,7 +4298,7 @@ static void hrtick_start_fair(struct rq
if (delta < 0) {
if (rq->curr == p)
@@ -403,7 +403,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
return;
}
hrtick_start(rq, delta);
-@@ -5421,7 +5421,7 @@ static void check_preempt_wakeup(struct
+@@ -5438,7 +5438,7 @@ static void check_preempt_wakeup(struct
return;
preempt:
@@ -412,7 +412,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
/*
* Only set the backward buddy when the current task is still
* on the rq. This can happen when a wakeup gets interleaved
-@@ -8172,7 +8172,7 @@ static void task_fork_fair(struct task_s
+@@ -8189,7 +8189,7 @@ static void task_fork_fair(struct task_s
* 'current' within the tree based on its new key value.
*/
swap(curr->vruntime, se->vruntime);
@@ -421,7 +421,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
}
se->vruntime -= cfs_rq->min_vruntime;
-@@ -8197,7 +8197,7 @@ prio_changed_fair(struct rq *rq, struct
+@@ -8214,7 +8214,7 @@ prio_changed_fair(struct rq *rq, struct
*/
if (rq->curr == p) {
if (p->prio > oldprio)
diff --git a/patches/rt-add-rt-locks.patch b/patches/rt-add-rt-locks.patch
index 26135d8ed1a44e..31c7532ccd0565 100644
--- a/patches/rt-add-rt-locks.patch
+++ b/patches/rt-add-rt-locks.patch
@@ -911,7 +911,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+#endif
--- a/kernel/futex.c
+++ b/kernel/futex.c
-@@ -1263,6 +1263,7 @@ static int wake_futex_pi(u32 __user *uad
+@@ -1271,6 +1271,7 @@ static int wake_futex_pi(u32 __user *uad
struct futex_pi_state *pi_state = this->pi_state;
u32 uninitialized_var(curval), newval;
WAKE_Q(wake_q);
@@ -919,7 +919,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
bool deboost;
int ret = 0;
-@@ -1329,7 +1330,8 @@ static int wake_futex_pi(u32 __user *uad
+@@ -1337,7 +1338,8 @@ static int wake_futex_pi(u32 __user *uad
raw_spin_unlock_irq(&pi_state->pi_mutex.wait_lock);
@@ -929,7 +929,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
/*
* First unlock HB so the waiter does not spin on it once he got woken
-@@ -1339,6 +1341,7 @@ static int wake_futex_pi(u32 __user *uad
+@@ -1347,6 +1349,7 @@ static int wake_futex_pi(u32 __user *uad
*/
spin_unlock(&hb->lock);
wake_up_q(&wake_q);
@@ -937,7 +937,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
if (deboost)
rt_mutex_adjust_prio(current);
-@@ -2813,10 +2816,7 @@ static int futex_wait_requeue_pi(u32 __u
+@@ -2821,10 +2824,7 @@ static int futex_wait_requeue_pi(u32 __u
* The waiter is allocated on our stack, manipulated by the requeue
* code while we sleep on uaddr.
*/
diff --git a/patches/rtmutex-futex-prepare-rt.patch b/patches/rtmutex-futex-prepare-rt.patch
index bbfc25f1ba43cc..b8bdacad98276a 100644
--- a/patches/rtmutex-futex-prepare-rt.patch
+++ b/patches/rtmutex-futex-prepare-rt.patch
@@ -15,7 +15,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
--- a/kernel/futex.c
+++ b/kernel/futex.c
-@@ -1886,6 +1886,16 @@ static int futex_requeue(u32 __user *uad
+@@ -1894,6 +1894,16 @@ static int futex_requeue(u32 __user *uad
requeue_pi_wake_futex(this, &key2, hb2);
drop_count++;
continue;
@@ -32,7 +32,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
} else if (ret) {
/*
* rt_mutex_start_proxy_lock() detected a
-@@ -2776,7 +2786,7 @@ static int futex_wait_requeue_pi(u32 __u
+@@ -2784,7 +2794,7 @@ static int futex_wait_requeue_pi(u32 __u
struct hrtimer_sleeper timeout, *to = NULL;
struct rt_mutex_waiter rt_waiter;
struct rt_mutex *pi_mutex = NULL;
@@ -41,7 +41,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
union futex_key key2 = FUTEX_KEY_INIT;
struct futex_q q = futex_q_init;
int res, ret;
-@@ -2835,20 +2845,55 @@ static int futex_wait_requeue_pi(u32 __u
+@@ -2843,20 +2853,55 @@ static int futex_wait_requeue_pi(u32 __u
/* Queue the futex_q, drop the hb lock, wait for wakeup. */
futex_wait_queue_me(hb, &q, to);
@@ -108,7 +108,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
/* Check if the requeue code acquired the second futex for us. */
if (!q.rt_waiter) {
-@@ -2857,14 +2902,15 @@ static int futex_wait_requeue_pi(u32 __u
+@@ -2865,14 +2910,15 @@ static int futex_wait_requeue_pi(u32 __u
* did a lock-steal - fix up the PI-state in that case.
*/
if (q.pi_state && (q.pi_state->owner != current)) {
@@ -126,7 +126,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
}
} else {
/*
-@@ -2877,7 +2923,8 @@ static int futex_wait_requeue_pi(u32 __u
+@@ -2885,7 +2931,8 @@ static int futex_wait_requeue_pi(u32 __u
ret = rt_mutex_finish_proxy_lock(pi_mutex, to, &rt_waiter);
debug_rt_mutex_free_waiter(&rt_waiter);
diff --git a/patches/skbufhead-raw-lock.patch b/patches/skbufhead-raw-lock.patch
index dcfa3240a27b11..a5cdaf1527879b 100644
--- a/patches/skbufhead-raw-lock.patch
+++ b/patches/skbufhead-raw-lock.patch
@@ -33,7 +33,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
};
struct sk_buff;
-@@ -1537,6 +1538,12 @@ static inline void skb_queue_head_init(s
+@@ -1538,6 +1539,12 @@ static inline void skb_queue_head_init(s
__skb_queue_head_init(list);
}
diff --git a/patches/sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch b/patches/sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch
index 4c851dd5736a6c..5a1e1eb8430b18 100644
--- a/patches/sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch
+++ b/patches/sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch
@@ -33,7 +33,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
--- a/net/sunrpc/svc_xprt.c
+++ b/net/sunrpc/svc_xprt.c
-@@ -342,7 +342,7 @@ void svc_xprt_do_enqueue(struct svc_xprt
+@@ -344,7 +344,7 @@ void svc_xprt_do_enqueue(struct svc_xprt
goto out;
}
@@ -42,7 +42,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
pool = svc_pool_for_cpu(xprt->xpt_server, cpu);
atomic_long_inc(&pool->sp_stats.packets);
-@@ -378,7 +378,7 @@ void svc_xprt_do_enqueue(struct svc_xprt
+@@ -380,7 +380,7 @@ void svc_xprt_do_enqueue(struct svc_xprt
atomic_long_inc(&pool->sp_stats.threads_woken);
wake_up_process(rqstp->rq_task);
@@ -51,7 +51,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
goto out;
}
rcu_read_unlock();
-@@ -399,7 +399,7 @@ void svc_xprt_do_enqueue(struct svc_xprt
+@@ -401,7 +401,7 @@ void svc_xprt_do_enqueue(struct svc_xprt
goto redo_search;
}
rqstp = NULL;