lkml.org 
[lkml]   [2018]   [Nov]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC PATCH 13/13] m68k: mvme16x: Convert to clocksource APIy
On Tue, 13 Nov 2018, Thomas Gleixner wrote:

> On Wed, 14 Nov 2018, Finn Thain wrote:
> >
> > What I mean by that is, the interrupt level (IPL) prevents interrupt
> > handlers from being re-entered. But a handler can still get
> > interrupted by a higher priority interrupt request. In the past I've
> > had to add defensive locking because of this.
> >
> > In these patches I've assumed it was possible for some higher priority
> > interrupt handler to perform a clocksource read after the timer
> > handler started executing. Hence the use of local_irq_save/restore.
> >
> > To be sure, I've just run a quick test and confirmed that the timer
> > handler can indeed get interrupted by the ethernet interrupt handler.
>
> Urgh. Then you have more serious trouble. If the interrupting handler
> calls any of the time accessor functions then you can actually live lock
> when the interrupt happens in the middle of the write locked section of
> the core timekeeping update.

Does this apply to arch_gettimeoffset also? If so, that would mean another
bug fix patch for -stable...

> So you really want to disable interrupts across the whole timer
> interrupt function or make sure that the timer interrupt is the highest
> priority one on the system.
>

The timer interrupt priority isn't always what one would hope.

But I can certainly disable interrupts for timer_interrupt() execution
(that is, xtime_update() etc.)

--

> Thanks,
>
> tglx
>

\
 
 \ /
  Last update: 2018-11-13 23:34    [W:0.081 / U:3.204 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site