[Intel-gfx] [PATCH 02/11] drm/i915: Clarify event_lock locking, irq&mixed context
Daniel Vetter
daniel at ffwll.ch
Mon Sep 29 15:27:12 CEST 2014
On Mon, Sep 29, 2014 at 08:45:56PM +0800, Jike Song wrote:
> On 09/29/2014 08:20 PM, Daniel Vetter wrote:
> >On Mon, Sep 29, 2014 at 02:20:27PM +0800, Jike Song wrote:
> >>On 09/15/2014 08:55 PM, Daniel Vetter wrote:
> >>>Now we tackle the functions also called from interrupt handlers.
> >>>
> >>>- intel_check_page_flip is exclusively called from irq handlers, so a
> >>> plain spin_lock is all we need. In i915_irq.c we have the convention
> >>> to give all such functions an _irq_handler postfix, but that would
> >>> look strange and als be a bit a misleading name. I've opted for a
> >>> WARN_ON(!in_irq()) instead.
> >>
> >>Hi Daniel,
> >>
> >> Is it possible to use in_interrupt() instead? Sorry to tell that, in
> >>our iGVT-g implementation, the host i915 irq handler needs to be called
> >>in a non hardirq driven context. i.e. a tasklet or workqueue.
> >
> >Hm, why that? Depending upon how you do this you might break a lot of the
> >interrupt related locking we have ... This is a crucial integration issue,
> >which patch does that change?
> >-Daniel
>
> The RFC patch set is not sent out yet, hopefully in 1~2 days :)
>
> Yes I know it's not a good implementation ... I also wish there would be
> a better way to go :)
Well, can you still please intrigue me with why you have to change our
interrupt handling from hardirq to work item? It sounds like there's some
crucial issue of the overall design hidden in there.
Thanks, Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
More information about the Intel-gfx
mailing list