Re: [PATCH] cpufreq:core: Fix printing of governor and driver name

2012-10-16 Thread Rafael J. Wysocki
On Tuesday 16 of October 2012 09:09:15 Viresh Kumar wrote:
 On 15 October 2012 23:21, Rafael J. Wysocki r...@sisk.pl wrote:
  On Wednesday 10 of October 2012 10:12:11 Viresh Kumar wrote:
  Arrays for governer and driver name are of size CPUFREQ_NAME_LEN or 16.
  i.e. 15 bytes for name and 1 for trailing '\0'.
 
  When cpufreq driver print these names (for sysfs), it includes '\n' or ' ' 
  in
  the fmt string and still passes length as CPUFREQ_NAME_LEN. If the driver 
  or
  governor names are using all 15 fields allocated to them, then the 
  trailing '\n'
  or ' ' will never be printed. And so commands like:
 
  root@linaro-developer# cat 
  /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver
 
  will print something like:
 
  cpufreq_foodrvroot@linaro-developer#
 
  Fix this by increasing print length by one character.
 
  Signed-off-by: Viresh Kumar viresh.ku...@linaro.org
 
  Thanks for the patch, I'll queue it up for v3.8.
 
 Hi Rafael,
 
 Thanks for accepting the patch.
 I thought both of my patches would go in 3.7-rc2 as they are bug
 fixes. Isn't that correct?

They don't fix serious bugs, though, so they don't look like urgent.

Thanks,
Rafael


-- 
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Re: [PATCH] cpufreq:core: Fix printing of governor and driver name

2012-10-15 Thread Rafael J. Wysocki
On Wednesday 10 of October 2012 10:12:11 Viresh Kumar wrote:
 Arrays for governer and driver name are of size CPUFREQ_NAME_LEN or 16.
 i.e. 15 bytes for name and 1 for trailing '\0'.
 
 When cpufreq driver print these names (for sysfs), it includes '\n' or ' ' in
 the fmt string and still passes length as CPUFREQ_NAME_LEN. If the driver or
 governor names are using all 15 fields allocated to them, then the trailing 
 '\n'
 or ' ' will never be printed. And so commands like:
 
 root@linaro-developer# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver
 
 will print something like:
 
 cpufreq_foodrvroot@linaro-developer#
 
 Fix this by increasing print length by one character.
 
 Signed-off-by: Viresh Kumar viresh.ku...@linaro.org

Thanks for the patch, I'll queue it up for v3.8.

Rafael


 ---
  drivers/cpufreq/cpufreq.c | 6 +++---
  include/linux/cpufreq.h   | 2 ++
  2 files changed, 5 insertions(+), 3 deletions(-)
 
 diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
 index 021973b..db6e337 100644
 --- a/drivers/cpufreq/cpufreq.c
 +++ b/drivers/cpufreq/cpufreq.c
 @@ -445,7 +445,7 @@ static ssize_t show_scaling_governor(struct 
 cpufreq_policy *policy, char *buf)
   else if (policy-policy == CPUFREQ_POLICY_PERFORMANCE)
   return sprintf(buf, performance\n);
   else if (policy-governor)
 - return scnprintf(buf, CPUFREQ_NAME_LEN, %s\n,
 + return scnprintf(buf, CPUFREQ_NAME_PLEN, %s\n,
   policy-governor-name);
   return -EINVAL;
  }
 @@ -491,7 +491,7 @@ static ssize_t store_scaling_governor(struct 
 cpufreq_policy *policy,
   */
  static ssize_t show_scaling_driver(struct cpufreq_policy *policy, char *buf)
  {
 - return scnprintf(buf, CPUFREQ_NAME_LEN, %s\n, cpufreq_driver-name);
 + return scnprintf(buf, CPUFREQ_NAME_PLEN, %s\n, cpufreq_driver-name);
  }
  
  /**
 @@ -512,7 +512,7 @@ static ssize_t show_scaling_available_governors(struct 
 cpufreq_policy *policy,
   if (i = (ssize_t) ((PAGE_SIZE / sizeof(char))
   - (CPUFREQ_NAME_LEN + 2)))
   goto out;
 - i += scnprintf(buf[i], CPUFREQ_NAME_LEN, %s , t-name);
 + i += scnprintf(buf[i], CPUFREQ_NAME_PLEN, %s , t-name);
   }
  out:
   i += sprintf(buf[i], \n);
 diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h
 index b60f6ba..fc4b785 100644
 --- a/include/linux/cpufreq.h
 +++ b/include/linux/cpufreq.h
 @@ -22,6 +22,8 @@
  #include asm/div64.h
  
  #define CPUFREQ_NAME_LEN 16
 +/* Print length for names. Extra 1 space for accomodating '\n' in prints */
 +#define CPUFREQ_NAME_PLEN (CPUFREQ_NAME_LEN + 1)
  
  
  /*
 
-- 
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Re: [PATCH] cpufreq:core: Fix printing of governor and driver name

2012-10-15 Thread Viresh Kumar
On 15 October 2012 23:21, Rafael J. Wysocki r...@sisk.pl wrote:
 On Wednesday 10 of October 2012 10:12:11 Viresh Kumar wrote:
 Arrays for governer and driver name are of size CPUFREQ_NAME_LEN or 16.
 i.e. 15 bytes for name and 1 for trailing '\0'.

 When cpufreq driver print these names (for sysfs), it includes '\n' or ' ' in
 the fmt string and still passes length as CPUFREQ_NAME_LEN. If the driver or
 governor names are using all 15 fields allocated to them, then the trailing 
 '\n'
 or ' ' will never be printed. And so commands like:

 root@linaro-developer# cat 
 /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver

 will print something like:

 cpufreq_foodrvroot@linaro-developer#

 Fix this by increasing print length by one character.

 Signed-off-by: Viresh Kumar viresh.ku...@linaro.org

 Thanks for the patch, I'll queue it up for v3.8.

Hi Rafael,

Thanks for accepting the patch.
I thought both of my patches would go in 3.7-rc2 as they are bug
fixes. Isn't that correct?

--
viresh

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


[PATCH] cpufreq:core: Fix printing of governor and driver name

2012-10-09 Thread Viresh Kumar
Arrays for governer and driver name are of size CPUFREQ_NAME_LEN or 16.
i.e. 15 bytes for name and 1 for trailing '\0'.

When cpufreq driver print these names (for sysfs), it includes '\n' or ' ' in
the fmt string and still passes length as CPUFREQ_NAME_LEN. If the driver or
governor names are using all 15 fields allocated to them, then the trailing '\n'
or ' ' will never be printed. And so commands like:

root@linaro-developer# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver

will print something like:

cpufreq_foodrvroot@linaro-developer#

Fix this by increasing print length by one character.

Signed-off-by: Viresh Kumar viresh.ku...@linaro.org
---
 drivers/cpufreq/cpufreq.c | 6 +++---
 include/linux/cpufreq.h   | 2 ++
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
index 021973b..db6e337 100644
--- a/drivers/cpufreq/cpufreq.c
+++ b/drivers/cpufreq/cpufreq.c
@@ -445,7 +445,7 @@ static ssize_t show_scaling_governor(struct cpufreq_policy 
*policy, char *buf)
else if (policy-policy == CPUFREQ_POLICY_PERFORMANCE)
return sprintf(buf, performance\n);
else if (policy-governor)
-   return scnprintf(buf, CPUFREQ_NAME_LEN, %s\n,
+   return scnprintf(buf, CPUFREQ_NAME_PLEN, %s\n,
policy-governor-name);
return -EINVAL;
 }
@@ -491,7 +491,7 @@ static ssize_t store_scaling_governor(struct cpufreq_policy 
*policy,
  */
 static ssize_t show_scaling_driver(struct cpufreq_policy *policy, char *buf)
 {
-   return scnprintf(buf, CPUFREQ_NAME_LEN, %s\n, cpufreq_driver-name);
+   return scnprintf(buf, CPUFREQ_NAME_PLEN, %s\n, cpufreq_driver-name);
 }
 
 /**
@@ -512,7 +512,7 @@ static ssize_t show_scaling_available_governors(struct 
cpufreq_policy *policy,
if (i = (ssize_t) ((PAGE_SIZE / sizeof(char))
- (CPUFREQ_NAME_LEN + 2)))
goto out;
-   i += scnprintf(buf[i], CPUFREQ_NAME_LEN, %s , t-name);
+   i += scnprintf(buf[i], CPUFREQ_NAME_PLEN, %s , t-name);
}
 out:
i += sprintf(buf[i], \n);
diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h
index b60f6ba..fc4b785 100644
--- a/include/linux/cpufreq.h
+++ b/include/linux/cpufreq.h
@@ -22,6 +22,8 @@
 #include asm/div64.h
 
 #define CPUFREQ_NAME_LEN 16
+/* Print length for names. Extra 1 space for accomodating '\n' in prints */
+#define CPUFREQ_NAME_PLEN (CPUFREQ_NAME_LEN + 1)
 
 
 /*
-- 
1.7.12.rc2.18.g61b472e



___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev