• Miroslav Benes's avatar
    livepatch: make object/func-walking helpers more robust · f09d9086
    Miroslav Benes authored
    Current object-walking helper checks the presence of obj->funcs to
    determine the end of objs array in klp_object structure. This is
    somewhat fragile because one can easily forget about funcs definition
    during livepatch creation. In such a case the livepatch module is
    successfully loaded and all objects after the incorrect one are omitted.
    This is very confusing. Let's make the helper more robust and check also
    for the other external member, name. Thus the helper correctly stops on
    an empty item of the array. We need to have a check for obj->funcs in
    klp_init_object() to make it work.
    
    The same applies to a func-walking helper.
    
    As a benefit we'll check for new_func member definition during the
    livepatch initialization. There is no such check anywhere in the code
    now.
    
    [jkosina@suse.cz: fix shortlog]
    Signed-off-by: default avatarMiroslav Benes <mbenes@suse.cz>
    Acked-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
    Acked-by: default avatarJessica Yu <jeyu@redhat.com>
    Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
    f09d9086
core.c 21.6 KB