On 08/01/14 12:43, Prarit Bhargava wrote: > > On 08/01/2014 03:36 PM, Stephen Boyd wrote: >> On 08/01/14 12:15, Prarit Bhargava wrote: >>> On 08/01/2014 01:18 PM, Stephen Boyd wrote: >>>> On 08/01/14 03:27, Prarit Bhargava wrote: >>>>> Can you send me the test and the trace of the deadlock? I'm not creating >>>>> it with: >>>>> >>>> This was with conservative as the default, and switching to ondemand >>>> >>>> # cd /sys/devices/system/cpu/cpu2/cpufreq >>>> # ls >>>> affected_cpus scaling_available_governors >>>> conservative scaling_cur_freq >>>> cpuinfo_cur_freq scaling_driver >>>> cpuinfo_max_freq scaling_governor >>>> cpuinfo_min_freq scaling_max_freq >>>> cpuinfo_transition_latency scaling_min_freq >>>> related_cpus scaling_setspeed >>>> scaling_available_frequencies stats >>>> # cat conservative/down_threshold >>>> 20 >>>> # echo ondemand > scaling_governor >>> Thanks Stephen, >>> >>> There's obviously a difference in our .configs. I have a global >>> conservative >>> directory, ie) /sys/devices/system/cpu/cpufreq/conservative instead of a >>> per-cpu >>> governor file. >>> >>> ie) what are your .config options for CPUFREQ? >>> >>> Mine are: >>> >>> # >>> # CPU Frequency scaling >>> # >>> CONFIG_CPU_FREQ=y >>> CONFIG_CPU_FREQ_GOV_COMMON=y >>> CONFIG_CPU_FREQ_STAT=m >>> CONFIG_CPU_FREQ_STAT_DETAILS=y >>> # CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set >>> # CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set >>> # CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set >>> CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE=y >>> CONFIG_CPU_FREQ_GOV_PERFORMANCE=y >>> CONFIG_CPU_FREQ_GOV_POWERSAVE=y >>> CONFIG_CPU_FREQ_GOV_USERSPACE=y >>> CONFIG_CPU_FREQ_GOV_ONDEMAND=y >>> CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y >>> >>> Is there some other config option I have to set? >> I have the same options. The difference is that my driver has a governor >> per policy. That's set with the CPUFREQ_HAVE_GOVERNOR_PER_POLICY flag. >> If I remove that flag I can't trigger the lockdep splat anymore with >> this sequence and your patch. > I see -- so you're seeing this on arm then? If so, let me know so I can > reserve > one to work on :) >
I only have ARM to test on. You can set this flag in your cpufreq driver if you have independently scaling CPU frequencies, so it isn't necessarily an ARM thing. -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/