* [PATCH] drm/i915/gt: Fix use of static in macro mismatch
@ 2022-05-10 14:04 Andi Shyti
2022-05-11 8:58 ` Jani Nikula
0 siblings, 1 reply; 2+ messages in thread
From: Andi Shyti @ 2022-05-10 14:04 UTC (permalink / raw)
To: Intel GFX, DRI Devel
The INTEL_GT_RPS_SYSFS_ATTR was creating to different structures
but. When called with the "static" keyword this is affecting only
the first structure, while the second is created as non static.
Move the static keyword inside the macros to affect both the
structures.
Reported-by: Jani Nikula <jani.nikula@linux.intel.com>
Fixes: 56a709cf77468 ("drm/i915/gt: Create per-tile RPS sysfs interfaces")
Signed-off-by: Andi Shyti <andi.shyti@linux.intel.com>
---
drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c | 21 +++++++++++----------
1 file changed, 11 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
index e92990d514b24..f76b6cf8040ec 100644
--- a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
+++ b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
@@ -457,22 +457,23 @@ static ssize_t vlv_rpe_freq_mhz_show(struct device *dev,
}
#define INTEL_GT_RPS_SYSFS_ATTR(_name, _mode, _show, _store) \
- struct device_attribute dev_attr_gt_##_name = __ATTR(gt_##_name, _mode, _show, _store); \
- struct device_attribute dev_attr_rps_##_name = __ATTR(rps_##_name, _mode, _show, _store)
+ static struct device_attribute dev_attr_gt_##_name = __ATTR(gt_##_name, _mode, _show, _store); \
+ static struct device_attribute dev_attr_rps_##_name = __ATTR(rps_##_name, _mode, _show, _store)
#define INTEL_GT_RPS_SYSFS_ATTR_RO(_name) \
INTEL_GT_RPS_SYSFS_ATTR(_name, 0444, _name##_show, NULL)
#define INTEL_GT_RPS_SYSFS_ATTR_RW(_name) \
INTEL_GT_RPS_SYSFS_ATTR(_name, 0644, _name##_show, _name##_store)
-static INTEL_GT_RPS_SYSFS_ATTR_RO(act_freq_mhz);
-static INTEL_GT_RPS_SYSFS_ATTR_RO(cur_freq_mhz);
-static INTEL_GT_RPS_SYSFS_ATTR_RW(boost_freq_mhz);
-static INTEL_GT_RPS_SYSFS_ATTR_RO(RP0_freq_mhz);
-static INTEL_GT_RPS_SYSFS_ATTR_RO(RP1_freq_mhz);
-static INTEL_GT_RPS_SYSFS_ATTR_RO(RPn_freq_mhz);
-static INTEL_GT_RPS_SYSFS_ATTR_RW(max_freq_mhz);
-static INTEL_GT_RPS_SYSFS_ATTR_RW(min_freq_mhz);
+/* The below macros generate static structures */
+INTEL_GT_RPS_SYSFS_ATTR_RO(act_freq_mhz);
+INTEL_GT_RPS_SYSFS_ATTR_RO(cur_freq_mhz);
+INTEL_GT_RPS_SYSFS_ATTR_RW(boost_freq_mhz);
+INTEL_GT_RPS_SYSFS_ATTR_RO(RP0_freq_mhz);
+INTEL_GT_RPS_SYSFS_ATTR_RO(RP1_freq_mhz);
+INTEL_GT_RPS_SYSFS_ATTR_RO(RPn_freq_mhz);
+INTEL_GT_RPS_SYSFS_ATTR_RW(max_freq_mhz);
+INTEL_GT_RPS_SYSFS_ATTR_RW(min_freq_mhz);
static DEVICE_ATTR_RO(vlv_rpe_freq_mhz);
--
2.36.0
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] drm/i915/gt: Fix use of static in macro mismatch
2022-05-10 14:04 [PATCH] drm/i915/gt: Fix use of static in macro mismatch Andi Shyti
@ 2022-05-11 8:58 ` Jani Nikula
0 siblings, 0 replies; 2+ messages in thread
From: Jani Nikula @ 2022-05-11 8:58 UTC (permalink / raw)
To: Andi Shyti, Intel GFX, DRI Devel
On Tue, 10 May 2022, Andi Shyti <andi.shyti@linux.intel.com> wrote:
> The INTEL_GT_RPS_SYSFS_ATTR was creating to different structures
> but. When called with the "static" keyword this is affecting only
> the first structure, while the second is created as non static.
>
> Move the static keyword inside the macros to affect both the
> structures.
>
> Reported-by: Jani Nikula <jani.nikula@linux.intel.com>
> Fixes: 56a709cf77468 ("drm/i915/gt: Create per-tile RPS sysfs interfaces")
> Signed-off-by: Andi Shyti <andi.shyti@linux.intel.com>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
> ---
> drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c | 21 +++++++++++----------
> 1 file changed, 11 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> index e92990d514b24..f76b6cf8040ec 100644
> --- a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> +++ b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> @@ -457,22 +457,23 @@ static ssize_t vlv_rpe_freq_mhz_show(struct device *dev,
> }
>
> #define INTEL_GT_RPS_SYSFS_ATTR(_name, _mode, _show, _store) \
> - struct device_attribute dev_attr_gt_##_name = __ATTR(gt_##_name, _mode, _show, _store); \
> - struct device_attribute dev_attr_rps_##_name = __ATTR(rps_##_name, _mode, _show, _store)
> + static struct device_attribute dev_attr_gt_##_name = __ATTR(gt_##_name, _mode, _show, _store); \
> + static struct device_attribute dev_attr_rps_##_name = __ATTR(rps_##_name, _mode, _show, _store)
>
> #define INTEL_GT_RPS_SYSFS_ATTR_RO(_name) \
> INTEL_GT_RPS_SYSFS_ATTR(_name, 0444, _name##_show, NULL)
> #define INTEL_GT_RPS_SYSFS_ATTR_RW(_name) \
> INTEL_GT_RPS_SYSFS_ATTR(_name, 0644, _name##_show, _name##_store)
>
> -static INTEL_GT_RPS_SYSFS_ATTR_RO(act_freq_mhz);
> -static INTEL_GT_RPS_SYSFS_ATTR_RO(cur_freq_mhz);
> -static INTEL_GT_RPS_SYSFS_ATTR_RW(boost_freq_mhz);
> -static INTEL_GT_RPS_SYSFS_ATTR_RO(RP0_freq_mhz);
> -static INTEL_GT_RPS_SYSFS_ATTR_RO(RP1_freq_mhz);
> -static INTEL_GT_RPS_SYSFS_ATTR_RO(RPn_freq_mhz);
> -static INTEL_GT_RPS_SYSFS_ATTR_RW(max_freq_mhz);
> -static INTEL_GT_RPS_SYSFS_ATTR_RW(min_freq_mhz);
> +/* The below macros generate static structures */
> +INTEL_GT_RPS_SYSFS_ATTR_RO(act_freq_mhz);
> +INTEL_GT_RPS_SYSFS_ATTR_RO(cur_freq_mhz);
> +INTEL_GT_RPS_SYSFS_ATTR_RW(boost_freq_mhz);
> +INTEL_GT_RPS_SYSFS_ATTR_RO(RP0_freq_mhz);
> +INTEL_GT_RPS_SYSFS_ATTR_RO(RP1_freq_mhz);
> +INTEL_GT_RPS_SYSFS_ATTR_RO(RPn_freq_mhz);
> +INTEL_GT_RPS_SYSFS_ATTR_RW(max_freq_mhz);
> +INTEL_GT_RPS_SYSFS_ATTR_RW(min_freq_mhz);
>
> static DEVICE_ATTR_RO(vlv_rpe_freq_mhz);
--
Jani Nikula, Intel Open Source Graphics Center
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2022-05-11 8:58 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-05-10 14:04 [PATCH] drm/i915/gt: Fix use of static in macro mismatch Andi Shyti
2022-05-11 8:58 ` Jani Nikula
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox