klp_object
struct klp_object *objs;
struct klp_object;
typedef int (*klp_pre_patch_t)(struct klp_object *obj);
typedef void (*klp_post_patch_t)(struct klp_object *obj);
typedef void (*klp_pre_unpatch_t)(struct klp_object *obj);
typedef void (*klp_post_unpatch_t)(struct klp_object *obj);
struct klp_object *obj;
struct klp_object *obj;
static struct klp_object *klp_find_object(struct klp_patch *patch,
struct klp_object *old_obj)
struct klp_object *obj;
struct klp_object *obj;
struct klp_object *obj;
struct klp_object *obj;
static bool klp_is_module(struct klp_object *obj)
struct klp_object *obj;
obj = container_of(kobj, struct klp_object, kobj);
ATTRIBUTE_GROUPS(klp_object);
static void klp_free_object_dynamic(struct klp_object *obj)
static void klp_init_func_early(struct klp_object *obj,
struct klp_object *obj);
static struct klp_object *klp_alloc_object_dynamic(const char *name,
struct klp_object *obj;
static void klp_find_object_module(struct klp_object *obj)
struct klp_object *obj)
struct klp_object *old_obj)
struct klp_object *obj;
struct klp_object *old_obj;
struct klp_object *obj;
obj = container_of(kobj, struct klp_object, kobj);
static void __klp_free_funcs(struct klp_object *obj, bool nops_only)
static void klp_free_object_loaded(struct klp_object *obj)
struct klp_object *obj, *tmp_obj;
static int klp_init_func(struct klp_object *obj, struct klp_func *func)
struct klp_object *obj,
static struct klp_func *klp_find_func(struct klp_object *obj,
struct klp_object *obj)
struct klp_object *obj)
struct klp_object *obj)
static int klp_init_object(struct klp_patch *patch, struct klp_object *obj)
static void klp_init_func_early(struct klp_object *obj,
struct klp_object *obj)
struct klp_object *obj;
struct klp_object *obj;
static inline bool klp_is_object_loaded(struct klp_object *obj)
static inline int klp_pre_patch_callback(struct klp_object *obj)
static inline void klp_post_patch_callback(struct klp_object *obj)
static inline void klp_pre_unpatch_callback(struct klp_object *obj)
static inline void klp_post_unpatch_callback(struct klp_object *obj)
static void __klp_unpatch_object(struct klp_object *obj, bool nops_only)
void klp_unpatch_object(struct klp_object *obj)
int klp_patch_object(struct klp_object *obj)
struct klp_object *obj;
int klp_patch_object(struct klp_object *obj);
void klp_unpatch_object(struct klp_object *obj);
struct klp_object *obj;
struct klp_object *obj;
struct klp_object *obj;
static int pre_patch_callback(struct klp_object *obj)
static void post_patch_callback(struct klp_object *obj)
static void pre_unpatch_callback(struct klp_object *obj)
static void post_unpatch_callback(struct klp_object *obj)
static struct klp_object objs[] = {
static void callback_info(const char *callback, struct klp_object *obj)
static struct klp_object objs[] = {
static struct klp_object objs[] = {
static struct klp_object objs[] = {
struct klp_object *objs;
objs = kzalloc(sizeof(struct klp_object) * (nr_objs + 1), GFP_KERNEL);
struct klp_object *obj = objs + i;
struct klp_object *obj;
struct klp_object;
typedef int (*klp_pre_patch_t)(struct klp_object *obj);
typedef void (*klp_post_patch_t)(struct klp_object *obj);
typedef void (*klp_pre_unpatch_t)(struct klp_object *obj);
typedef void (*klp_post_unpatch_t)(struct klp_object *obj);
static struct klp_object objs[] = {
static void callback_info(const char *callback, struct klp_object *obj)
static int pre_patch_callback(struct klp_object *obj)
static void post_patch_callback(struct klp_object *obj)
static void pre_unpatch_callback(struct klp_object *obj)
static void post_unpatch_callback(struct klp_object *obj)
static struct klp_object objs[] = {
static void callback_info(const char *callback, struct klp_object *obj)
static int pre_patch_callback(struct klp_object *obj)
static void post_patch_callback(struct klp_object *obj)
static void pre_unpatch_callback(struct klp_object *obj)
static void post_unpatch_callback(struct klp_object *obj)
static struct klp_object objs[] = {
static struct klp_object objs[] = {
static struct klp_object objs[] = {
static void pre_unpatch_callback(struct klp_object *obj)
static void post_unpatch_callback(struct klp_object *obj)
static struct klp_object objs[] = {
static void callback_info(const char *callback, struct klp_object *obj)
static int pre_patch_callback(struct klp_object *obj)
static void post_patch_callback(struct klp_object *obj)
static int pre_patch_callback(struct klp_object *obj)
static void post_patch_callback(struct klp_object *obj)
static void pre_unpatch_callback(struct klp_object *obj)
static void post_unpatch_callback(struct klp_object *obj)
static struct klp_object objs[] = {
static void callback_info(const char *callback, struct klp_object *obj)
static struct klp_object objs[] = {