最新 | 最热门 | 最高评价

+0  用guilt发patch小技巧

Tag: 工作故事 | guilt
RobinDong 发于 2013年11月29日 17:46 | 点击: 1718 | 展开摘要
我之前本地的补丁都是用guilt管理的,修改好了以后,git format-patch -n生成patch,写上标题什么的,然后发出去。

一直都是这样,直到最近,手头有十几个patch,发了好几版,每次都要把标题从旧path上拷过来,改改内容或者版本号什么的,很麻烦。

后来同事泰来告诉我一个方法,可以这样:

1. 对每个guilt补丁运行 guilt head -e 然后会跳出编辑器,把该补丁的head写上,比如

iosched: add new type of io

查看全文: http://www.udpwork.com/item/11265.html

+0  旧文件干扰

Tag: 操作系统 | version.h | 内核编译
RobinDong 发于 2013年11月19日 10:03 | 点击: 1843 | 展开摘要
昨天直接从git源上update到最新upstream内核版本,编译的内核却无法启动。一开始我以为是.config文件不对,于是试了各种方法,make localmodconfig,甚至make allmodconfig,居然还是起不来。于是在grub里加了个" vga=771 ",看看启动失败的具体报错信息,发现里面有句:

kernel tool old

神奇,这3.12的内核还老啊,在google上找了一下,还真有人遇到同样的报错,文章, 不过他是在arm上编译,gc

查看全文: http://www.udpwork.com/item/11148.html

+0  CLSF 2013讨论会纪要(二)

Tag: 文件系统 | btrfs | ceph | fusionio | LSI | ocfs2
RobinDong 发于 2013年10月23日 18:06 | 点击: 1858 | 展开摘要
第二天早上先由oracle的刘博同学介绍btrfs的进展。做为集宇宙之大成的btrfs相比xfs/ext4,新功能和改进都非常多。从08年开始btrfs就内置raid5/6了,一直在做性能改进,现在性能已经比multi-device略好5%,估计是md因为引入了新的设备层,所以性能会有小小损失(不过,5%,我个人感觉大了一点)。btrfs是支持snapshot的,但是对snapshot做defrag却是最近才加入的功能,对COW类性的fs来说,这个很好。online devi

查看全文: http://www.udpwork.com/item/11011.html

+0  CLSF 2013讨论会纪要(一)

Tag: 文件系统 | ext4 | fsck | xfs
RobinDong 发于 2013年10月23日 15:17 | 点击: 1654 | 展开摘要
10月17日到18日两天在LSI上海办公室参加了 CLSF2013 讨论会。简要记录之,如有错误,欢迎拍砖。

第一天早上开场先是由LSI亚太区的总裁致辞欢迎大家,因为请来的几乎都是LSI的客户:华为、oracle、阿里、百度、腾讯等(其实还有竞争对手,比如fusionio:)。当然,LSI做为东道主不仅提供了场地还提供了中午饭,还真要谢谢人家。

先由Jeff Liu介绍去年xfs的进展。xfs去年最大的改动是加入了自描述的元数据,其实就是元数据的CRC校验,如果读取时发现

查看全文: http://www.udpwork.com/item/11009.html

+0  我与“又拍”这六年

Tag: 生活故事 | yupoo | 又拍
RobinDong 发于 2013年09月22日 17:12 | 点击: 1697 | 展开摘要
2007年夏天,我还在北京漂泊,爸从老家过来看我,由于一直没有回家过年,我们已经两年没见面了。父子相见,高高兴兴嘻嘻哈哈,我便带爸一起去看当时军事博物馆的新武器展览。那时我还没有数码相机,就找同事借了一个,拍下了不少照片,回来以后发现:这么多照片存哪儿呢?存自己硬盘上,远在家乡的妈看不见;存flickr上?速度太慢。于是在网上找了一圈,发现国内的yupoo(“又拍”)界面相对最清爽,使用最方便。于是都把照片放上去了。

这是我爸2007年在“飞豹”战斗轰炸机前面的照片(中间穿

查看全文: http://www.udpwork.com/item/10724.html

+0  ext4磁盘碎片查看

Tag: 操作系统 | e2fsck | ext4 | filefrag
RobinDong 发于 2013年09月13日 15:33 | 点击: 7401 | 展开摘要
子团兄最近在测试ext4的bigalloc特性,cluster为256K,放入了16个大文件,每个文件25GB。反馈我说碎片很多,我觉得很奇怪便问是怎么看出来碎片多的,他说是用fsck看的:

#fsck.ext4 -f -y /dev/sdi1
e4fsck 1.42 (29-Nov-2011)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Ch

查看全文: http://www.udpwork.com/item/10672.html

+0  rhel6 的软RAID问题

Tag: 操作系统 | BIO_FLUSH | REQ_FLUSH | soft-raid
RobinDong 发于 2013年08月28日 14:23 | 点击: 1651 | 展开摘要
先是彭敏同学报线上服务器出现了kernel panic,我上去一看panic的地方在

md_seq_show()--> mddev_unlock()

里的 md_wakeup_thread(mddev->thread),说是mddev->thread为NULL。用的是基于2.6.32-220的ali_kernel。查了一下,这个问题倒是在2.6.32-279已经fix了,upstream的补丁是"md: Avoid waking up a thread after it

查看全文: http://www.udpwork.com/item/10529.html

+0  ARM开发者大会2013

Tag: 业界分享 | ARM | NEON | 宋宝华
RobinDong 发于 2013年08月09日 17:54 | 点击: 1692 | 展开摘要
上周六去参加了北京的2013年ARM开发者大会。说是大会,其实也就两百来人,不算特别多,我不是搞嵌入式的,参加是纯属好奇。

先是Allen Zhong做开场白,谈谈ARM开发者的机会。大意是世界范围内中产阶级增长迅速,80亿的世界人口里60亿有手机,这其中10亿是智能手机(去年的数据),所以ARM的技术用途很广泛市场很大,大家如果来学习ARM的开发一定有大把的工作机会,举“捕鱼达人”为例,已经月收入上千万了。(我个人觉得ARM虽然出货量大,但毕竟卖硬件利润低,走丰富软件的道

查看全文: http://www.udpwork.com/item/10361.html

+0  scsi command的不同路径

Tag: 操作系统 | io scheduler | scsi command
RobinDong 发于 2013年08月07日 14:19 | 点击: 2586 | 展开摘要
本来是在调试一个新的io-scheduler(在基于rhel 2.6.32-279的ali_kernel上),但是出现了一些BUG_ON(),追查了很久,在添加了大堆的trace信息以后,终于在一个多月后的昨天发现了原因。

linux的block层在分配io request以后会对其调用回调函数 elevator_set_req_fn() 做初始化,在request放入每个设备的request queue后还要调用回调函数 elevator_add_req_fn() ,(这

查看全文: http://www.udpwork.com/item/10351.html

+0  集群里机器hang住 备忘1

Tag: 工作故事 | delalloc | ext4 | mpt2sas
RobinDong 发于 2013年08月01日 16:35 | 点击: 2108 | 展开摘要
今天和刘毅同学一起研究了一下集群里机器hang住的现象。

所谓“hang住”,就是磁盘抽风(当然,也可能是sas/raid卡抽风),对发给它的io都不返回,造成许多访问它的进程都进入“D”状态,应用停止工作,等在read/write等系统调用上,严重的甚至终端命令都无法返回。

几个主要的场景都出现了ext4的报错:

EXT4-fs (sdx): delayed block allocation failed for inode 98838775 at logical o

查看全文: http://www.udpwork.com/item/10325.html

+0  先mkfs后写裸盘

Tag: 操作系统 | ext3 | ext4 | uninit_bg
RobinDong 发于 2013年07月25日 13:42 | 点击: 2130 | 展开摘要
步骤是这样:

1. mkfs.ext4格盘

2. 用fio工具随机写裸盘

3. mount盘为ext4文件系统并开始使用

发现一切使用正常,很多块盘都是这样做的,无一出错,使用了很久dmesg里连WARN都没有。但是一旦换成mkfs.ext3,使用一段时间就有报错了。

这个步骤的顺序肯定是错的,应该先写裸盘再mkfs,但是同事的问题是:为什么ext4不怕而ext3就不行了?

用dumpe2fs查看ext4的feature,嫌疑最大的是uninit_bg,因为带上这

查看全文: http://www.udpwork.com/item/10287.html

+0  rhel6再次发现jbd2的bug

Tag: 操作系统 | ext4 | jbd2
RobinDong 发于 2013年07月17日 17:38 | 点击: 5726 | 展开摘要
从上次修复jbd2的bug后到现在,已经四个月了,突然昨天DB的机器又出现了panic,用netoops抓到的信息如下:

居然又栽在jbd2上了,panic的位置和上次一样是

J_ASSERT(journal->j_running_transaction != NULL);

考虑到是运行很长时间的DB机器才出现这个问题,疑点还是落到tid上,由文卿同学找到了现象最符合的upstream的补丁:

commit deeeaf13b291420fe4a4a52606b9fc

查看全文: http://www.udpwork.com/item/10217.html
|<<<2345678>>>| 一共16页, 189条记录