前言:如下内容已经是在hang完大概半个多月后了,当时想写,一直没过来写,写blog果然也是已经花费时间的事情。

最近一直在休假,电脑的使用频率也不多。后来还是为了生活,不情愿的去开始上班了,上班的第一件事是什么呢? 当然是配置网路,配好了网路之后,我就开始滚系统(就全系统更新至最新包的意思,因为我们archer的特性之一就是滚动更新,恩,更新都是用滚的。),好久没有正经用了,当然要进入最好最新的状态才能稍微愉快的开始工作了,随便也为新同事们秀一秀我的系统。

就酱,上了两天。就发现不对劲。用着用着X就挂了。不用说,首先就是怀疑滚,系统滚进了什么不稳定的包。

查所有滚动包的列表,它们在这里:

[tong@TStation ~]$ vim /var/log/pacman.log 

查看系统日志,两招:1, journalctl。2. dmesg

[tong@TStation ~]$ dmesg 

实在抱歉的是,我当时(就是半个月前)没有把log留存下来,log里边的主要内容就是,

GPU HANG,请到 ”https://bugs.freedesktop.org/ “ 去报BUG

综合以上信息,我首先判断是intel的驱动出了问题。查看滚包列表里也确实,发现了内核包(linux)的更新。(intel的驱动在linux内核包里)。然后我就downgrade了linux内核包。

downgrade的方法: 因为arch是滚动更新的,且所有包都由上游提供,所以不提供官方的downgrade方法。换句话说就是arch只负责让你滚上去,而不负责帮你滚下来。

基于以上,一般的做法是,保留旧几个版本的更新包,当出现问题时,可以手动讲单包回退至指定版本。

旧包都保留在这个地方 /var/cache/pacman/pkg/ 系统会基于规则删除最旧的,路径和规则都是可配置的,怎么配就不写了,有兴趣的自行查询手册。

然后找到我需要降回去的linux版本的包,使用pacman降回去,并重启:

[tong@TStation ~]$ pacman -U /var/cache/pacman/pkg/linux-4.7.--x86_64.pkg.tar.xz 

以上,是确认了确实是某包故障时的常规解决方法。

然而,可想而知,我的问题,并没有那么简单。降级了kernel,问题依然存在。

于是又陷入了毫无头绪的状态下,遂,求google帮忙。同样没有找到有用的信息。

这期间我也是一直在搜寻着导致这个问题的蛛丝马迹,我当时依然在看dpdk的文档,同时开着win虚拟机和一些其他项目的同事通过QQ沟通,是的,大家依赖着QQ。这样,工作不久,内存就会达到某个临界值,chrome和qemu都在吃内存。于是我开始怀疑chrome出了什么问题。关了chrome的硬件加速,换firefox,都未能顺利解决问题。

变得束手无策了,我开始怀疑KDE(倒霉的KDE,没次又被怀疑),想换到FVWM,这个时候又提到了FVWM,尽早重新配置起来。于是在重新配置FVWM之前,我绝望般的打算去报BUG了,因为这个问题,很难提供有用的信息给开发者,从报bug到解决,定然是个漫长的过程。

报bug之前,自然是要找一找有没有报过的bug。然后我就发现了这个:

https://bugs.freedesktop.org/show_bug.cgi?id=89360

其中提到:

Short version
---
adding 'intel_iommu=igfx_off' helped

是的,还记得,为了调试DPDK,我打开了vt-d功能么?就是为了让PCI设备直接在用户态使用。参加http://www.cnblogs.com/hugetong/p/5904024.html

如此回想起来,每次出问题都是在开启了qemu之后。

总结:

1. 去掉内核选项 intel_iommu=on

2. 升级内核至最新。

3. 重启

问题解决 : )

解决归解决,还是有两个引申出来的问题

1. FVWM,需要重新配置起来,处于可用状态,随时待命。

2. 听闻了 zfs,brtfs两个文件系统?可以文件系统级别快照,回滚??

[troubleshoot][archlinux][X] GPU HANG的更多相关文章

  1. GPU hang

    最近做新项目 初期一直遇到个gpu hang的问题 就是command 提交过去gpu 就一直在那里 直到time out 也没什么别的错误提示 gpu debugger还抓不了 解决方案是 缩小之后 ...

  2. [troubleshoot][archlinux][X] plasma(KDE) 窗口滚动刷新冻结(约延迟10s)(已解决,root cause不明,无法再次复现)

    现象: konsole,setting等plasma的系统应用反应缓慢,在滚动条滚动时,尤为明显. 触发条件: 并不是十分明确的系统滚动升级(Syu)后,产生. 现象收集: 可疑的dmesg [ :: ...

  3. [troubleshoot][archlinux][bcache] 修改linux文件系统 / 分区方案 / 做混合硬盘 / 系统转生大!手!术!(调整底层架构,不!重!装!)

    目标: 我要做的事情是:修改文件系统,硬盘分区方案,但是不重装系统,整个操作不被应用层感知. 背景: 我的笔记本 ThinkPad T450.8G内存 + 16GB SSD + 1TB HDD.预装w ...

  4. [daily][troubleshoot][archlinux][wps][font] wps文档中的图内容无法显示中文

    序 用linux作为工作生产环境的几个需要解决的问题之一是:文档协作,即如何兼容Micro$oft Office格式的文档. 我一般的工作方式是:在linux下创建一个win7的虚拟机,安装常用的wi ...

  5. [archlinux][hardware] ThankPad T450自带SSD做bcache之后的使用寿命分析

    这个分析的起因,是由于我之前干了这两个事: [troubleshoot][archlinux][bcache] 修改linux文件系统 / 分区方案 / 做混合硬盘 / 系统转生大!手!术!(调整底层 ...

  6. [daily][archlinux][fonts] 在linux下管理字体

    序: linux是社区搞出来, 商业应用也都是服务器场景.社区里又都是技术人员.字体又是细节.而且会英文早成了标配.所以没有很多社区以外的人力来搞字体这个毫无回报的东西. 结果很自然的,装linux桌 ...

  7. [archlinux][crypto] 从T450迁移archlinux操作系统至T460s笔记本

    从T450笔记本迁移archlinux操作系统之T460s笔记本,同时: 1.  使用cryptsetup做底层块加密. 2.    全新使用btrfs文件系统. 一,硬盘分区. 1T的SSD,使用U ...

  8. [daily][archlinux][rsync] rsync

    科普文档:https://wiki.archlinux.org/index.php/Rsync 之前改文件系统时,用过. 然而用的不太对,导致一部分文件的权限出了问题. [troubleshoot][ ...

  9. 一篇分析诊断被"hang"住数据库的资料(Oracle Performance Diagnostic Guide——Hang/Locking)

    该资料已上传至本人QQ群空间,如需该资料,可到本人QQ群空间查找.下面贴表文本: Oracle Performance Diagnostic GuideHang/LockingVersion 3.1. ...

随机推荐

  1. Ue4中的框选函数

    void AHUD::GetActorsInSelectionRectangle(TSubclassOf<class AActor> ClassFilter, const FVector2 ...

  2. 快学Java NIO

    Java NIO Tutorial 地址:http://tutorials.jenkov.com/java-nio/index.html Java NIO系列教程译文地址:http://ifeve.c ...

  3. 【原】iOS学习42即时通信之XMPP(1)

    1. 即时通信 1> 概述 即时通讯(Instant Messaging)是目前Internet上最为流行的通讯方式,各种各样的即时通讯软件也层出不穷,服务提供商也提供了越来越丰富的通讯服务功能 ...

  4. ccc 模拟重力

    x=x+v v=v+gr cc.Class({ extends: cc.Component, properties: { velocity:{ default:null }, grivatity:{ ...

  5. linux安装SVN

    1. 下载软件包 http://archive.apache.org/dist/subversion/ http://archive.apache.org/dist/subversion/subver ...

  6. Python for Informatics 第11章 正则表达式二(译)

    注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 11.1 正则表达式的字符匹配 ...

  7. JS实现屏蔽键盘操作

    第一种:当页面初始加载的时候,屏蔽掉当前页面所有的键盘 $(document).ready(function () { document.body.onkeydown = function (even ...

  8. 【CodeVS】1993草地排水

    题目描述 Description 在农夫约翰的农场上,每逢下雨,Bessie最喜欢的三叶草地就积聚了一潭水.这意味着草地被水淹没了,并且小草要继续生长还要花相当长一段时间.因此,农夫约翰修建了一套排水 ...

  9. spring源码学习之路---IOC实现原理(三)

    作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可. 上一章我们已经初步认识了Be ...

  10. JSP自定义标签开发入门

    一般情况下开发jsp自定义标签需要引用以下两个包 import javax.servlet.jsp.*; import javax.servlet.jsp.tagext.*; 首先我们需要大致了解开发 ...