• Joe Lawrence's avatar
    livepatch: introduce shadow variable API · 439e7271
    Joe Lawrence authored
    Add exported API for livepatch modules:
    
      klp_shadow_get()
      klp_shadow_alloc()
      klp_shadow_get_or_alloc()
      klp_shadow_free()
      klp_shadow_free_all()
    
    that implement "shadow" variables, which allow callers to associate new
    shadow fields to existing data structures.  This is intended to be used
    by livepatch modules seeking to emulate additions to data structure
    definitions.
    
    See Documentation/livepatch/shadow-vars.txt for a summary of the new
    shadow variable API, including a few common use cases.
    
    See samples/livepatch/livepatch-shadow-* for example modules that
    demonstrate shadow variables.
    
    [jkosina@suse.cz: fix __klp_shadow_get_or_alloc() comment as spotted by
     Josh]
    Signed-off-by: default avatarJoe Lawrence <joe.lawrence@redhat.com>
    Acked-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
    Acked-by: default avatarMiroslav Benes <mbenes@suse.cz>
    Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
    439e7271
shadow.c 8 KB