zoukankan      html  css  js  c++  java
  • kernel slab misc

    kernel slab misc

    console:/sys/kernel/slab # ls
    :0000008                 bio-0                   kioctx                      
    :0000016                 bio-1                   kmalloc-128                 
    :0000024                 bio-2                   kmalloc-1k                  
    :0000032                 bio-3                   kmalloc-256                 
    :0000040                 biovec-128              kmalloc-2k                  
    :0000048                 biovec-16               kmalloc-4k                  
    :0000056                 biovec-64               kmalloc-512                 
    :0000064                 biovec-max              kmalloc-8k                  
    :0000072                 blkdev_ioc              kmalloc-rcl-128             
    :0000088                 blkdev_requests         kmalloc-rcl-1k              
    :0000096                 bridge_fdb_cache        kmalloc-rcl-256             
    :0000104                 buffer_head             kmalloc-rcl-2k              
    :0000120                 cb_event                kmalloc-rcl-4k              
    :0000128                 cifs_inode_cache        kmalloc-rcl-512             
    :0000160                 cifs_mpx_ids            kmalloc-rcl-8k              
    :0000192                 cifs_request            kmem_cache                  
    :0000200                 cifs_small_rq           kmem_cache_node     

     在每个slab目录下,有个trace文件,echo 1到这个文件即可trace这个slab的alloc、trace calltrace,calltrace会打印到kernel log,dmesg即可看到这些log:

    console:/sys/kernel/slab/mm_struct # ls
    aliases     destroy_by_rcu objects_partial red_zone          store_user    
    align       free_calls     objs_per_slab   sanity_checks     total_objects 
    alloc_calls hwcache_align  order           shrink            trace         
    cpu_partial min_partial    partial         slab_size         usersize      
    cpu_slabs   object_size    poison          slabs             validate      
    ctor        objects        reclaim_account slabs_cpu_partial 
    [ 1044.424439] Object 00000000a8af9343: e8 98 7e 09 80 ff ff ff 00 00 00 00 00 00 00 00  ..~.............
    [ 1044.424444] Object 00000000437c8525: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    [ 1044.424448] Object 00000000c07bc299: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    [ 1044.424452] Object 00000000068e79d3: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    [ 1044.424457] Object 000000005f099c70: 00 00 00 00 00 00 00 00                          ........
    [ 1044.424465] CPU: 0 PID: 4866 Comm: sh Tainted: P           O      4.19.116+ #4
    [ 1044.424469] Hardware name: M7332 (DT)
    [ 1044.424472] Call trace:
    [ 1044.424484] dump_backtrace+0x0/0x4
    [ 1044.424492] dump_stack+0xf4/0x134
    [ 1044.424500] free_debug_processing+0x794/0xaf0
    [ 1044.424506] kmem_cache_free+0xfb8/0x1520
    [ 1044.424513] __mmdrop+0x8c/0x14c
    [ 1044.424519] mmput+0x18c/0x1b8
    [ 1044.424526] flush_old_exec+0x9d4/0x12c4
    [ 1044.424532] load_elf_binary+0x4fc/0x1a84
    [ 1044.424537] search_binary_handler+0x164/0x3c0
    [ 1044.424543] __do_execve_file+0xa74/0xdc0
    [ 1044.424549] __arm64_sys_execve+0x4c/0x5c
    [ 1044.424555] el0_svc_common+0xb8/0x1b8
    [ 1044.424560] el0_svc_handler+0x74/0x90
    [ 1044.424565] el0_svc+0x8/0x340
    console:/sys/kernel/slab/mm_struct # 

    参考:

    https://blog.csdn.net/rikeyone/article/details/116270989 

  • 相关阅读:
    docker制作容器(待更新)
    docker 容器连接宿主机mysql问题
    发布linux应用程序(待更新)
    docker 常用命令 (日常更新)
    多线程还是多进程的选择及区别(转)
    关于C++ const 的全面总结《转》
    JS闭包详解
    JS基础——js动画
    JS基础——innerHTML、CSS-DOM
    JS基础——DOM(一)
  • 原文地址:https://www.cnblogs.com/aspirs/p/15335400.html
Copyright © 2011-2022 走看看