mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-23 06:05:15 +07:00
drm/i915/display/display_power: Prefer drm_WARN_ON over WARN_ON
struct drm_device specific drm_WARN* macros include device information in the backtrace, so we know what device the warnings originate from. Prefer drm_WARN_ON over WARN_ON at places where struct i915_power_domains struct is available. Conversion is done with below sementic patch: @@ identifier func, T; @@ func(struct i915_power_domains *T,...) { + struct drm_i915_private *i915 = container_of(T, struct drm_i915_private, power_domains); <+... -WARN_ON( +drm_WARN_ON(&i915->drm, ...) ...+> } changes since v1: - Fix commit subject (Jani) Signed-off-by: Pankaj Bharadiya <pankaj.laxminarayan.bharadiya@intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20200504181600.18503-2-pankaj.laxminarayan.bharadiya@intel.com
This commit is contained in:
parent
ae9b6cfe13
commit
4c1ccdf721
@ -1943,22 +1943,29 @@ static u64 __async_put_domains_mask(struct i915_power_domains *power_domains)
|
||||
static bool
|
||||
assert_async_put_domain_masks_disjoint(struct i915_power_domains *power_domains)
|
||||
{
|
||||
return !WARN_ON(power_domains->async_put_domains[0] &
|
||||
power_domains->async_put_domains[1]);
|
||||
struct drm_i915_private *i915 = container_of(power_domains,
|
||||
struct drm_i915_private,
|
||||
power_domains);
|
||||
return !drm_WARN_ON(&i915->drm, power_domains->async_put_domains[0] &
|
||||
power_domains->async_put_domains[1]);
|
||||
}
|
||||
|
||||
static bool
|
||||
__async_put_domains_state_ok(struct i915_power_domains *power_domains)
|
||||
{
|
||||
struct drm_i915_private *i915 = container_of(power_domains,
|
||||
struct drm_i915_private,
|
||||
power_domains);
|
||||
enum intel_display_power_domain domain;
|
||||
bool err = false;
|
||||
|
||||
err |= !assert_async_put_domain_masks_disjoint(power_domains);
|
||||
err |= WARN_ON(!!power_domains->async_put_wakeref !=
|
||||
!!__async_put_domains_mask(power_domains));
|
||||
err |= drm_WARN_ON(&i915->drm, !!power_domains->async_put_wakeref !=
|
||||
!!__async_put_domains_mask(power_domains));
|
||||
|
||||
for_each_power_domain(domain, __async_put_domains_mask(power_domains))
|
||||
err |= WARN_ON(power_domains->domain_use_count[domain] != 1);
|
||||
err |= drm_WARN_ON(&i915->drm,
|
||||
power_domains->domain_use_count[domain] != 1);
|
||||
|
||||
return !err;
|
||||
}
|
||||
@ -2200,11 +2207,14 @@ static void
|
||||
queue_async_put_domains_work(struct i915_power_domains *power_domains,
|
||||
intel_wakeref_t wakeref)
|
||||
{
|
||||
WARN_ON(power_domains->async_put_wakeref);
|
||||
struct drm_i915_private *i915 = container_of(power_domains,
|
||||
struct drm_i915_private,
|
||||
power_domains);
|
||||
drm_WARN_ON(&i915->drm, power_domains->async_put_wakeref);
|
||||
power_domains->async_put_wakeref = wakeref;
|
||||
WARN_ON(!queue_delayed_work(system_unbound_wq,
|
||||
&power_domains->async_put_work,
|
||||
msecs_to_jiffies(100)));
|
||||
drm_WARN_ON(&i915->drm, !queue_delayed_work(system_unbound_wq,
|
||||
&power_domains->async_put_work,
|
||||
msecs_to_jiffies(100)));
|
||||
}
|
||||
|
||||
static void
|
||||
@ -4365,6 +4375,9 @@ __set_power_wells(struct i915_power_domains *power_domains,
|
||||
const struct i915_power_well_desc *power_well_descs,
|
||||
int power_well_count)
|
||||
{
|
||||
struct drm_i915_private *i915 = container_of(power_domains,
|
||||
struct drm_i915_private,
|
||||
power_domains);
|
||||
u64 power_well_ids = 0;
|
||||
int i;
|
||||
|
||||
@ -4384,8 +4397,8 @@ __set_power_wells(struct i915_power_domains *power_domains,
|
||||
if (id == DISP_PW_ID_NONE)
|
||||
continue;
|
||||
|
||||
WARN_ON(id >= sizeof(power_well_ids) * 8);
|
||||
WARN_ON(power_well_ids & BIT_ULL(id));
|
||||
drm_WARN_ON(&i915->drm, id >= sizeof(power_well_ids) * 8);
|
||||
drm_WARN_ON(&i915->drm, power_well_ids & BIT_ULL(id));
|
||||
power_well_ids |= BIT_ULL(id);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user