函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\kallsyms.c Create Date:2022-07-27 12:00:44
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Expand a compressed symbol data into the resulting uncompressed string,* if uncompressed string is too long (>= maxlen), it will be truncated,* given the offset to where the symbol is in the compressed stream.

函数原型:static unsigned int kallsyms_expand_symbol(unsigned int off, char *result, size_t maxlen)

返回类型:unsigned int

参数:

类型参数名称
unsigned intoff
char *result
size_tmaxlen
60  skipped_first等于0
64  data等于kallsyms_names[off]
65  len等于data
66  data自加
72  off加等于len加1
78 len循环
79  tptr等于kallsyms_token_table[kallsyms_token_index[ * data]]
80  data自加
81  len自减
83 tptr循环
84  如果skipped_first
85  如果maxlen小于等于1则转到:tail
87  result等于tptr
88  result自加
89  maxlen自减
90  否则skipped_first等于1
92  tptr自加
96  tail :
97  如果maxlenresult等于'\0'
101  返回:off
调用者
名称描述
kallsyms_lookup_nameLookup the address for this symbol. Returns 0 if not found.
kallsyms_on_each_symbol
kallsyms_lookupLookup an address* - modname is set to NULL if it's in the kernel.* - We guarantee that the returned name is valid until we reschedule even if.* It resides in a module.* - We also guarantee that modname will be valid until rescheduled.
lookup_symbol_name
lookup_symbol_attrs
get_ksymbol_coreReturns space to next name.