Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
Persona0x4343
V2EX  ›  Linux

在 Linux 环境下针对内核线程或驱动进行动态内存统计

  •  
  •   Persona0x4343 · Nov 20, 2018 · 3041 views
    This topic created in 2729 days ago, the information mentioned may be changed or developed.

    不知道 V 友们有没有熟悉这个操作的 现已知方法为使用 ftrace,跟踪 kmalloc 和 mm_page_alloc 等函数 但是,除开系统自带线程和进程后,留下的 log 可用数据十分少 大概 40w 条数据中有 5k 不到可用,不知道是什么地方出了问题?

    Supplement 1  ·  Nov 21, 2018
    昨天被这个东西折磨的头昏脑涨,描述的不清楚

    其实是想统计 wlan 驱动的动态内存使用峰值
    使用 wpa_supplicant 操作 wlan 模块连接 AP 并使用 iperf 大批量发送数据
    wlan 模块通过 pcie 接口与 linux 电脑交互
    不知道有没有熟悉 pcie 驱动的朋友,
    我想知道通过 pcie 工作会起什么线程或者进程,或者说使用 ftrace 监测 pcie 需要打开特殊的编译选项
    3 replies    2018-11-22 21:46:56 +08:00
    getecho
        1
    getecho  
       Nov 21, 2018
    没明白你在干嘛,隐式表达太多了吧
    rochek
        2
    rochek  
       Nov 22, 2018
    追踪驱动内的内存?

    开源驱动的话,编译时自定义下内存申请函数,define 替换
    #define kmalloc(a, b) my_kmalloc(a, b)
    chunk
        3
    chunk  
       Nov 22, 2018 via Android
    统计内核内存方法很多啊,至少可以写个模块,把内核线程所有的 pte 数一下
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1037 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 19:26 · PVG 03:26 · LAX 12:26 · JFK 15:26
    ♥ Do have faith in what you're doing.