Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1516465
| From | Thomas Gleixner <tglx@linutronix.de> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: task isolation discussion at Linux Plumbers |
| Date | 2016-11-07 19:50 +0100 |
| Message-ID | <sAX9w-71s-15@gated-at.bofh.it> (permalink) |
| References | <s6U5P-8nJ-3@gated-at.bofh.it> <sAbHz-1Cs-7@gated-at.bofh.it> <sAVr3-5FZ-25@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Mon, 7 Nov 2016, Thomas Gleixner wrote:
> > == Missing oneshot_stopped callbacks ==
> >
> > I raised the issue that various clock_event_device sources don't
> > always support oneshot_stopped, which can cause an additional
> > final interrupt to occur after the timer infrastructure believes the
> > interrupt has been stopped. I have patches to fix this for tile and
> > arm64 in my patch series; Thomas volunteered to look at adding
> > equivalent support for x86.
>
> Right.
Untested patch below should fix that.
Thanks,
tglx
8<---------------
--- a/arch/x86/kernel/apic/apic.c
+++ b/arch/x86/kernel/apic/apic.c
@@ -530,18 +530,20 @@ static void lapic_timer_broadcast(const
* The local apic timer can be used for any function which is CPU local.
*/
static struct clock_event_device lapic_clockevent = {
- .name = "lapic",
- .features = CLOCK_EVT_FEAT_PERIODIC |
- CLOCK_EVT_FEAT_ONESHOT | CLOCK_EVT_FEAT_C3STOP
- | CLOCK_EVT_FEAT_DUMMY,
- .shift = 32,
- .set_state_shutdown = lapic_timer_shutdown,
- .set_state_periodic = lapic_timer_set_periodic,
- .set_state_oneshot = lapic_timer_set_oneshot,
- .set_next_event = lapic_next_event,
- .broadcast = lapic_timer_broadcast,
- .rating = 100,
- .irq = -1,
+ .name = "lapic",
+ .features = CLOCK_EVT_FEAT_PERIODIC |
+ CLOCK_EVT_FEAT_ONESHOT |
+ CLOCK_EVT_FEAT_C3STOP |
+ CLOCK_EVT_FEAT_DUMMY,
+ .shift = 32,
+ .set_state_shutdown = lapic_timer_shutdown,
+ .set_state_periodic = lapic_timer_set_periodic,
+ .set_state_oneshot = lapic_timer_set_oneshot,
+ .set_state_oneshot_stopped = lapic_timer_shutdown,
+ .set_next_event = lapic_next_event,
+ .broadcast = lapic_timer_broadcast,
+ .rating = 100,
+ .irq = -1,
};
static DEFINE_PER_CPU(struct clock_event_device, lapic_events);
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Re: task isolation discussion at Linux Plumbers Thomas Gleixner <tglx@linutronix.de> - 2016-11-07 18:00 +0100
Re: task isolation discussion at Linux Plumbers Thomas Gleixner <tglx@linutronix.de> - 2016-11-07 19:50 +0100
Re: task isolation discussion at Linux Plumbers Rik van Riel <riel@redhat.com> - 2016-11-07 20:20 +0100
Re: task isolation discussion at Linux Plumbers Will Deacon <will.deacon@arm.com> - 2016-11-07 20:20 +0100
Re: task isolation discussion at Linux Plumbers Rik van Riel <riel@redhat.com> - 2016-11-07 20:30 +0100
csiph-web