Patch "drm/i915: Squelch any ktime/jiffie rounding errors for wait-ioctl" has been added to the 4.10-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
drm/i915: Squelch any ktime/jiffie rounding errors for wait-ioctl
to the 4.10-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
drm-i915-squelch-any-ktime-jiffie-rounding-errors-for-wait-ioctl.patch
and it can be found in the queue-4.10 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
89cf83d4e065ff9fbd2ddc674489c8058eeca758Mon Sep 17 00:00:00 2001
From: Chris Wilson <[email protected]>
Date: Thu, 16 Feb 2017 12:54:41 +0000
Subject: drm/i915: Squelch any ktime/jiffie rounding errors for wait-ioctl
From: Chris Wilson <[email protected]>
commit 89cf83d4e065ff9fbd2ddc674489c8058eeca758 upstream.
We wait upon jiffies, but report the time elapsed using a high-resolution timer. This discrepancy can lead to us timing out the wait prior to us reporting the elapsed time as complete.
This restores the squelching lost in commit e95433c73a11 ("drm/i915:
Rearrange i915_wait_request() accounting with callers").
--- drivers/gpu/drm/i915/i915_gem.c | 10 ++++++++++ 1 file changed, 10 insertions(+)
drivers/gpu/drm/i915/i915_gem.c +10 -0
@@ -3003,6 +3003,16 @@ i915_gem_wait_ioctl(struct drm_device *d args->timeout_ns -=ktime_to_ns (ktime_sub (ktime_get (), start));if (args->timeout_ns <0 ) args->timeout_ns =0 ; + +/* +* Apparently ktime isn't accurate enough and occasionally has a +* bit of mismatch in the jiffies<->nsecs<->ktime loop. So patch +* things up to make the test happy. We allow up to 1 jiffy. +* +* This is a regression from the timespec->ktime conversion. +*/ +if (ret == -ETIME && !nsecs_to_jiffies (args->timeout_ns)) + args->timeout_ns =0 ; }i915_gem_object_put (obj);
Patches currently in stable-queue which might be from [email protected] are
queue-4.10/drm-i915-squelch-any-ktime-jiffie-rounding-errors-for-wait-ioctl.patch queue-4.10/drm-i915-fbdev-stop-repeating-tile-configuration-on-stagnation.patch queue-4.10/drm-i915-store-a-permanent-error-in-obj-mm.pages.patch queue-4.10/drm-i915-gen9-increase-pcode-request-timeout-to-50ms.patch queue-4.10/drm-i915-avoid-tweaking-evaluation-thresholds-on-baytrail-v3.patch queue-4.10/drm-i915-fix-forcewake-active-domain-tracking.patch