- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
想法是使用argdist
来测量napi_poll()
的延迟持续时间,它返回已处理的数据包数量(称为工作)。 napi_poll()
的执行延迟与处理的数据包数量之比将以直方图的形式给出处理每个数据包所需的平均时间。
我正在使用以下命令
argdist -H 'r:c:napi_poll():u64:$latency/$retval#每个数据包的平均时间 (ns)'
最终给我错误 Failed to Attach BPF to kprobe
并且在 dmesg 中我收到类似 Could not insertprobe at napi_poll+0: -2
我只是好奇为什么当类似的技巧适用于 net_rx_action()
时我无法将 kretprobes
附加到 napi_poll()
?
最佳答案
大多数情况下,Failed to Attach BPF to kprobe
错误是由内联函数引起的。正如 Kprobes documentation 中所述(Kprobes 功能和限制
部分),如果目标函数被内联,Kprobes 将无法附加。自 napi_poll
is static ,它可能已在编译时内联。
您可以检查内核符号是否内联napi_poll
:
$ cat /boot/System.map-`uname -r` | grep " napi_poll"
$
$ cat /boot/System.map-`uname -r` | grep " net_rx_action"
ffffffff817d8110 t net_rx_action
在我的系统上,napi_poll
是内联的,而 net_rx_action
则不是。
根据您的目标,此问题有多种解决方法。
inline
attribute确保 napi_poll
未内联。napi_poll
调用函数。如果 napi_poll
调用的函数提供了足够的信息并且本身未内联,那么它也可以工作。关于linux-kernel - 无法使用密件抄送工具将 eBPF `kretprobes` 附加到 `napi_poll()`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47963531/
想法是使用argdist来测量napi_poll()的延迟持续时间,它返回已处理的数据包数量(称为工作)。 napi_poll() 的执行延迟与处理的数据包数量之比将以直方图的形式给出处理每个数据包所
想法是使用argdist来测量napi_poll()的延迟持续时间,它返回已处理的数据包数量(称为工作)。 napi_poll() 的执行延迟与处理的数据包数量之比将以直方图的形式给出处理每个数据包所
我是一名优秀的程序员,十分优秀!