Lines Matching +full:full +full:- +full:custom

11 The implementation introduces a global, in-kernel hashtable that
24 (See the full API usage docbook notes in livepatch/shadow.c.)
30 meta-data and shadow-data:
32 - meta-data
34 - obj - pointer to parent object
35 - id - data identifier
37 - data[] - storage for shadow data
41 They also allow to call a custom constructor function when a non-zero
48 * klp_shadow_get() - retrieve a shadow variable data pointer
49 - search hashtable for <obj, id> pair
51 * klp_shadow_alloc() - allocate and add a new shadow variable
52 - search hashtable for <obj, id> pair
54 - if exists
56 - WARN and return NULL
58 - if <obj, id> doesn't already exist
60 - allocate a new shadow variable
61 - initialize the variable using a custom constructor and data when provided
62 - add <obj, id> to the global hashtable
64 * klp_shadow_get_or_alloc() - get existing or alloc a new shadow variable
65 - search hashtable for <obj, id> pair
67 - if exists
69 - return existing shadow variable
71 - if <obj, id> doesn't already exist
73 - allocate a new shadow variable
74 - initialize the variable using a custom constructor and data when provided
75 - add <obj, id> pair to the global hashtable
77 * klp_shadow_free() - detach and free a <obj, id> shadow variable
78 - find and remove a <obj, id> reference from global hashtable
80 - if found
82 - call destructor function if defined
83 - free shadow variable
85 * klp_shadow_free_all() - detach and free all <_, id> shadow variables
86 - find and remove any <_, id> references from global hashtable
88 - if found
90 - call destructor function if defined
91 - free shadow variable
98 for full working demonstrations.)
100 For the following use-case examples, consider commit 1d147bfa6429
102 spinlock to net/mac80211/sta_info.h :: struct sta_info. Each use-case
103 example can be considered a stand-alone livepatch implementation of this
108 ---------------------------
116 parent "goes live" (ie, any shadow variable get-API requests are made
130 sta = kzalloc(sizeof(*sta) + hw->sta_data_size, gfp);
163 In-flight parent objects
164 ------------------------
170 shadow variables to parents already in-flight.
200 Like the previous use-case, the shadow spinlock needs to be cleaned up.
205 Other use-cases
206 ---------------
224 Dynamic and Adaptive Updates of Non-Quiescent Subsystems in Commodity