安庆

导航

上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 17 下一页

2018年10月11日 #

linux 3.10 的又一次hung

摘要: 最近又遇到一次hung,dmesg中堆栈如下: 如果只盯着这个堆栈看,可以看出,网卡的 dev_watchdog 函数检测到了eth4的queue 5 出现了 trans_timeout。 超时的检测周期,不同的设备是不一样的,intel的ixgbe对应的超时时间是 ixgbe_main.c 中设置 阅读全文

posted @ 2018-10-11 15:17 _备忘录 阅读(3481) 评论(0) 推荐(0)

2018年10月9日 #

linux 覆盖可执行文件的问题

摘要: 测试环境是3.10.0 内核。 有一次操作中,发现cp -f A B执行的时候,行为不一样: 当B没被打开,则正常覆盖B。 当B是被打开,但没有被执行,则能覆盖, 当B被打开,且被执行,则不能直接覆盖,而是创建一个同名文件,然后写这个文件,同时B的inode在os中用lsof看的话,是delete。 阅读全文

posted @ 2018-10-09 17:24 _备忘录 阅读(1467) 评论(0) 推荐(0)

2018年9月21日 #

linux suse 3.0.101的一次中断暴增的排查

摘要: 本文相关背景知识可以在:http://man7.org/linux/man-pages/man5/proc.5.html?spm=5176.100239.blogcont6047.8.ImCGpr 看到。 在一次呼叫测试中,遇到如下的问题: dstat出现missed ticks,根据dstat的源 阅读全文

posted @ 2018-09-21 16:06 _备忘录 阅读(980) 评论(0) 推荐(0)

2018年9月19日 #

linux 一种小的性能优化手段

摘要: 在编写内核模块的过程中,我们经常会创建percpu的hash表,比如定义结构如下: struct A { int a; int b; struct hlist_node hlist_node; hash node,用来挂载在hash冲突链上的成员 。。。 } 然后定义一个 A[hash桶的大小],在 阅读全文

posted @ 2018-09-19 09:38 _备忘录 阅读(181) 评论(0) 推荐(0)

2018年9月18日 #

linux 3.10中完成量的使用

摘要: 完成量是基于等待队列设计的,所以显然不能在中断上下文使用完成量。 我们来看一个使用完成量的经典例子: 在创建内核线程的例子中,我们使用了一个kthread_create_info结构来封装了一个完成量: 如上代码是提交请求的一侧,那么,处理请求的一侧是怎么完成该任务,并通知到请求方呢? 简单地看,没 阅读全文

posted @ 2018-09-18 08:17 _备忘录 阅读(755) 评论(0) 推荐(0)

2018年9月11日 #

linux 3.10的list_del

摘要: 最近看到一个page的数据比较奇怪: 查看一下这个地址: 最后看到的是lru的next和prev成员,一开始才疏学浅,觉得这个 0xdead000000100100 和 0xdead000000200200 很奇怪。 后来搜索之后,才发现这个是将一个entry删除之后,设置的标记值: 删除的代码实现 阅读全文

posted @ 2018-09-11 08:37 _备忘录 阅读(2302) 评论(0) 推荐(0)

2018年9月6日 #

linux 自定义模块来缓存skb的意义

摘要: linux中,管理网卡收发报文的结构是sk_buff,这个结构比freebsd中的m_buf复杂的多,这个也是为什么现在用户态协议栈大多采用bsd为基础来实现的一个原因。 skb是管理结构,目前linux 3.10是使用slub的方式来管理skb的缓存,但这个管理有没有什么问题? 据说曾经有人测试过 阅读全文

posted @ 2018-09-06 09:45 _备忘录 阅读(959) 评论(0) 推荐(0)

2018年9月5日 #

linux 一个跟踪文件删除的小技巧

摘要: 最近有同事问我说他有个现场环境,经常会丢失业务文件,每天都出现,几百个里面丢失1到两个。 为了解决这个问题,我让他布置audit,具体可以man一下auditctl。 过了一天,他说audit.log中抓到了,知道是某个pid做的动作,但是由于该pid是瞬间的,无法知道是谁干的,只知道是调用rm干的 阅读全文

posted @ 2018-09-05 14:23 _备忘录 阅读(2969) 评论(0) 推荐(0)

2018年9月4日 #

linux 再多的running也挡不住锁

摘要: 再续《linux 3.10 一次softlock排查》,看运行态进程数量之多: 但是,我们来看,有多少个running进程呢? 看看个数: 经常敲top的人肯定知道,running的进程数,一般是小于等于cpu的核数的,那为啥这个机器上这么多的running呢?为了排除是crash工具的问题,在从r 阅读全文

posted @ 2018-09-04 15:04 _备忘录 阅读(761) 评论(0) 推荐(0)

2018年9月3日 #

linux 的那些hung 检测机制

摘要: 在dmesg中,看到如下信息: 检测超时的函数: 网卡检测是否hung的关键函数是 fm10k_tx_timeout,如果 if (check_for_tx_hang(tx_ring) && fm10k_check_tx_hang(tx_ring)) 条件满足,则会属于real hung,否则是fa 阅读全文

posted @ 2018-09-03 20:12 _备忘录 阅读(1950) 评论(0) 推荐(0)

上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 17 下一页