]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: Avoid refcount_inc on known zero count
authorChris Wilson <chris@chris-wilson.co.uk>
Tue, 28 May 2019 15:40:53 +0000 (16:40 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Wed, 29 May 2019 12:15:39 +0000 (13:15 +0100)
commita10b98738bcc153b189c494452f2f45a5a7b92fa
tree04083e57f7dc8179291ec79897244e4a5f3a1b56
parente93941cb8b50d3995239a095cd1a2f57195c2eaf
drm/i915: Avoid refcount_inc on known zero count

In intel_wakeref_auto, we use refcount_inc_not_zero to detect the first
use and initialise the timer. On doing so, we have to avoid using
refcount_inc on that zero count as the debug code flags that as an
error:
refcount_t: increment on 0; use-after-free.

Rearrange the code so that if we know the count is 0 and we are
initialising, we explicitly set it to 1.

Fixes: fae9bad98613 ("drm/i915: Keep user GGTT alive for a minimum of 250ms")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190528154053.22004-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/intel_wakeref.c