Commit 596e5efc authored by Chris Wilson's avatar Chris Wilson

drm/i915: Bump reserved size for legacy gen8 semaphore emission

With 5 rings and a flush, we need 192 bytes of space to emit the
breadcrumb and semaphores. However, we need some spare room the size of
the single largest packet (36 dwords, 144 bytes) to accommodate
wraparound giving a grand total of 336 bytes
Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: default avatarJoonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1461917226-9132-1-git-send-email-chris@chris-wilson.co.uk
parent 0f572ebe
...@@ -483,10 +483,10 @@ static inline u32 intel_ring_get_tail(struct intel_ringbuffer *ringbuf) ...@@ -483,10 +483,10 @@ static inline u32 intel_ring_get_tail(struct intel_ringbuffer *ringbuf)
/* /*
* Arbitrary size for largest possible 'add request' sequence. The code paths * Arbitrary size for largest possible 'add request' sequence. The code paths
* are complex and variable. Empirical measurement shows that the worst case * are complex and variable. Empirical measurement shows that the worst case
* is ILK at 136 words. Reserving too much is better than reserving too little * is BDW at 192 bytes (6 + 6 + 36 dwords), then ILK at 136 bytes. However,
* as that allows for corner cases that might have been missed. So the figure * we need to allocate double the largest single packet within that emission
* has been rounded up to 160 words. * to account for tail wraparound (so 6 + 6 + 72 dwords for BDW).
*/ */
#define MIN_SPACE_FOR_ADD_REQUEST 160 #define MIN_SPACE_FOR_ADD_REQUEST 336
#endif /* _INTEL_RINGBUFFER_H_ */ #endif /* _INTEL_RINGBUFFER_H_ */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment