函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:klp_write_object_relocations

函数原型:static int klp_write_object_relocations(struct module *pmod, struct klp_object *obj)

返回类型:int

参数:

类型参数名称
struct module *pmod
struct klp_object *obj
252  ret等于0
255  Elf_Shdrsec
257  如果WARN_ON(!klp_is_object_loaded(obj))则返回:负EINVAL
260  objname等于如果klp_is_module(obj)则 external 否则"vmlinux"
263 i小于e_shnum循环
264  sec等于sechdrsi
265  secname等于secstringssh_name
266  如果非sh_flags按位与SHF_RELA_LIVEPATCH的值则继续下一循环
274  cnt等于sscanf - Unformat a buffer into a list of arguments*@buf: input buffer*@fmt: formatting of buffer*@...: resulting arguments
275  如果cnt不等于1则
276  打印错误信息("section %s has an incorrectly formatted name\n", secname)
278  ret等于负EINVAL
279  退出
282  如果字符串比较则继续下一循环
285  ret等于klp_resolve_symbols(sec, pmod)
286  如果ret退出
289  ret等于apply_relocate_add(sechdrs, strtab, symndx, i, pmod)
292  如果ret退出
296  返回:ret
调用者
名称描述
klp_init_object_loadedparts of the initialization that is done only when the object is loaded