android - 如何在 4.2.2 中禁用或关闭 CPU HOTPLUG。核心?

标签 android linux linux-kernel embedded-linux

使用linux3.4 kernel-android 4.2.2和 编译我自己的内核并设置默认的 cpu 调控器是性能。

尽管 performance governor,cpu0 会定期杀死 cpu1, 有什么办法取消hotplug和cpu0、cpu1每次都在线。

up cpu1 manuel (echo 1 >/sys/devices/system/cpu/cpu1/online) 但随后 cpu0 再次杀死 cpu1。

谢谢...

>     <5>[ 1463.823251] **CPU1: shutdown**
>     <6>[ 1463.826297] [hotplug]: cpu(0) try to kill cpu(1)
>     <6>[ 1463.832847] [hotplug]: cpu1 is killed!
>     <7>[ 1464.122323] **cpu up:1**
>     <4>[ 1464.156379] CPU1: Booted secondary processor
>     <5>[ 1464.723240] **CPU1: shutdown**
>     <6>[ 1464.726262] [hotplug]: cpu(0) try to kill cpu(1)
>     <6>[ 1464.732851] **[hotplug]: cpu1 is killed!**
>     <6>[ 1473.123071] [BASE_I2C_DEBUG]receive temperature code: 0x04,0x41,0x01,0x24


>     root@android:/ # cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor 
>     cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor 
>     performance
>     root@android:/ #

最佳答案

浏览内核代码,我认为您似乎不能动态禁用热插拔 cpu,因为在 sysfs 中没有这样的接口(interface)。如果不需要热插拔 cpu,可以在构建内核时取消选择 CONFIG_HOTPLUG_CPU。

echo 1 >/sys/devices/system/cpu/cpu1/online 只是让这个cpu在线,但是内核判断可能再次离线

我认为 scaling_governor 只影响内核中称为 cpufreq 的机制的 cpu 频率。它与 hotplug cpu 的机制不同。 performance 仅将 cpu 设置为最大频率。但是当没有任务在这个 cpu 上运行时,hotplug cpu 仍然可以让它离线。

关于android - 如何在 4.2.2 中禁用或关闭 CPU HOTPLUG。核心?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31969403/

相关文章:

android - 在 fragment 中使用 tablayout 实现 recyclerview

安卓 fragment : View fully from code causes binding to null-object

linux - XMonad 不会使用 mod4Mask 产生任何东西

linux - 源中的上下文切换

c - 如果 jiffies 的分辨率为毫秒,usecs_to_jiffies 如何将 usecs 转换为 jiffies?

linux-kernel - 对于Linux RCU,在宽限期内,新的写入者是否有可能更新新数据?

安卓工作室不运行

Android 滚动最后一个可见的 ListItem 直到它完全可见

linux - tinkerboard android-/sys/class/thermal/thermal_zone1/temp : No such file or directory

linux - 是否可以在 Linux 内核上设置基于角色的安全文件系统