Re: [PATCH 13/13] drm/i915: Cache last IRQ seqno to reduce IRQ overhead

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/12/2015 14:55, Chris Wilson wrote:
On Fri, Dec 11, 2015 at 01:12:01PM +0000, John.C.Harrison@xxxxxxxxx wrote:
From: John Harrison <John.C.Harrison@xxxxxxxxx>

The notify function can be called many times without the seqno
changing. A large number of duplicates are to prevent races due to the
requirement of not enabling interrupts until requested. However, when
interrupts are enabled the IRQ handle can be called multiple times
without the ring's seqno value changing. This patch reduces the
overhead of these extra calls by caching the last processed seqno
value and early exiting if it has not changed.
This is just plain wrong. Every user-interrupt is preceded by a seqno
update.
Except that mutiple interrupts can be coalesced if they occur too close together. The driver's IRQ handler still gets called for each individual interrupt but the first time it is run it sees the seqno for the last. Thus all the processing gets done on the first invocation. The multiple subsequent invocations (I have seen up to four I believe) then have nothing to do.

-Chris


_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux