On 17-05-2013 07:52, Andy Shevchenko wrote: > Setting policy results in invalid value error. > % echo "step_wise" > policy > % echo: write error: Invalid argument > > Need clean up of the buffer which "echo" may add based on the arguments, before > comparing aganist list of governor names. > > Signed-off-by: Andy Shevchenko > Reported-by: Srinivas Pandruvada Acked-by: Eduardo Valentin Tested-by: Eduardo Valentin Tested on panda OMAP4430. As this is not platform dependent, I am fine with the test I did. > --- > Since v2: > - fix typo in variable definition block > drivers/thermal/thermal_core.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c > index d755440..1067fb0 100644 > --- a/drivers/thermal/thermal_core.c > +++ b/drivers/thermal/thermal_core.c > @@ -33,6 +33,7 @@ > #include > #include > #include > +#include > #include > #include > > @@ -713,10 +714,13 @@ policy_store(struct device *dev, struct device_attribute *attr, > int ret = -EINVAL; > struct thermal_zone_device *tz = to_thermal_zone(dev); > struct thermal_governor *gov; > + char name[THERMAL_NAME_LENGTH]; > + > + snprintf(name, sizeof(name), "%s", buf); > > mutex_lock(&thermal_governor_lock); > > - gov = __find_governor(buf); > + gov = __find_governor(strim(name)); > if (!gov) > goto exit; > >