[Intel-gfx] [CI] drm/i915: Keep user GGTT alive for a minimum of 250ms

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Tue May 28 10:11:08 UTC 2019


Op 28-05-2019 om 11:27 schreef Chris Wilson:
> Quoting Maarten Lankhorst (2019-05-28 10:24:40)
>> Op 27-05-2019 om 13:51 schreef Chris Wilson:
>>> Do not allow runtime pm autosuspend to remove userspace GGTT mmaps too
>>> quickly. For example, igt sets the autosuspend delay to 0, and so we
>>> immediately attempt to perform runtime suspend upon releasing the
>>> wakeref. Unfortunately, that involves tearing down GGTT mmaps as they
>>> require an active device.
>>>
>>> Override the autosuspend for GGTT mmaps, by keeping the wakeref around
>>> for 250ms after populating the PTE for a fresh mmap.
>>>
>>> v2: Prefer refcount_t for its under/overflow error detection
>>> v3: Flush the user runtime autosuspend prior to system system.
>>>
>>> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
>>> Cc: Mika Kuoppala <mika.kuoppala at linux.intel.com>
>>> Reviewed-by: Mika Kuoppala <mika.kuoppala at linux.intel.com>
>> Can't this extra delay be added to the kernel core? Feels like we're just duplicating autosuspend behavior here..
> Yes. In the end, we would need to adjust the device pm to clamp the user
> sysfs value. But really, we want different floors for different
> operations as we would expect different wakeup latencies / penalties.
> E.g. reaping GTT mmaps is expensive, but if none are in use...
> -Chris

Seems a bit like the PM QoS management then, but for autosuspend.



More information about the Intel-gfx mailing list