kallsyms.h (618B)
1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef __TOOLS_KALLSYMS_H_ 3#define __TOOLS_KALLSYMS_H_ 1 4 5#include <elf.h> 6#include <linux/ctype.h> 7#include <linux/types.h> 8 9#ifndef KSYM_NAME_LEN 10#define KSYM_NAME_LEN 256 11#endif 12 13static inline u8 kallsyms2elf_binding(char type) 14{ 15 if (type == 'W') 16 return STB_WEAK; 17 18 return isupper(type) ? STB_GLOBAL : STB_LOCAL; 19} 20 21u8 kallsyms2elf_type(char type); 22 23bool kallsyms__is_function(char symbol_type); 24 25int kallsyms__parse(const char *filename, void *arg, 26 int (*process_symbol)(void *arg, const char *name, 27 char type, u64 start)); 28 29#endif /* __TOOLS_KALLSYMS_H_ */