Linux Crash/Hang on Bay Trail/J1900/N2940
近几年的linux kernel, 尤其是4.1以后,在Bay Trail平台上会随机挂起和死机,亲测j1900,死机非常频繁,而且死机前毫无征兆,直接就挂起了,console也没有相应。
这个问题在bugzilla.kernel.org上已经吵翻了,从2015年年初,一直到现在,仍然没有彻底解决,临时方案有几个,但不保证一定管用。
总结一下自己的j1900测试过的,可能管用的方案。
方案1:
在kernel flag里加上:
intel_idle.max_cstate=
经测试,在ubuntu 14.04, 15.10上有效,功耗会略微增大,但是在ubuntu 16.04上无效,仍然死机,只是死机间隔变长。
编辑/etc/default/grub,加一行:
GRUB_CMDLINE_LINUX="intel_idle.max_cstate=1"
方案2:
kernel flag加上:
processor.max_cstate= intel_idle.max_cstate=
或者
processor.max_cstate=
没有经过长期测试,效果未知。参考文档
方案3:
kernel flag:
intel_idle.max_cstate=
在rc.local加上:
echo > /sys/devices/system/cpu/intel_pstate/no_turbo
echo > /sys/devices/system/cpu/cpu0/cpuidle/state3/disable
echo > /sys/devices/system/cpu/cpu1/cpuidle/state3/disable
echo > /sys/devices/system/cpu/cpu2/cpuidle/state3/disable
echo > /sys/devices/system/cpu/cpu3/cpuidle/state3/disable
禁用state3,正在测试中,效果未知。
cpuidle state似乎没法在登陆之后更改,总是提示Permission denied,用sudo也不行。
---------------------------
更新:
只禁用state3仍然会死机。大约24小时就会死机。
正在测试禁用state2至state5。
更新2:
在bios中将主板设置成win8模式,内核更新到4.4.0-57,使用intel_idle.max_cstate=1内核参数,似乎是一个解决方案。9天没有死机。
Linux Crash/Hang on Bay Trail/J1900/N2940的更多相关文章
- linux crash工具安装配置
crash简介 crash是redhat的工程师开发的,主要用来离线分析linux内核转存文件,它整合了gdb工具,功能非常强大.可以查看堆栈,dmesg日志,内核数据结构,反汇编等等.crash支持 ...
- Bay Trail平板安装Ubuntu ThinkPad 8(20BNA00RCD)
首先说下没搞定的事项: 1,grub不能启动w10 2,ubuntu不能检测到无线网卡硬件 3,ubuntu更新软件和语言支持时,unpacking文件时经常都会发生卡死(怀疑是emmc驱动的问题) ...
- linux主机hang住echo 0 > /proc/sys/kernel/hung_task_timeout_secs disables this message
用dmesg显示如下图信息 问题原因: 默认情况下, Linux会最多使用40%的可用内存作为文件系统缓存.当超过这个阈值后,文件系统会把将缓存中的内存全部写入磁盘, 导致后续的IO请求都是同步的. ...
- Intel baytrail-t support Linux?
点击这里查看文章 有空试试---唉... Ubuntu (Linux) on Atom Z3700 Series ASUS Transformer Book T100 is particularly ...
- 内核调试工具 — kdump & crash
kdump简介 kdump是系统崩溃的时候,用来转储运行内存的一个工具. 系统一旦崩溃,内核就没法正常工作了,这个时候将由kdump提供一个用于捕获当前运行信息的内核, 该内核会将此时内存中的所有运行 ...
- 一个suse11 sp1的crash工具版本问题
这几年排查的各种类型的crash也比较多了,各种类型的也算见过,但是排查这个crash,走了不该走的弯路,事后显得很low,为了防止自己犯类似错误,也同时提醒后人,记录之. 内核是suse11,sp1 ...
- 从mdb到crash
本文面向使用过Solaris的mdb但是没有使用过Linux的crash的同学.比如说我自己,mdb用了很多年,现在全面转向Linux平台,于是很好奇Linux有没有类似的工具.熟悉Solaris的同 ...
- kdump机制和crash常见使用
kdump简介 kdump是系统崩溃的时候,用来转储运行内存的一个工具. 系统一旦崩溃,内核就没法正常工作了,这个时候将由kdump提供一个用于捕获当前运行信息的内核, 该内核会将此时内存中的所有运行 ...
- Linux 驱动开发
linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ...
随机推荐
- 整理的有用的一些EF的CommonDAL小封装
CommonDAL封装: using System; using System.Collections.Generic; using System.Data.Entity; using System. ...
- Python入门笔记(23):模块
一.模块基础 1.模块 自我包含,且有组织的代码片段就是模块 模块是Pyhon最高级别的程序组织单元,它将程序代码和数据封装起来以便重用.实际的角度,模块往往对应Python程序文件. 每个文件都是一 ...
- 004_URL 路由 - 定制路由系统 & 使用区域
定制路由系统 路由系统是灵活可配置的,当然还可以通过下面这两种方式定制路由系统,来满足其他需求. 1. 通过创建自定义的RouteBase实现: 2. 通过创建自定义路由处理程序实现. 创建自定义 ...
- sql 事务使用
BEGIN TRAN Tran_Money --开始事务 DECLARE @tran_error int; SET @tran_error = 0; BEGIN TRY UPDATE tb_Money ...
- bootstrap 学习片段
1. 只要单击按钮添加了data-toggle="dropdown"属性, 在单击按钮的时候,默认隐藏的下拉列表就会显示出来 <div class="row&quo ...
- ahjesus 让Boot Camp支持创建win7 u盘安装盘
通过修改BootCamp助理成功创建USB的windows7的安装盘. 以下将方法共享出来. 准备工作: 找到自己电脑的Boot Rom 版本.(点左上角那个小苹果标志 然后点 [关于本机] 然后点 ...
- ASP.NET MVC 微信公共平台开发之验证消息的真实性
ASP.NET MVC 微信公共平台开发 验证消息的真实性 在MVC Controller所在项目中添加过滤器,在过滤器中重写 public override void OnActionExecuti ...
- R语言学习笔记:分析学生的考试成绩
孩子上初中时拿到过全年级一次考试所有科目的考试成绩表,正好可以用于R语言的统计分析学习.为了不泄漏孩子的姓名,就用学号代替了,感兴趣可以下载测试数据进行练习. num class chn math e ...
- android ButterKnife 解决重复findViewById
简介: 程序员都是懒惰的,不想写一大堆像下面这样的代码 class ExampleActivity extends Activity { TextView title; TextView subtit ...
- UWP开发-重新理解MVVM
MVVM是一个比较热门的开发框架,尽管已经出现很久了,仍然比较受欢迎.MVVM框架包括: M:Model:Model指的是数据模型,例如你要在页面展示联系人信息,那么Model就是联系人的模型,包括联 ...