摘要: 前言 很惭愧,搞了这么久的linux开发,之前测试无论是用ftrace还是perf也好,都没有认真的去了解tracepoint的实现,这次正好 开发的代码中需要设计一个tracepoint,便于后期调试使用,所以趁此机会,了解下tracepoint在内核里面的编写。 你真的知道trace的原理吗? 阅读全文
posted @ 2021-04-18 00:04 haoxing990 阅读(2543) 评论(0) 推荐(0) 编辑
摘要: perf监控多事件 阅读全文
posted @ 2021-04-15 20:17 haoxing990 阅读(868) 评论(0) 推荐(0) 编辑
摘要: man7.org > Linux > man-pages Linux/UNIX system programming training perf_event_open(2) — Linux manual page NAME | SYNOPSIS | DESCRIPTION | RETURN VALU 阅读全文
posted @ 2021-04-14 09:35 haoxing990 阅读(757) 评论(0) 推荐(0) 编辑
摘要: 前段时间在分析kvm armv8部分源码的时候,发现一个很奇怪的smcc指令 include/linux/arm-smccc.h arm_smccc_1_1_invoke * 399 * This is a variadic macro taking one to eight source argu 阅读全文
posted @ 2021-04-04 17:37 haoxing990 阅读(973) 评论(0) 推荐(0) 编辑
摘要: 422 /** 423 * cpumask_and - *dstp = *src1p & *src2p 424 * @dstp: the cpumask result 425 * @src1p: the first input 426 * @src2p: the second input 427 * 阅读全文
posted @ 2021-03-28 15:02 haoxing990 阅读(647) 评论(0) 推荐(0) 编辑
摘要: 为什么会有MIGRATE_PCPTYPES 在分析per cpu page的时候无疑看到MIGRATE_PCPTYPES和MIGRATE_HIGHATOMIC相等,感觉挺奇怪的,花点时间分析了下。 在分析这些特性的时候,个人还是比较喜欢追根溯源,看了下社区提交的patch记录,大致了解了设计page 阅读全文
posted @ 2021-03-07 18:18 haoxing990 阅读(1027) 评论(0) 推荐(0) 编辑
摘要: 前言 前段时间测试smmu的性能的时候开启和关闭strict功能,对比了strict开启和关闭后的差异, 竟然发现差异还挺大的,就想弄明白这个功能是咋实现的。 strict的原理 其实了解这个功能的最好方式还是看该系列patch,这里列出patch和作者的解释 https://patchwork.k 阅读全文
posted @ 2021-03-06 23:32 haoxing990 阅读(1206) 评论(0) 推荐(0) 编辑
摘要: AArch64 Linux uses either 3 levels or 4 levels of translation tables with the 4KB page configuration, allowing 39-bit (512GB) or 48-bit (256TB) virtua 阅读全文
posted @ 2021-01-28 20:17 haoxing990 阅读(1039) 评论(0) 推荐(0) 编辑
摘要: rust语法 阅读全文
posted @ 2021-01-04 23:34 haoxing990 阅读(854) 评论(0) 推荐(0) 编辑
摘要: 获取源码 git clone https://github.com/llvm/llvm-project.git 相关依赖安装 apt-get update apt-get install -y git vim build-essential gcc-6 g++-6 cmake swig python 阅读全文
posted @ 2020-09-23 17:05 haoxing990 阅读(2500) 评论(0) 推荐(0) 编辑