cpufreq: return EEXIST instead of EBUSY for second registering
authorYinghai Lu <yinghai@kernel.org>
Thu, 19 Sep 2013 04:05:20 +0000 (21:05 -0700)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 19 Sep 2013 22:37:10 +0000 (00:37 +0200)
commit4dea5806d332f91d640d99943db99a5539e832c3
treed75223cd2f1abea323cae98f3b198e430d69da48
parente4a6a29d1250022a885123cc0a04bd176b508854
cpufreq: return EEXIST instead of EBUSY for second registering

On systems that support intel_pstate, acpi_cpufreq fails to load, and
udev keeps trying until trace gets filled up and kernel crashes.

The root cause is driver return ret from cpufreq_register_driver(),
because when some other driver takes over before, it will return
EBUSY and then udev will keep trying ...

cpufreq_register_driver() should return EEXIST instead so that the
system can boot without appending intel_pstate=disable and still use
intel_pstate.

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/cpufreq/cpufreq.c