diff options
author | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2016-07-29 16:39:50 +0200 |
---|---|---|
committer | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2016-07-29 16:39:50 +0200 |
commit | cb5f946a5c8a7798151822cc0f4e16c5e21ed03f (patch) | |
tree | 1f0921ae1dcc08d84c9d08ca072ac9c675888274 | |
parent | 0cc16024f914f3e629502ed3f0a35407e773c4d7 (diff) | |
download | 4.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-.patch | 2 | ||||
-rw-r--r-- | patches/KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch | 6 | ||||
-rw-r--r-- | patches/arch-arm64-Add-lazy-preempt-support.patch | 6 | ||||
-rw-r--r-- | patches/i915-bogus-warning-from-i915-when-running-on-PREEMPT.patch | 2 | ||||
-rw-r--r-- | patches/i915_compile_fix.patch | 4 | ||||
-rw-r--r-- | patches/localversion.patch | 2 | ||||
-rw-r--r-- | patches/preempt-lazy-support.patch | 16 | ||||
-rw-r--r-- | patches/rt-add-rt-locks.patch | 8 | ||||
-rw-r--r-- | patches/rtmutex-futex-prepare-rt.patch | 10 | ||||
-rw-r--r-- | patches/skbufhead-raw-lock.patch | 2 | ||||
-rw-r--r-- | patches/sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch | 6 |
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; |