drm/i915/gem: Make caps.scheduler static
We do not notify userspace when the scheduler capabilities are changed (due to wedging the driver) and as such userspace will expect the caps to be static and unchanging. Make it so, and so we only need to compute our caps once during driver registration. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20190806124300.24945-1-chris@chris-wilson.co.uk
This commit is contained in:
@@ -459,13 +459,7 @@ i915_gem_shrinker_vmap(struct notifier_block *nb, unsigned long event, void *ptr
|
||||
return NOTIFY_DONE;
|
||||
}
|
||||
|
||||
/**
|
||||
* i915_gem_shrinker_register - Register the i915 shrinker
|
||||
* @i915: i915 device
|
||||
*
|
||||
* This function registers and sets up the i915 shrinker and OOM handler.
|
||||
*/
|
||||
void i915_gem_shrinker_register(struct drm_i915_private *i915)
|
||||
void i915_gem_driver_register__shrinker(struct drm_i915_private *i915)
|
||||
{
|
||||
i915->mm.shrinker.scan_objects = i915_gem_shrinker_scan;
|
||||
i915->mm.shrinker.count_objects = i915_gem_shrinker_count;
|
||||
@@ -480,13 +474,7 @@ void i915_gem_shrinker_register(struct drm_i915_private *i915)
|
||||
WARN_ON(register_vmap_purge_notifier(&i915->mm.vmap_notifier));
|
||||
}
|
||||
|
||||
/**
|
||||
* i915_gem_shrinker_unregister - Unregisters the i915 shrinker
|
||||
* @i915: i915 device
|
||||
*
|
||||
* This function unregisters the i915 shrinker and OOM handler.
|
||||
*/
|
||||
void i915_gem_shrinker_unregister(struct drm_i915_private *i915)
|
||||
void i915_gem_driver_unregister__shrinker(struct drm_i915_private *i915)
|
||||
{
|
||||
WARN_ON(unregister_vmap_purge_notifier(&i915->mm.vmap_notifier));
|
||||
WARN_ON(unregister_oom_notifier(&i915->mm.oom_notifier));
|
||||
|
@@ -382,7 +382,7 @@ static bool assert_mmap_offset(struct drm_i915_private *i915,
|
||||
|
||||
static void disable_retire_worker(struct drm_i915_private *i915)
|
||||
{
|
||||
i915_gem_shrinker_unregister(i915);
|
||||
i915_gem_driver_unregister__shrinker(i915);
|
||||
|
||||
intel_gt_pm_get(&i915->gt);
|
||||
|
||||
@@ -398,7 +398,7 @@ static void restore_retire_worker(struct drm_i915_private *i915)
|
||||
igt_flush_test(i915, I915_WAIT_LOCKED);
|
||||
mutex_unlock(&i915->drm.struct_mutex);
|
||||
|
||||
i915_gem_shrinker_register(i915);
|
||||
i915_gem_driver_register__shrinker(i915);
|
||||
}
|
||||
|
||||
static void mmap_offset_lock(struct drm_i915_private *i915)
|
||||
|
Reference in New Issue
Block a user