crash —— 获取内核和模块的符号

查看所有的内核符号以及地址

crash> sym -l
0 (D) __per_cpu_start
0 (D) irq_stack_union
4000 (D) cpu_debug_store
5000 (D) cpu_tss_rw
8000 (D) gdt_page
9000 (d) exception_stacks
e000 (d) entry_stack_storage
f000 (D) espfix_waddr
f008 (D) espfix_stack
f010 (D) cpu_llc_id
...
41a80 (d) rt_uncached_list
41ac0 (d) rt6_uncached_list
42000 (d) kvm_apic_eoi
42040 (D) steal_time
42080 (d) apf_reason
43000 (D) __per_cpu_end
ffffffff81000000 (T) _stext
ffffffff81000000 (T) _text
ffffffff81000000 (T) startup_64
ffffffff81000030 (T) secondary_startup_64
ffffffff810000f0 (T) verify_cpu
ffffffff810001f0 (T) start_cpu0
ffffffff81000200 (T) __startup_64
ffffffff81001000 (T) hypercall_page
ffffffff81001000 (t) xen_hypercall_set_trap_table
ffffffff81001020 (t) xen_hypercall_mmu_update
ffffffff81001040 (t) xen_hypercall_set_gdt
ffffffff81001060 (t) xen_hypercall_stack_switch
ffffffff81001080 (t) xen_hypercall_set_callbacks
ffffffff810010a0 (t) xen_hypercall_fpu_taskswitch
ffffffff810010c0 (t) xen_hypercall_sched_op_compat
...
ffffffffa0d8f9b8 (b) ipmi_user
ffffffffa0d8f9c0 (b) ready
ffffffffa0d8f9c4 (b) poweroff_powercycle
ffffffffa0d91000 MODULE END: ipmi_poweroff

搜索含有指定字符串的内核符号

crash> sym -q kernel
16be8 (d) in_kernel_fpu
177e0 (D) kernel_cpustat
ffffffff81007cd0 (T) perf_callchain_kernel
ffffffff81029db0 (t) dump_kernel_offset
ffffffff8102d860 (T) arch_check_bp_in_kernelspace
ffffffff810304c0 (T) __kernel_fpu_end
ffffffff810304e0 (T) kernel_fpu_end
ffffffff810307f0 (T) __kernel_fpu_begin
ffffffff81030870 (T) kernel_fpu_begin
ffffffff810324d0 (T) copy_xstate_to_kernel
ffffffff81032980 (T) copy_kernel_to_xstate
ffffffff8105f000 (T) relocate_kernel
ffffffff8106a230 (t) pmd_populate_kernel.constprop.21
ffffffff8106aa50 (T) kernel_ident_mapping_init
...

获取所有内核模块的符号

crash> sym -M
ffffffffa0002000 MODULE START: sch_fq_codel
ffffffffa0002000 (t) qdisc_pkt_len
ffffffffa0002010 (t) qdisc_peek_dequeued
ffffffffa0002070 (t) codel_get_enqueue_time
ffffffffa0002080 (t) dequeue_func
ffffffffa00020e0 (t) fq_codel_leaf
ffffffffa00020f0 (t) fq_codel_find
ffffffffa0002100 (t) fq_codel_bind
ffffffffa0002110 (t) fq_codel_unbind
ffffffffa0002120 (t) fq_codel_tcf_block
ffffffffa0002140 (t) fq_codel_dump_class
ffffffffa0002150 (t) fq_codel_dump
ffffffffa0002380 (t) fq_codel_destroy
ffffffffa00023b0 (t) codel_vars_init
...
ffffffffa0005060 (d) fq_codel_qdisc_ops
ffffffffa0005108 (d) __warned.58506
ffffffffa0005140 (d) __this_module
ffffffffa0007000 MODULE END: sch_fq_codel
ffffffffa0008000 MODULE START: loop
ffffffffa0008000 (t) loop_validate_file
...
ffffffffa000e7a0 (b) none_funcs
ffffffffa000e7d0 (b) part_shift
ffffffffa000e7d4 (b) max_part
ffffffffa0010000 MODULE END: loop
ffffffffa0011000 MODULE START: bonding
ffffffffa0011000 (t) bond_get_nest_level
ffffffffa0011010 (t) bond_neigh_setup
ffffffffa0011030 (t) bond_select_queue
ffffffffa0011080 (t) bond_change_rx_flags
ffffffffa00111f0 (t) bond_should_notify_peers
...
ffffffffa0040000 MODULE END: bonding

获取指定内核模块的符号

crash> sym -m kvm
ffffffffa0105000 MODULE START: kvm
43008 (d) cpu_tsc_khz
43010 (D) current_vcpu
ffffffffa0105000 (t) ack_flush
ffffffffa0105010 (T) kvm_get_kvm
ffffffffa0105030 (T) kvm_disable_largepages
ffffffffa0105040 (t) kvm_vcpu_mmap
ffffffffa0105060 (t) kvm_device_mmap
ffffffffa0105090 (t) kvm_io_bus_sort_cmp
ffffffffa01050d0 (t) vm_stat_get_per_vm
...
ffffffffa019c020 (b) kvm_total_used_mmu_pages
ffffffffa019c048 (b) mmu_page_header_cache
ffffffffa019c050 (b) pte_list_desc_cache
ffffffffa01c4000 MODULE END: kvm
posted @ 2023-09-24 11:44  摩斯电码  阅读(74)  评论(0编辑  收藏  举报