diff options
Diffstat (limited to 'include/linux/debugobjects.h')
| -rw-r--r-- | include/linux/debugobjects.h | 11 | 
1 files changed, 11 insertions, 0 deletions
| diff --git a/include/linux/debugobjects.h b/include/linux/debugobjects.h index 8c243aaa86a7..597692f1fc8d 100644 --- a/include/linux/debugobjects.h +++ b/include/linux/debugobjects.h @@ -20,12 +20,14 @@ struct debug_obj_descr;   * struct debug_obj - representaion of an tracked object   * @node:	hlist node to link the object into the tracker list   * @state:	tracked object state + * @astate:	current active state   * @object:	pointer to the real object   * @descr:	pointer to an object type specific debug description structure   */  struct debug_obj {  	struct hlist_node	node;  	enum debug_obj_state	state; +	unsigned int		astate;  	void			*object;  	struct debug_obj_descr	*descr;  }; @@ -60,6 +62,15 @@ extern void debug_object_deactivate(void *addr, struct debug_obj_descr *descr);  extern void debug_object_destroy   (void *addr, struct debug_obj_descr *descr);  extern void debug_object_free      (void *addr, struct debug_obj_descr *descr); +/* + * Active state: + * - Set at 0 upon initialization. + * - Must return to 0 before deactivation. + */ +extern void +debug_object_active_state(void *addr, struct debug_obj_descr *descr, +			  unsigned int expect, unsigned int next); +  extern void debug_objects_early_init(void);  extern void debug_objects_mem_init(void);  #else |