2022-03-06 06:51:59

by Lianjie Zhang

[permalink] [raw]
Subject: [PATCH 1/2] cpufreq: unify the show() and store() styles of attr

Unify the show() and store() styles of attr,
change show_xxx(), store_xxx() to xxx_show(), xxx_store().

Signed-off-by: zhanglianjie <[email protected]>

diff --git a/drivers/cpufreq/cpufreq_conservative.c b/drivers/cpufreq/cpufreq_conservative.c
index 08515f7e515f..b6bd0ff35323 100644
--- a/drivers/cpufreq/cpufreq_conservative.c
+++ b/drivers/cpufreq/cpufreq_conservative.c
@@ -146,7 +146,7 @@ static unsigned int cs_dbs_update(struct cpufreq_policy *policy)

/************************** sysfs interface ************************/

-static ssize_t store_sampling_down_factor(struct gov_attr_set *attr_set,
+static ssize_t sampling_down_factor_store(struct gov_attr_set *attr_set,
const char *buf, size_t count)
{
struct dbs_data *dbs_data = to_dbs_data(attr_set);
@@ -161,7 +161,7 @@ static ssize_t store_sampling_down_factor(struct gov_attr_set *attr_set,
return count;
}

-static ssize_t store_up_threshold(struct gov_attr_set *attr_set,
+static ssize_t up_threshold_store(struct gov_attr_set *attr_set,
const char *buf, size_t count)
{
struct dbs_data *dbs_data = to_dbs_data(attr_set);
@@ -177,7 +177,7 @@ static ssize_t store_up_threshold(struct gov_attr_set *attr_set,
return count;
}

-static ssize_t store_down_threshold(struct gov_attr_set *attr_set,
+static ssize_t down_threshold_store(struct gov_attr_set *attr_set,
const char *buf, size_t count)
{
struct dbs_data *dbs_data = to_dbs_data(attr_set);
@@ -195,7 +195,7 @@ static ssize_t store_down_threshold(struct gov_attr_set *attr_set,
return count;
}

-static ssize_t store_ignore_nice_load(struct gov_attr_set *attr_set,
+static ssize_t ignore_nice_load_store(struct gov_attr_set *attr_set,
const char *buf, size_t count)
{
struct dbs_data *dbs_data = to_dbs_data(attr_set);
@@ -220,7 +220,7 @@ static ssize_t store_ignore_nice_load(struct gov_attr_set *attr_set,
return count;
}

-static ssize_t store_freq_step(struct gov_attr_set *attr_set, const char *buf,
+static ssize_t freq_step_store(struct gov_attr_set *attr_set, const char *buf,
size_t count)
{
struct dbs_data *dbs_data = to_dbs_data(attr_set);
diff --git a/drivers/cpufreq/cpufreq_governor.c b/drivers/cpufreq/cpufreq_governor.c
index 63f7c219062b..0d42cf8b88d8 100644
--- a/drivers/cpufreq/cpufreq_governor.c
+++ b/drivers/cpufreq/cpufreq_governor.c
@@ -27,7 +27,7 @@ static DEFINE_MUTEX(gov_dbs_data_mutex);

/* Common sysfs tunables */
/*
- * store_sampling_rate - update sampling rate effective immediately if needed.
+ * sampling_rate_store - update sampling rate effective immediately if needed.
*
* If new rate is smaller than the old, simply updating
* dbs.sampling_rate might not be appropriate. For example, if the
@@ -41,7 +41,7 @@ static DEFINE_MUTEX(gov_dbs_data_mutex);
* This must be called with dbs_data->mutex held, otherwise traversing
* policy_dbs_list isn't safe.
*/
-ssize_t store_sampling_rate(struct gov_attr_set *attr_set, const char *buf,
+ssize_t sampling_rate_store(struct gov_attr_set *attr_set, const char *buf,
size_t count)
{
struct dbs_data *dbs_data = to_dbs_data(attr_set);
@@ -80,7 +80,7 @@ ssize_t store_sampling_rate(struct gov_attr_set *attr_set, const char *buf,

return count;
}
-EXPORT_SYMBOL_GPL(store_sampling_rate);
+EXPORT_SYMBOL_GPL(sampling_rate_store);

/**
* gov_update_cpu_data - Update CPU load data.
diff --git a/drivers/cpufreq/cpufreq_governor.h b/drivers/cpufreq/cpufreq_governor.h
index bab8e6140377..65ecf32ba4f8 100644
--- a/drivers/cpufreq/cpufreq_governor.h
+++ b/drivers/cpufreq/cpufreq_governor.h
@@ -51,7 +51,7 @@ static inline struct dbs_data *to_dbs_data(struct gov_attr_set *attr_set)
}

#define gov_show_one(_gov, file_name) \
-static ssize_t show_##file_name \
+static ssize_t file_name##_show \
(struct gov_attr_set *attr_set, char *buf) \
{ \
struct dbs_data *dbs_data = to_dbs_data(attr_set); \
@@ -60,7 +60,7 @@ static ssize_t show_##file_name \
}

#define gov_show_one_common(file_name) \
-static ssize_t show_##file_name \
+static ssize_t file_name##_show \
(struct gov_attr_set *attr_set, char *buf) \
{ \
struct dbs_data *dbs_data = to_dbs_data(attr_set); \
@@ -69,11 +69,11 @@ static ssize_t show_##file_name \

#define gov_attr_ro(_name) \
static struct governor_attr _name = \
-__ATTR(_name, 0444, show_##_name, NULL)
+__ATTR(_name, 0444, _name##_show, NULL)

#define gov_attr_rw(_name) \
static struct governor_attr _name = \
-__ATTR(_name, 0644, show_##_name, store_##_name)
+__ATTR(_name, 0644, _name##_show, _name##_store)

/* Common to all CPUs of a policy */
struct policy_dbs_info {
@@ -176,7 +176,7 @@ void od_register_powersave_bias_handler(unsigned int (*f)
(struct cpufreq_policy *, unsigned int, unsigned int),
unsigned int powersave_bias);
void od_unregister_powersave_bias_handler(void);
-ssize_t store_sampling_rate(struct gov_attr_set *attr_set, const char *buf,
+ssize_t sampling_rate_store(struct gov_attr_set *attr_set, const char *buf,
size_t count);
void gov_update_cpu_data(struct dbs_data *dbs_data);
#endif /* _CPUFREQ_GOVERNOR_H */
diff --git a/drivers/cpufreq/cpufreq_ondemand.c b/drivers/cpufreq/cpufreq_ondemand.c
index 6a41ea4729b8..e8fbf970ff07 100644
--- a/drivers/cpufreq/cpufreq_ondemand.c
+++ b/drivers/cpufreq/cpufreq_ondemand.c
@@ -202,7 +202,7 @@ static unsigned int od_dbs_update(struct cpufreq_policy *policy)
/************************** sysfs interface ************************/
static struct dbs_governor od_dbs_gov;

-static ssize_t store_io_is_busy(struct gov_attr_set *attr_set, const char *buf,
+static ssize_t io_is_busy_store(struct gov_attr_set *attr_set, const char *buf,
size_t count)
{
struct dbs_data *dbs_data = to_dbs_data(attr_set);
@@ -220,7 +220,7 @@ static ssize_t store_io_is_busy(struct gov_attr_set *attr_set, const char *buf,
return count;
}

-static ssize_t store_up_threshold(struct gov_attr_set *attr_set,
+static ssize_t up_threshold_store(struct gov_attr_set *attr_set,
const char *buf, size_t count)
{
struct dbs_data *dbs_data = to_dbs_data(attr_set);
@@ -237,7 +237,7 @@ static ssize_t store_up_threshold(struct gov_attr_set *attr_set,
return count;
}

-static ssize_t store_sampling_down_factor(struct gov_attr_set *attr_set,
+static ssize_t sampling_down_factor_store(struct gov_attr_set *attr_set,
const char *buf, size_t count)
{
struct dbs_data *dbs_data = to_dbs_data(attr_set);
@@ -265,7 +265,7 @@ static ssize_t store_sampling_down_factor(struct gov_attr_set *attr_set,
return count;
}

-static ssize_t store_ignore_nice_load(struct gov_attr_set *attr_set,
+static ssize_t ignore_nice_load_store(struct gov_attr_set *attr_set,
const char *buf, size_t count)
{
struct dbs_data *dbs_data = to_dbs_data(attr_set);
@@ -290,7 +290,7 @@ static ssize_t store_ignore_nice_load(struct gov_attr_set *attr_set,
return count;
}

-static ssize_t store_powersave_bias(struct gov_attr_set *attr_set,
+static ssize_t powersave_bias_store(struct gov_attr_set *attr_set,
const char *buf, size_t count)
{
struct dbs_data *dbs_data = to_dbs_data(attr_set);
--
2.20.1




2022-03-06 07:56:54

by Lianjie Zhang

[permalink] [raw]
Subject: [PATCH 2/2] cpufreq: use helper macro __ATTR_XX

Use helper macro __ATTR_XX to make code more clear.
Minor readability improvement.

Signed-off-by: zhanglianjie <[email protected]>

diff --git a/drivers/cpufreq/cpufreq_governor.h b/drivers/cpufreq/cpufreq_governor.h
index 65ecf32ba4f8..a5a0bc3cc23e 100644
--- a/drivers/cpufreq/cpufreq_governor.h
+++ b/drivers/cpufreq/cpufreq_governor.h
@@ -68,12 +68,10 @@ static ssize_t file_name##_show \
}

#define gov_attr_ro(_name) \
-static struct governor_attr _name = \
-__ATTR(_name, 0444, _name##_show, NULL)
+static struct governor_attr _name = __ATTR_RO(_name)

#define gov_attr_rw(_name) \
-static struct governor_attr _name = \
-__ATTR(_name, 0644, _name##_show, _name##_store)
+static struct governor_attr _name = __ATTR_RW(_name)

/* Common to all CPUs of a policy */
struct policy_dbs_info {
--
2.20.1



2022-03-07 07:48:23

by Viresh Kumar

[permalink] [raw]
Subject: Re: [PATCH 1/2] cpufreq: unify the show() and store() styles of attr

On 06-03-22, 10:12, zhanglianjie wrote:
> Unify the show() and store() styles of attr,

What is the problem with current naming that you are facing ? What's
there to unify? Are there two types of names used here ?

If that is so, please explain them first as I am not able to
understand why you are making this change.

--
viresh

2022-03-07 09:43:28

by Viresh Kumar

[permalink] [raw]
Subject: Re: [PATCH 1/2] cpufreq: unify the show() and store() styles of attr

On 07-03-22, 11:22, Viresh Kumar wrote:
> On 07-03-22, 13:50, zhanglianjie wrote:
> > Usually /sys directory under the file, the corresponding Attribute contains
> > .show and .store, and their naming style is filename_show() and
> > filename_store(). But all naming style in 'cpufreq' is show_filename() and
> > store_filename(), So you need to change naming style.
>
> This is something that is present within the kernel and not exposed to
> userspace. I don't see why we would need to make this change and what
> good it brings.
>
> I would have supported this if cpufreq itself had different names, but
> for this one, No.

Or is it that you want to reuse __ATTR_RW() and __ATTR_RO() and the
current naming doesn't allow you that ?

I will let Rafael take a call on that.

--
viresh

2022-03-07 09:46:12

by Viresh Kumar

[permalink] [raw]
Subject: Re: [PATCH 2/2] cpufreq: use helper macro __ATTR_XX

On 06-03-22, 10:12, zhanglianjie wrote:
> Use helper macro __ATTR_XX to make code more clear.
> Minor readability improvement.
>
> Signed-off-by: zhanglianjie <[email protected]>
>
> diff --git a/drivers/cpufreq/cpufreq_governor.h b/drivers/cpufreq/cpufreq_governor.h
> index 65ecf32ba4f8..a5a0bc3cc23e 100644
> --- a/drivers/cpufreq/cpufreq_governor.h
> +++ b/drivers/cpufreq/cpufreq_governor.h
> @@ -68,12 +68,10 @@ static ssize_t file_name##_show \
> }
>
> #define gov_attr_ro(_name) \
> -static struct governor_attr _name = \
> -__ATTR(_name, 0444, _name##_show, NULL)
> +static struct governor_attr _name = __ATTR_RO(_name)
>
> #define gov_attr_rw(_name) \
> -static struct governor_attr _name = \
> -__ATTR(_name, 0644, _name##_show, _name##_store)
> +static struct governor_attr _name = __ATTR_RW(_name)
>
> /* Common to all CPUs of a policy */
> struct policy_dbs_info {

This change looks fine though.

--
viresh

2022-03-07 09:52:51

by Viresh Kumar

[permalink] [raw]
Subject: Re: [PATCH 1/2] cpufreq: unify the show() and store() styles of attr

On 07-03-22, 13:50, zhanglianjie wrote:
> Usually /sys directory under the file, the corresponding Attribute contains
> .show and .store, and their naming style is filename_show() and
> filename_store(). But all naming style in 'cpufreq' is show_filename() and
> store_filename(), So you need to change naming style.

This is something that is present within the kernel and not exposed to
userspace. I don't see why we would need to make this change and what
good it brings.

I would have supported this if cpufreq itself had different names, but
for this one, No.

--
viresh

2022-03-07 20:38:21

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: [PATCH 1/2] cpufreq: unify the show() and store() styles of attr

On Sun, Mar 6, 2022 at 3:13 AM zhanglianjie <[email protected]> wrote:
>
> Unify the show() and store() styles of attr,
> change show_xxx(), store_xxx() to xxx_show(), xxx_store().

You need to say something about motivation too.

> Signed-off-by: zhanglianjie <[email protected]>
>
> diff --git a/drivers/cpufreq/cpufreq_conservative.c b/drivers/cpufreq/cpufreq_conservative.c
> index 08515f7e515f..b6bd0ff35323 100644
> --- a/drivers/cpufreq/cpufreq_conservative.c
> +++ b/drivers/cpufreq/cpufreq_conservative.c
> @@ -146,7 +146,7 @@ static unsigned int cs_dbs_update(struct cpufreq_policy *policy)
>
> /************************** sysfs interface ************************/
>
> -static ssize_t store_sampling_down_factor(struct gov_attr_set *attr_set,
> +static ssize_t sampling_down_factor_store(struct gov_attr_set *attr_set,
> const char *buf, size_t count)
> {
> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> @@ -161,7 +161,7 @@ static ssize_t store_sampling_down_factor(struct gov_attr_set *attr_set,
> return count;
> }
>
> -static ssize_t store_up_threshold(struct gov_attr_set *attr_set,
> +static ssize_t up_threshold_store(struct gov_attr_set *attr_set,
> const char *buf, size_t count)
> {
> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> @@ -177,7 +177,7 @@ static ssize_t store_up_threshold(struct gov_attr_set *attr_set,
> return count;
> }
>
> -static ssize_t store_down_threshold(struct gov_attr_set *attr_set,
> +static ssize_t down_threshold_store(struct gov_attr_set *attr_set,
> const char *buf, size_t count)
> {
> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> @@ -195,7 +195,7 @@ static ssize_t store_down_threshold(struct gov_attr_set *attr_set,
> return count;
> }
>
> -static ssize_t store_ignore_nice_load(struct gov_attr_set *attr_set,
> +static ssize_t ignore_nice_load_store(struct gov_attr_set *attr_set,
> const char *buf, size_t count)
> {
> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> @@ -220,7 +220,7 @@ static ssize_t store_ignore_nice_load(struct gov_attr_set *attr_set,
> return count;
> }
>
> -static ssize_t store_freq_step(struct gov_attr_set *attr_set, const char *buf,
> +static ssize_t freq_step_store(struct gov_attr_set *attr_set, const char *buf,
> size_t count)
> {
> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> diff --git a/drivers/cpufreq/cpufreq_governor.c b/drivers/cpufreq/cpufreq_governor.c
> index 63f7c219062b..0d42cf8b88d8 100644
> --- a/drivers/cpufreq/cpufreq_governor.c
> +++ b/drivers/cpufreq/cpufreq_governor.c
> @@ -27,7 +27,7 @@ static DEFINE_MUTEX(gov_dbs_data_mutex);
>
> /* Common sysfs tunables */
> /*
> - * store_sampling_rate - update sampling rate effective immediately if needed.
> + * sampling_rate_store - update sampling rate effective immediately if needed.
> *
> * If new rate is smaller than the old, simply updating
> * dbs.sampling_rate might not be appropriate. For example, if the
> @@ -41,7 +41,7 @@ static DEFINE_MUTEX(gov_dbs_data_mutex);
> * This must be called with dbs_data->mutex held, otherwise traversing
> * policy_dbs_list isn't safe.
> */
> -ssize_t store_sampling_rate(struct gov_attr_set *attr_set, const char *buf,
> +ssize_t sampling_rate_store(struct gov_attr_set *attr_set, const char *buf,
> size_t count)
> {
> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> @@ -80,7 +80,7 @@ ssize_t store_sampling_rate(struct gov_attr_set *attr_set, const char *buf,
>
> return count;
> }
> -EXPORT_SYMBOL_GPL(store_sampling_rate);
> +EXPORT_SYMBOL_GPL(sampling_rate_store);
>
> /**
> * gov_update_cpu_data - Update CPU load data.
> diff --git a/drivers/cpufreq/cpufreq_governor.h b/drivers/cpufreq/cpufreq_governor.h
> index bab8e6140377..65ecf32ba4f8 100644
> --- a/drivers/cpufreq/cpufreq_governor.h
> +++ b/drivers/cpufreq/cpufreq_governor.h
> @@ -51,7 +51,7 @@ static inline struct dbs_data *to_dbs_data(struct gov_attr_set *attr_set)
> }
>
> #define gov_show_one(_gov, file_name) \
> -static ssize_t show_##file_name \
> +static ssize_t file_name##_show \
> (struct gov_attr_set *attr_set, char *buf) \
> { \
> struct dbs_data *dbs_data = to_dbs_data(attr_set); \
> @@ -60,7 +60,7 @@ static ssize_t show_##file_name \
> }
>
> #define gov_show_one_common(file_name) \
> -static ssize_t show_##file_name \
> +static ssize_t file_name##_show \
> (struct gov_attr_set *attr_set, char *buf) \
> { \
> struct dbs_data *dbs_data = to_dbs_data(attr_set); \
> @@ -69,11 +69,11 @@ static ssize_t show_##file_name \
>
> #define gov_attr_ro(_name) \
> static struct governor_attr _name = \
> -__ATTR(_name, 0444, show_##_name, NULL)
> +__ATTR(_name, 0444, _name##_show, NULL)
>
> #define gov_attr_rw(_name) \
> static struct governor_attr _name = \
> -__ATTR(_name, 0644, show_##_name, store_##_name)
> +__ATTR(_name, 0644, _name##_show, _name##_store)
>
> /* Common to all CPUs of a policy */
> struct policy_dbs_info {
> @@ -176,7 +176,7 @@ void od_register_powersave_bias_handler(unsigned int (*f)
> (struct cpufreq_policy *, unsigned int, unsigned int),
> unsigned int powersave_bias);
> void od_unregister_powersave_bias_handler(void);
> -ssize_t store_sampling_rate(struct gov_attr_set *attr_set, const char *buf,
> +ssize_t sampling_rate_store(struct gov_attr_set *attr_set, const char *buf,
> size_t count);
> void gov_update_cpu_data(struct dbs_data *dbs_data);
> #endif /* _CPUFREQ_GOVERNOR_H */
> diff --git a/drivers/cpufreq/cpufreq_ondemand.c b/drivers/cpufreq/cpufreq_ondemand.c
> index 6a41ea4729b8..e8fbf970ff07 100644
> --- a/drivers/cpufreq/cpufreq_ondemand.c
> +++ b/drivers/cpufreq/cpufreq_ondemand.c
> @@ -202,7 +202,7 @@ static unsigned int od_dbs_update(struct cpufreq_policy *policy)
> /************************** sysfs interface ************************/
> static struct dbs_governor od_dbs_gov;
>
> -static ssize_t store_io_is_busy(struct gov_attr_set *attr_set, const char *buf,
> +static ssize_t io_is_busy_store(struct gov_attr_set *attr_set, const char *buf,
> size_t count)
> {
> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> @@ -220,7 +220,7 @@ static ssize_t store_io_is_busy(struct gov_attr_set *attr_set, const char *buf,
> return count;
> }
>
> -static ssize_t store_up_threshold(struct gov_attr_set *attr_set,
> +static ssize_t up_threshold_store(struct gov_attr_set *attr_set,
> const char *buf, size_t count)
> {
> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> @@ -237,7 +237,7 @@ static ssize_t store_up_threshold(struct gov_attr_set *attr_set,
> return count;
> }
>
> -static ssize_t store_sampling_down_factor(struct gov_attr_set *attr_set,
> +static ssize_t sampling_down_factor_store(struct gov_attr_set *attr_set,
> const char *buf, size_t count)
> {
> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> @@ -265,7 +265,7 @@ static ssize_t store_sampling_down_factor(struct gov_attr_set *attr_set,
> return count;
> }
>
> -static ssize_t store_ignore_nice_load(struct gov_attr_set *attr_set,
> +static ssize_t ignore_nice_load_store(struct gov_attr_set *attr_set,
> const char *buf, size_t count)
> {
> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> @@ -290,7 +290,7 @@ static ssize_t store_ignore_nice_load(struct gov_attr_set *attr_set,
> return count;
> }
>
> -static ssize_t store_powersave_bias(struct gov_attr_set *attr_set,
> +static ssize_t powersave_bias_store(struct gov_attr_set *attr_set,
> const char *buf, size_t count)
> {
> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> --
> 2.20.1
>
>
>

2022-03-09 00:33:23

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: [PATCH 1/2] cpufreq: unify the show() and store() styles of attr

On Tue, Mar 8, 2022 at 2:04 AM zhanglianjie <[email protected]> wrote:
>
> Hi,
>
> On 2022/3/8 02:19, Rafael J. Wysocki wrote:
> > On Sun, Mar 6, 2022 at 3:13 AM zhanglianjie <[email protected]> wrote:
> >>
> >> Unify the show() and store() styles of attr,
> >> change show_xxx(), store_xxx() to xxx_show(), xxx_store().
> >
> > You need to say something about motivation too.
> Usually /sys directory under the file, the corresponding Attribute
> contains .show and .store, and their naming style is filename_show() and
> filename_store(). But all naming style in 'cpufreq' is show_filename()
> and store_filename(), resulting in __ATTR_RW() and __ATTR_RO() macros
> cannot be used to simplify code, So need to change naming style.

OK, so please put the above information into the patch changelog.

> >
> >> Signed-off-by: zhanglianjie <[email protected]>
> >>
> >> diff --git a/drivers/cpufreq/cpufreq_conservative.c b/drivers/cpufreq/cpufreq_conservative.c
> >> index 08515f7e515f..b6bd0ff35323 100644
> >> --- a/drivers/cpufreq/cpufreq_conservative.c
> >> +++ b/drivers/cpufreq/cpufreq_conservative.c
> >> @@ -146,7 +146,7 @@ static unsigned int cs_dbs_update(struct cpufreq_policy *policy)
> >>
> >> /************************** sysfs interface ************************/
> >>
> >> -static ssize_t store_sampling_down_factor(struct gov_attr_set *attr_set,
> >> +static ssize_t sampling_down_factor_store(struct gov_attr_set *attr_set,
> >> const char *buf, size_t count)
> >> {
> >> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> >> @@ -161,7 +161,7 @@ static ssize_t store_sampling_down_factor(struct gov_attr_set *attr_set,
> >> return count;
> >> }
> >>
> >> -static ssize_t store_up_threshold(struct gov_attr_set *attr_set,
> >> +static ssize_t up_threshold_store(struct gov_attr_set *attr_set,
> >> const char *buf, size_t count)
> >> {
> >> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> >> @@ -177,7 +177,7 @@ static ssize_t store_up_threshold(struct gov_attr_set *attr_set,
> >> return count;
> >> }
> >>
> >> -static ssize_t store_down_threshold(struct gov_attr_set *attr_set,
> >> +static ssize_t down_threshold_store(struct gov_attr_set *attr_set,
> >> const char *buf, size_t count)
> >> {
> >> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> >> @@ -195,7 +195,7 @@ static ssize_t store_down_threshold(struct gov_attr_set *attr_set,
> >> return count;
> >> }
> >>
> >> -static ssize_t store_ignore_nice_load(struct gov_attr_set *attr_set,
> >> +static ssize_t ignore_nice_load_store(struct gov_attr_set *attr_set,
> >> const char *buf, size_t count)
> >> {
> >> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> >> @@ -220,7 +220,7 @@ static ssize_t store_ignore_nice_load(struct gov_attr_set *attr_set,
> >> return count;
> >> }
> >>
> >> -static ssize_t store_freq_step(struct gov_attr_set *attr_set, const char *buf,
> >> +static ssize_t freq_step_store(struct gov_attr_set *attr_set, const char *buf,
> >> size_t count)
> >> {
> >> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> >> diff --git a/drivers/cpufreq/cpufreq_governor.c b/drivers/cpufreq/cpufreq_governor.c
> >> index 63f7c219062b..0d42cf8b88d8 100644
> >> --- a/drivers/cpufreq/cpufreq_governor.c
> >> +++ b/drivers/cpufreq/cpufreq_governor.c
> >> @@ -27,7 +27,7 @@ static DEFINE_MUTEX(gov_dbs_data_mutex);
> >>
> >> /* Common sysfs tunables */
> >> /*
> >> - * store_sampling_rate - update sampling rate effective immediately if needed.
> >> + * sampling_rate_store - update sampling rate effective immediately if needed.
> >> *
> >> * If new rate is smaller than the old, simply updating
> >> * dbs.sampling_rate might not be appropriate. For example, if the
> >> @@ -41,7 +41,7 @@ static DEFINE_MUTEX(gov_dbs_data_mutex);
> >> * This must be called with dbs_data->mutex held, otherwise traversing
> >> * policy_dbs_list isn't safe.
> >> */
> >> -ssize_t store_sampling_rate(struct gov_attr_set *attr_set, const char *buf,
> >> +ssize_t sampling_rate_store(struct gov_attr_set *attr_set, const char *buf,
> >> size_t count)
> >> {
> >> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> >> @@ -80,7 +80,7 @@ ssize_t store_sampling_rate(struct gov_attr_set *attr_set, const char *buf,
> >>
> >> return count;
> >> }
> >> -EXPORT_SYMBOL_GPL(store_sampling_rate);
> >> +EXPORT_SYMBOL_GPL(sampling_rate_store);
> >>
> >> /**
> >> * gov_update_cpu_data - Update CPU load data.
> >> diff --git a/drivers/cpufreq/cpufreq_governor.h b/drivers/cpufreq/cpufreq_governor.h
> >> index bab8e6140377..65ecf32ba4f8 100644
> >> --- a/drivers/cpufreq/cpufreq_governor.h
> >> +++ b/drivers/cpufreq/cpufreq_governor.h
> >> @@ -51,7 +51,7 @@ static inline struct dbs_data *to_dbs_data(struct gov_attr_set *attr_set)
> >> }
> >>
> >> #define gov_show_one(_gov, file_name) \
> >> -static ssize_t show_##file_name \
> >> +static ssize_t file_name##_show \
> >> (struct gov_attr_set *attr_set, char *buf) \
> >> { \
> >> struct dbs_data *dbs_data = to_dbs_data(attr_set); \
> >> @@ -60,7 +60,7 @@ static ssize_t show_##file_name \
> >> }
> >>
> >> #define gov_show_one_common(file_name) \
> >> -static ssize_t show_##file_name \
> >> +static ssize_t file_name##_show \
> >> (struct gov_attr_set *attr_set, char *buf) \
> >> { \
> >> struct dbs_data *dbs_data = to_dbs_data(attr_set); \
> >> @@ -69,11 +69,11 @@ static ssize_t show_##file_name \
> >>
> >> #define gov_attr_ro(_name) \
> >> static struct governor_attr _name = \
> >> -__ATTR(_name, 0444, show_##_name, NULL)
> >> +__ATTR(_name, 0444, _name##_show, NULL)
> >>
> >> #define gov_attr_rw(_name) \
> >> static struct governor_attr _name = \
> >> -__ATTR(_name, 0644, show_##_name, store_##_name)
> >> +__ATTR(_name, 0644, _name##_show, _name##_store)
> >>
> >> /* Common to all CPUs of a policy */
> >> struct policy_dbs_info {
> >> @@ -176,7 +176,7 @@ void od_register_powersave_bias_handler(unsigned int (*f)
> >> (struct cpufreq_policy *, unsigned int, unsigned int),
> >> unsigned int powersave_bias);
> >> void od_unregister_powersave_bias_handler(void);
> >> -ssize_t store_sampling_rate(struct gov_attr_set *attr_set, const char *buf,
> >> +ssize_t sampling_rate_store(struct gov_attr_set *attr_set, const char *buf,
> >> size_t count);
> >> void gov_update_cpu_data(struct dbs_data *dbs_data);
> >> #endif /* _CPUFREQ_GOVERNOR_H */
> >> diff --git a/drivers/cpufreq/cpufreq_ondemand.c b/drivers/cpufreq/cpufreq_ondemand.c
> >> index 6a41ea4729b8..e8fbf970ff07 100644
> >> --- a/drivers/cpufreq/cpufreq_ondemand.c
> >> +++ b/drivers/cpufreq/cpufreq_ondemand.c
> >> @@ -202,7 +202,7 @@ static unsigned int od_dbs_update(struct cpufreq_policy *policy)
> >> /************************** sysfs interface ************************/
> >> static struct dbs_governor od_dbs_gov;
> >>
> >> -static ssize_t store_io_is_busy(struct gov_attr_set *attr_set, const char *buf,
> >> +static ssize_t io_is_busy_store(struct gov_attr_set *attr_set, const char *buf,
> >> size_t count)
> >> {
> >> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> >> @@ -220,7 +220,7 @@ static ssize_t store_io_is_busy(struct gov_attr_set *attr_set, const char *buf,
> >> return count;
> >> }
> >>
> >> -static ssize_t store_up_threshold(struct gov_attr_set *attr_set,
> >> +static ssize_t up_threshold_store(struct gov_attr_set *attr_set,
> >> const char *buf, size_t count)
> >> {
> >> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> >> @@ -237,7 +237,7 @@ static ssize_t store_up_threshold(struct gov_attr_set *attr_set,
> >> return count;
> >> }
> >>
> >> -static ssize_t store_sampling_down_factor(struct gov_attr_set *attr_set,
> >> +static ssize_t sampling_down_factor_store(struct gov_attr_set *attr_set,
> >> const char *buf, size_t count)
> >> {
> >> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> >> @@ -265,7 +265,7 @@ static ssize_t store_sampling_down_factor(struct gov_attr_set *attr_set,
> >> return count;
> >> }
> >>
> >> -static ssize_t store_ignore_nice_load(struct gov_attr_set *attr_set,
> >> +static ssize_t ignore_nice_load_store(struct gov_attr_set *attr_set,
> >> const char *buf, size_t count)
> >> {
> >> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> >> @@ -290,7 +290,7 @@ static ssize_t store_ignore_nice_load(struct gov_attr_set *attr_set,
> >> return count;
> >> }
> >>
> >> -static ssize_t store_powersave_bias(struct gov_attr_set *attr_set,
> >> +static ssize_t powersave_bias_store(struct gov_attr_set *attr_set,
> >> const char *buf, size_t count)
> >> {
> >> struct dbs_data *dbs_data = to_dbs_data(attr_set);
> >> --
> >> 2.20.1
> >>
> >>
> >>
> >
>
> --
> Kind regards,
> Lianjie
>
>