Message ID | 20191021183236.21790-2-chris@chris-wilson.co.uk (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [1/2] drm/i915: Lift i915_vma_parked() onto the gt | expand |
On 21/10/2019 19:32, Chris Wilson wrote: > With the last user, i915_vma_parked(), retired, there are no more users > of the per-gt pm notifications and we can remove the unused > infrastructure. > > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> > Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > --- > drivers/gpu/drm/i915/gem/i915_gem_pm.c | 25 ------------------------ > drivers/gpu/drm/i915/gem/i915_gem_pm.h | 2 -- > drivers/gpu/drm/i915/gt/intel_gt_pm.c | 10 ---------- > drivers/gpu/drm/i915/gt/intel_gt_pm.h | 5 ----- > drivers/gpu/drm/i915/gt/intel_gt_types.h | 2 -- > drivers/gpu/drm/i915/i915_gem.c | 1 - > 6 files changed, 45 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gem/i915_gem_pm.c b/drivers/gpu/drm/i915/gem/i915_gem_pm.c > index 2aa7e9be088f..ee3279c76566 100644 > --- a/drivers/gpu/drm/i915/gem/i915_gem_pm.c > +++ b/drivers/gpu/drm/i915/gem/i915_gem_pm.c > @@ -11,24 +11,6 @@ > > #include "i915_drv.h" > > -static int pm_notifier(struct notifier_block *nb, > - unsigned long action, > - void *data) > -{ > - struct drm_i915_private *i915 = > - container_of(nb, typeof(*i915), gem.pm_notifier); > - > - switch (action) { > - case INTEL_GT_UNPARK: > - break; > - > - case INTEL_GT_PARK: > - break; > - } > - > - return NOTIFY_OK; > -} > - > static bool switch_to_kernel_context_sync(struct intel_gt *gt) > { > bool result = !intel_gt_is_wedged(gt); > @@ -206,10 +188,3 @@ void i915_gem_resume(struct drm_i915_private *i915) > } > goto out_unlock; > } > - > -void i915_gem_init__pm(struct drm_i915_private *i915) > -{ > - i915->gem.pm_notifier.notifier_call = pm_notifier; > - blocking_notifier_chain_register(&i915->gt.pm_notifications, > - &i915->gem.pm_notifier); > -} > diff --git a/drivers/gpu/drm/i915/gem/i915_gem_pm.h b/drivers/gpu/drm/i915/gem/i915_gem_pm.h > index 6f7d5d11ac3b..a017572778d5 100644 > --- a/drivers/gpu/drm/i915/gem/i915_gem_pm.h > +++ b/drivers/gpu/drm/i915/gem/i915_gem_pm.h > @@ -12,8 +12,6 @@ > struct drm_i915_private; > struct work_struct; > > -void i915_gem_init__pm(struct drm_i915_private *i915); > - > bool i915_gem_load_power_context(struct drm_i915_private *i915); > void i915_gem_resume(struct drm_i915_private *i915); > > diff --git a/drivers/gpu/drm/i915/gt/intel_gt_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_pm.c > index fde5112b6650..427aded512f2 100644 > --- a/drivers/gpu/drm/i915/gt/intel_gt_pm.c > +++ b/drivers/gpu/drm/i915/gt/intel_gt_pm.c > @@ -16,11 +16,6 @@ > #include "intel_rc6.h" > #include "intel_wakeref.h" > > -static void pm_notify(struct intel_gt *gt, int state) > -{ > - blocking_notifier_call_chain(>->pm_notifications, state, gt->i915); > -} > - > static int __gt_unpark(struct intel_wakeref *wf) > { > struct intel_gt *gt = container_of(wf, typeof(*gt), wakeref); > @@ -55,8 +50,6 @@ static int __gt_unpark(struct intel_wakeref *wf) > intel_gt_queue_hangcheck(gt); > intel_gt_unpark_requests(gt); > > - pm_notify(gt, INTEL_GT_UNPARK); > - > return 0; > } > > @@ -68,7 +61,6 @@ static int __gt_park(struct intel_wakeref *wf) > > GEM_TRACE("\n"); > > - pm_notify(gt, INTEL_GT_PARK); > intel_gt_park_requests(gt); > > i915_vma_parked(gt); > @@ -96,8 +88,6 @@ static const struct intel_wakeref_ops wf_ops = { > void intel_gt_pm_init_early(struct intel_gt *gt) > { > intel_wakeref_init(>->wakeref, gt->uncore->rpm, &wf_ops); > - > - BLOCKING_INIT_NOTIFIER_HEAD(>->pm_notifications); > } > > void intel_gt_pm_init(struct intel_gt *gt) > diff --git a/drivers/gpu/drm/i915/gt/intel_gt_pm.h b/drivers/gpu/drm/i915/gt/intel_gt_pm.h > index 997770d3a968..0ed87da4bb68 100644 > --- a/drivers/gpu/drm/i915/gt/intel_gt_pm.h > +++ b/drivers/gpu/drm/i915/gt/intel_gt_pm.h > @@ -12,11 +12,6 @@ > #include "intel_gt_types.h" > #include "intel_wakeref.h" > > -enum { > - INTEL_GT_UNPARK, > - INTEL_GT_PARK, > -}; > - > static inline bool intel_gt_pm_is_awake(const struct intel_gt *gt) > { > return intel_wakeref_is_active(>->wakeref); > diff --git a/drivers/gpu/drm/i915/gt/intel_gt_types.h b/drivers/gpu/drm/i915/gt/intel_gt_types.h > index ae4aaf75ac78..980973e66e7f 100644 > --- a/drivers/gpu/drm/i915/gt/intel_gt_types.h > +++ b/drivers/gpu/drm/i915/gt/intel_gt_types.h > @@ -83,8 +83,6 @@ struct intel_gt { > struct intel_llc llc; > struct intel_rc6 rc6; > > - struct blocking_notifier_head pm_notifications; > - > ktime_t last_init_time; > > struct i915_vma *scratch; > diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c > index a2ba123f7b31..39cb0e246a88 100644 > --- a/drivers/gpu/drm/i915/i915_gem.c > +++ b/drivers/gpu/drm/i915/i915_gem.c > @@ -1435,7 +1435,6 @@ static void i915_gem_init__mm(struct drm_i915_private *i915) > void i915_gem_init_early(struct drm_i915_private *dev_priv) > { > i915_gem_init__mm(dev_priv); > - i915_gem_init__pm(dev_priv); > > spin_lock_init(&dev_priv->fb_tracking.lock); > } > Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Regards, Tvrtko
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_pm.c b/drivers/gpu/drm/i915/gem/i915_gem_pm.c index 2aa7e9be088f..ee3279c76566 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_pm.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_pm.c @@ -11,24 +11,6 @@ #include "i915_drv.h" -static int pm_notifier(struct notifier_block *nb, - unsigned long action, - void *data) -{ - struct drm_i915_private *i915 = - container_of(nb, typeof(*i915), gem.pm_notifier); - - switch (action) { - case INTEL_GT_UNPARK: - break; - - case INTEL_GT_PARK: - break; - } - - return NOTIFY_OK; -} - static bool switch_to_kernel_context_sync(struct intel_gt *gt) { bool result = !intel_gt_is_wedged(gt); @@ -206,10 +188,3 @@ void i915_gem_resume(struct drm_i915_private *i915) } goto out_unlock; } - -void i915_gem_init__pm(struct drm_i915_private *i915) -{ - i915->gem.pm_notifier.notifier_call = pm_notifier; - blocking_notifier_chain_register(&i915->gt.pm_notifications, - &i915->gem.pm_notifier); -} diff --git a/drivers/gpu/drm/i915/gem/i915_gem_pm.h b/drivers/gpu/drm/i915/gem/i915_gem_pm.h index 6f7d5d11ac3b..a017572778d5 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_pm.h +++ b/drivers/gpu/drm/i915/gem/i915_gem_pm.h @@ -12,8 +12,6 @@ struct drm_i915_private; struct work_struct; -void i915_gem_init__pm(struct drm_i915_private *i915); - bool i915_gem_load_power_context(struct drm_i915_private *i915); void i915_gem_resume(struct drm_i915_private *i915); diff --git a/drivers/gpu/drm/i915/gt/intel_gt_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_pm.c index fde5112b6650..427aded512f2 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt_pm.c +++ b/drivers/gpu/drm/i915/gt/intel_gt_pm.c @@ -16,11 +16,6 @@ #include "intel_rc6.h" #include "intel_wakeref.h" -static void pm_notify(struct intel_gt *gt, int state) -{ - blocking_notifier_call_chain(>->pm_notifications, state, gt->i915); -} - static int __gt_unpark(struct intel_wakeref *wf) { struct intel_gt *gt = container_of(wf, typeof(*gt), wakeref); @@ -55,8 +50,6 @@ static int __gt_unpark(struct intel_wakeref *wf) intel_gt_queue_hangcheck(gt); intel_gt_unpark_requests(gt); - pm_notify(gt, INTEL_GT_UNPARK); - return 0; } @@ -68,7 +61,6 @@ static int __gt_park(struct intel_wakeref *wf) GEM_TRACE("\n"); - pm_notify(gt, INTEL_GT_PARK); intel_gt_park_requests(gt); i915_vma_parked(gt); @@ -96,8 +88,6 @@ static const struct intel_wakeref_ops wf_ops = { void intel_gt_pm_init_early(struct intel_gt *gt) { intel_wakeref_init(>->wakeref, gt->uncore->rpm, &wf_ops); - - BLOCKING_INIT_NOTIFIER_HEAD(>->pm_notifications); } void intel_gt_pm_init(struct intel_gt *gt) diff --git a/drivers/gpu/drm/i915/gt/intel_gt_pm.h b/drivers/gpu/drm/i915/gt/intel_gt_pm.h index 997770d3a968..0ed87da4bb68 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt_pm.h +++ b/drivers/gpu/drm/i915/gt/intel_gt_pm.h @@ -12,11 +12,6 @@ #include "intel_gt_types.h" #include "intel_wakeref.h" -enum { - INTEL_GT_UNPARK, - INTEL_GT_PARK, -}; - static inline bool intel_gt_pm_is_awake(const struct intel_gt *gt) { return intel_wakeref_is_active(>->wakeref); diff --git a/drivers/gpu/drm/i915/gt/intel_gt_types.h b/drivers/gpu/drm/i915/gt/intel_gt_types.h index ae4aaf75ac78..980973e66e7f 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt_types.h +++ b/drivers/gpu/drm/i915/gt/intel_gt_types.h @@ -83,8 +83,6 @@ struct intel_gt { struct intel_llc llc; struct intel_rc6 rc6; - struct blocking_notifier_head pm_notifications; - ktime_t last_init_time; struct i915_vma *scratch; diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index a2ba123f7b31..39cb0e246a88 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c @@ -1435,7 +1435,6 @@ static void i915_gem_init__mm(struct drm_i915_private *i915) void i915_gem_init_early(struct drm_i915_private *dev_priv) { i915_gem_init__mm(dev_priv); - i915_gem_init__pm(dev_priv); spin_lock_init(&dev_priv->fb_tracking.lock); }
With the last user, i915_vma_parked(), retired, there are no more users of the per-gt pm notifications and we can remove the unused infrastructure. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> --- drivers/gpu/drm/i915/gem/i915_gem_pm.c | 25 ------------------------ drivers/gpu/drm/i915/gem/i915_gem_pm.h | 2 -- drivers/gpu/drm/i915/gt/intel_gt_pm.c | 10 ---------- drivers/gpu/drm/i915/gt/intel_gt_pm.h | 5 ----- drivers/gpu/drm/i915/gt/intel_gt_types.h | 2 -- drivers/gpu/drm/i915/i915_gem.c | 1 - 6 files changed, 45 deletions(-)