- 博客(8)
- 资源 (1)
- 收藏
- 关注
原创 cgroup源码分析——基于centos3.10.0-693.25.4
因docker研究cgroupcgroup主要是对进程进行控制和审计,cgroup到底是怎么进行工作的呢?从cgroup在进程中的位置入手研究会看的清楚点。看task_struct的结构:#ifdef CONFIG_CGROUPS /* Control Group info protected by css_set_lock */ struct css_set __rcu *cgr...
2018-11-27 08:47:06
994
原创 容错分布式一致性算法——totem(一)
第一次接触分布式一致性算法是通过totem,现在开始研究paxos和raft之类,后面也是会做笔记的,便先将totem算法先写下来,用于对比学习。 totem协议,全称是The Totem Single-Ring Ordering and Membership Protocol,是一个基于令牌环的分布式一致性算法。一个令牌在集群节点之间传递,拿到令牌的节点才能够发消息,消息通过UDP广播发...
2018-11-05 10:33:02
1761
1
原创 sas控制器驱动结构粗探--基于3.10.0-693.25.4
公司出了个内核core,是宕机在了mpt3sas这个模块,以前没见过这个模块啊,不过不影响bug排查。这个模块是sas控制器的驱动。在之前的IO栈中,只了解到过通用块层,scsi往下的就没接触了,也正好趁此解这个bug的机会了解下IO栈scsi以下是什么。从config描述可以看到,mpt3sas是SAS控制器驱动,特殊点在于它是基于Fusion-MPT 架构的。config SCSI_MPT...
2018-10-26 11:13:09
3845
原创 direct IO 内核实现分析及揭示一个坑——基于3.10.0-693.11.1
linux的读写系统调用提供了一个O_DIRECT标记,可以让尝试绕过缓存,直接对磁盘进行读写(为啥是尝试绕过?当直接落盘失败时还要通过缓存去落盘)。为了能实现直接落盘,使用direct IO限制多多,文件偏移得对齐到磁盘block,内存地址得对齐到磁盘block,读写size也得对齐到磁盘block。但direct IO的实现还是有个小缺陷。这个缺陷我在fuse上的分析已经讲清楚了,对于缺陷原理...
2018-10-11 20:37:02
3035
原创 内核fuse实现中的一个隐患--基于centos 3.10.0-693.11
一次项目中,我们用的基于fuse的文件系统进程出core挂掉了,排查发现,这并不是个BUG,算是个缺陷吧。出core表现是这样的,libfuse从/dev/fuse中调用read读取内容,读返回成功了,但缓冲区只更新了部分内容,还有部分内容是旧的,导致libfuse执行了旧的命令,而我们实现的fuse文件系统,某些命令重复执行是会出core的,也幸亏会出core才能暴露这个bug,不然某些命令重复...
2018-10-10 22:35:33
1665
原创 poll源码分析--基于3.10.0-693.11.1
我们依然从函数调用开始分析,先分析poll的系统调用实现SYSCALL_DEFINE3(poll, struct pollfd __user *, ufds, unsigned int, nfds, int, timeout_msecs){ struct timespec end_time, *to = NULL; int ret; //如果传了超时时间,则在这里获取墙上时间 i...
2018-10-07 12:54:53
375
原创 mmap源码分析--基于3.10.0-693.11.1
mmap是个既简单又好用的东西,对于读写文件,它减少了一次内存拷贝,对于内存申请,它可以方便的申请到大块内存,用于自己管理。今天就来说说mmap的实现。mmap的原型是这样的:void *mmap(void *addr, size_t length, int prot, int flags, int fd, off_t offset);它在内核里的样子是...
2018-10-03 11:00:52
2132
原创 记一次iscsi umount不掉的内核bug
总结是不可能不写的了,这辈子都不可能不写,以前没有写blog的习惯,结果找个以前解过的bug,愣是看好一会来捋清当时到底啥情况。bug背景测试同事发现一个集群的iscsi文件系统umount不了,同事查看了下是iscsi断线了还一直连不上,在存储服务器连上后,结果还是umount不掉。bug排查首先看下umount的报错,busy表示有进程还在使用该文件系统,存储掉了出现这种情况好解释,i...
2018-09-29 21:15:13
617
The_Totem_Single-Ring_Ordering_and_Membership_Protocol.pdf
2018-10-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人