* [PATCH RT 0/4] Linux 3.2.81-rt117-rc1
@ 2016-07-12 20:54 Steven Rostedt
2016-07-12 20:54 ` [PATCH RT 1/4] Revert: KVM: lapic: mark LAPIC timer handler as irqsafe Steven Rostedt
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: Steven Rostedt @ 2016-07-12 20:54 UTC (permalink / raw)
To: linux-kernel, linux-rt-users
Cc: Thomas Gleixner, Carsten Emde, Sebastian Andrzej Siewior,
John Kacur, Paul Gortmaker
Dear RT Folks,
This is the RT stable review cycle of patch 3.2.81-rt117-rc1.
Please scream at me if I messed something up. Please test the patches too.
The -rc release will be uploaded to kernel.org and will be deleted when
the final release is out. This is just a review release (or release candidate).
The pre-releases will not be pushed to the git repository, only the
final release is.
If all goes well, this patch will be converted to the next main release
on 7/14/2016.
Enjoy,
-- Steve
To build 3.2.81-rt117-rc1 directly, the following patches should be applied:
http://www.kernel.org/pub/linux/kernel/v3.x/linux-3.2.tar.xz
http://www.kernel.org/pub/linux/kernel/v3.x/patch-3.2.81.xz
http://www.kernel.org/pub/linux/kernel/projects/rt/3.2/patch-3.2.81-rt117-rc1.patch.xz
You can also build from 3.2.81-rt116 by applying the incremental patch:
http://www.kernel.org/pub/linux/kernel/projects/rt/3.2/incr/patch-3.2.81-rt116-rt117-rc1.patch.xz
Changes from 3.2.81-rt116:
---
Corey Minyard (1):
x86: Fix an RT MCE crash
Sebastian Andrzej Siewior (1):
trace: correct off by one while recording the trace-event
Steven Rostedt (Red Hat) (2):
Revert: KVM: lapic: mark LAPIC timer handler as irqsafe
Linux 3.2.81-rt117-rc1
----
arch/x86/kernel/cpu/mcheck/mce.c | 3 ++-
arch/x86/kvm/lapic.c | 42 +++-------------------------------------
include/trace/ftrace.h | 3 +++
localversion-rt | 2 +-
4 files changed, 9 insertions(+), 41 deletions(-)
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH RT 1/4] Revert: KVM: lapic: mark LAPIC timer handler as irqsafe
2016-07-12 20:54 [PATCH RT 0/4] Linux 3.2.81-rt117-rc1 Steven Rostedt
@ 2016-07-12 20:54 ` Steven Rostedt
2016-07-12 20:54 ` [PATCH RT 2/4] trace: correct off by one while recording the trace-event Steven Rostedt
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Steven Rostedt @ 2016-07-12 20:54 UTC (permalink / raw)
To: linux-kernel, linux-rt-users
Cc: Thomas Gleixner, Carsten Emde, Sebastian Andrzej Siewior,
John Kacur, Paul Gortmaker
[-- Attachment #1: 0001-Revert-KVM-lapic-mark-LAPIC-timer-handler-as-irqsafe.patch --]
[-- Type: text/plain, Size: 3002 bytes --]
3.2.81-rt117-rc1 stable review patch.
If anyone has any objections, please let me know.
------------------
From: "Steven Rostedt (Red Hat)" <rostedt@goodmis.org>
The whole patch was not backported correctly and causes allmodconfig to
fail.
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
arch/x86/kvm/lapic.c | 42 +++---------------------------------------
1 file changed, 3 insertions(+), 39 deletions(-)
diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c
index 7198be07b406..055cc49ffb10 100644
--- a/arch/x86/kvm/lapic.c
+++ b/arch/x86/kvm/lapic.c
@@ -679,38 +679,8 @@ static void update_divide_count(struct kvm_lapic *apic)
apic->divide_count);
}
-
-static enum hrtimer_restart apic_timer_fn(struct hrtimer *data);
-
-static void apic_timer_expired(struct hrtimer *data)
-{
- int ret, i = 0;
- enum hrtimer_restart r;
- struct kvm_timer *ktimer = container_of(data, struct kvm_timer, timer);
-
- r = apic_timer_fn(data);
-
- if (r == HRTIMER_RESTART) {
- do {
- ret = hrtimer_start_expires(data, HRTIMER_MODE_ABS);
- if (ret == -ETIME)
- hrtimer_add_expires_ns(&ktimer->timer,
- ktimer->period);
- i++;
- } while (ret == -ETIME && i < 10);
-
- if (ret == -ETIME) {
- printk_once(KERN_ERR "%s: failed to reprogram timer\n",
- __func__);
- WARN_ON_ONCE(1);
- }
- }
-}
-
-
static void start_apic_timer(struct kvm_lapic *apic)
{
- int ret;
ktime_t now;
atomic_set(&apic->lapic_timer.pending, 0);
@@ -740,11 +710,9 @@ static void start_apic_timer(struct kvm_lapic *apic)
}
}
- ret = hrtimer_start(&apic->lapic_timer.timer,
+ hrtimer_start(&apic->lapic_timer.timer,
ktime_add_ns(now, apic->lapic_timer.period),
HRTIMER_MODE_ABS);
- if (ret == -ETIME)
- apic_timer_expired(&apic->lapic_timer.timer);
apic_debug("%s: bus cycle is %" PRId64 "ns, now 0x%016"
PRIx64 ", "
@@ -774,10 +742,8 @@ static void start_apic_timer(struct kvm_lapic *apic)
ns = (tscdeadline - guest_tsc) * 1000000ULL;
do_div(ns, this_tsc_khz);
}
- ret = hrtimer_start(&apic->lapic_timer.timer,
+ hrtimer_start(&apic->lapic_timer.timer,
ktime_add_ns(now, ns), HRTIMER_MODE_ABS);
- if (ret == -ETIME)
- apic_timer_expired(&apic->lapic_timer.timer);
local_irq_restore(flags);
}
@@ -1207,7 +1173,6 @@ int kvm_create_lapic(struct kvm_vcpu *vcpu)
hrtimer_init(&apic->lapic_timer.timer, CLOCK_MONOTONIC,
HRTIMER_MODE_ABS);
apic->lapic_timer.timer.function = kvm_timer_fn;
- apic->lapic_timer.timer.irqsafe = 1;
apic->lapic_timer.t_ops = &lapic_timer_ops;
apic->lapic_timer.kvm = vcpu->kvm;
apic->lapic_timer.vcpu = vcpu;
@@ -1305,8 +1270,7 @@ void __kvm_migrate_apic_timer(struct kvm_vcpu *vcpu)
timer = &apic->lapic_timer.timer;
if (hrtimer_cancel(timer))
- if (hrtimer_start_expires(timer, HRTIMER_MODE_ABS) == -ETIME)
- apic_timer_expired(timer);
+ hrtimer_start_expires(timer, HRTIMER_MODE_ABS);
}
void kvm_lapic_sync_from_vapic(struct kvm_vcpu *vcpu)
--
2.8.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH RT 2/4] trace: correct off by one while recording the trace-event
2016-07-12 20:54 [PATCH RT 0/4] Linux 3.2.81-rt117-rc1 Steven Rostedt
2016-07-12 20:54 ` [PATCH RT 1/4] Revert: KVM: lapic: mark LAPIC timer handler as irqsafe Steven Rostedt
@ 2016-07-12 20:54 ` Steven Rostedt
2016-07-12 20:54 ` [PATCH RT 3/4] x86: Fix an RT MCE crash Steven Rostedt
2016-07-12 20:54 ` [PATCH RT 4/4] Linux 3.2.81-rt117-rc1 Steven Rostedt
3 siblings, 0 replies; 5+ messages in thread
From: Steven Rostedt @ 2016-07-12 20:54 UTC (permalink / raw)
To: linux-kernel, linux-rt-users
Cc: Thomas Gleixner, Carsten Emde, Sebastian Andrzej Siewior,
John Kacur, Paul Gortmaker, stable-rt
[-- Attachment #1: 0002-trace-correct-off-by-one-while-recording-the-trace-e.patch --]
[-- Type: text/plain, Size: 1205 bytes --]
3.2.81-rt117-rc1 stable review patch.
If anyone has any objections, please let me know.
------------------
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Trace events like raw_syscalls show always a preempt code of one. The
reason is that on PREEMPT kernels rcu_read_lock_sched_notrace()
increases the preemption counter and the function recording the counter
is caller within the RCU section.
Cc: stable-rt@vger.kernel.org
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
[ Changed this to upstream version. See commit e947841c0dce ]
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
include/trace/ftrace.h | 3 +++
1 file changed, 3 insertions(+)
diff --git a/include/trace/ftrace.h b/include/trace/ftrace.h
index 763bf05ccb27..73aab555b42d 100644
--- a/include/trace/ftrace.h
+++ b/include/trace/ftrace.h
@@ -530,6 +530,9 @@ ftrace_raw_event_##call(void *__data, proto) \
\
local_save_flags(irq_flags); \
pc = preempt_count(); \
+ /* Account for tracepoint preempt disable */ \
+ if (IS_ENABLED(CONFIG_PREEMPT)) \
+ pc--; \
\
__data_size = ftrace_get_offsets_##call(&__data_offsets, args); \
\
--
2.8.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH RT 3/4] x86: Fix an RT MCE crash
2016-07-12 20:54 [PATCH RT 0/4] Linux 3.2.81-rt117-rc1 Steven Rostedt
2016-07-12 20:54 ` [PATCH RT 1/4] Revert: KVM: lapic: mark LAPIC timer handler as irqsafe Steven Rostedt
2016-07-12 20:54 ` [PATCH RT 2/4] trace: correct off by one while recording the trace-event Steven Rostedt
@ 2016-07-12 20:54 ` Steven Rostedt
2016-07-12 20:54 ` [PATCH RT 4/4] Linux 3.2.81-rt117-rc1 Steven Rostedt
3 siblings, 0 replies; 5+ messages in thread
From: Steven Rostedt @ 2016-07-12 20:54 UTC (permalink / raw)
To: linux-kernel, linux-rt-users
Cc: Thomas Gleixner, Carsten Emde, Sebastian Andrzej Siewior,
John Kacur, Paul Gortmaker, Borislav Petkov, Corey Minyard
[-- Attachment #1: 0003-x86-Fix-an-RT-MCE-crash.patch --]
[-- Type: text/plain, Size: 1272 bytes --]
3.2.81-rt117-rc1 stable review patch.
If anyone has any objections, please let me know.
------------------
From: Corey Minyard <cminyard@mvista.com>
On some x86 systems an MCE interrupt would come in before the kernel
was ready for it. Looking at the latest RT code, it has similar
(but not quite the same) code, except it adds a bool that tells if
MCE handling is initialized. That was required because they had
switched to use swork instead of a kernel thread. Here, just
checking to see if the thread is NULL is good enough to see if
MCE handling is initialized.
Suggested-by: Borislav Petkov <bp@alien8.de>
Signed-off-by: Corey Minyard <cminyard@mvista.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
arch/x86/kernel/cpu/mcheck/mce.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/x86/kernel/cpu/mcheck/mce.c b/arch/x86/kernel/cpu/mcheck/mce.c
index b08a373f66fb..fc02fe279ddc 100644
--- a/arch/x86/kernel/cpu/mcheck/mce.c
+++ b/arch/x86/kernel/cpu/mcheck/mce.c
@@ -1206,7 +1206,8 @@ static int mce_notify_work_init(void)
static void mce_notify_work(void)
{
- wake_up_process(mce_notify_helper);
+ if (mce_notify_helper)
+ wake_up_process(mce_notify_helper);
}
#else
static void mce_notify_work(void)
--
2.8.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH RT 4/4] Linux 3.2.81-rt117-rc1
2016-07-12 20:54 [PATCH RT 0/4] Linux 3.2.81-rt117-rc1 Steven Rostedt
` (2 preceding siblings ...)
2016-07-12 20:54 ` [PATCH RT 3/4] x86: Fix an RT MCE crash Steven Rostedt
@ 2016-07-12 20:54 ` Steven Rostedt
3 siblings, 0 replies; 5+ messages in thread
From: Steven Rostedt @ 2016-07-12 20:54 UTC (permalink / raw)
To: linux-kernel, linux-rt-users
Cc: Thomas Gleixner, Carsten Emde, Sebastian Andrzej Siewior,
John Kacur, Paul Gortmaker
[-- Attachment #1: 0004-Linux-3.2.81-rt117-rc1.patch --]
[-- Type: text/plain, Size: 414 bytes --]
3.2.81-rt117-rc1 stable review patch.
If anyone has any objections, please let me know.
------------------
From: "Steven Rostedt (Red Hat)" <rostedt@goodmis.org>
---
localversion-rt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/localversion-rt b/localversion-rt
index 34eca4e89203..d5f654342ac4 100644
--- a/localversion-rt
+++ b/localversion-rt
@@ -1 +1 @@
--rt116
+-rt117-rc1
--
2.8.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2016-07-12 20:54 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-07-12 20:54 [PATCH RT 0/4] Linux 3.2.81-rt117-rc1 Steven Rostedt
2016-07-12 20:54 ` [PATCH RT 1/4] Revert: KVM: lapic: mark LAPIC timer handler as irqsafe Steven Rostedt
2016-07-12 20:54 ` [PATCH RT 2/4] trace: correct off by one while recording the trace-event Steven Rostedt
2016-07-12 20:54 ` [PATCH RT 3/4] x86: Fix an RT MCE crash Steven Rostedt
2016-07-12 20:54 ` [PATCH RT 4/4] Linux 3.2.81-rt117-rc1 Steven Rostedt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).