| | Subject | Re: [RFC] [PATCH 2.6.37-rc5-tip 4/20] 4: uprobes: Adding and remove a uprobe in a rb tree. | | From | Peter Zijlstra <> | | Date | Tue, 25 Jan 2011 14:56:13 +0100 |
| |
On Thu, 2010-12-16 at 15:28 +0530, Srikar Dronamraju wrote: > +struct uprobe_consumer { > + int (*handler)(struct uprobe_consumer *self, struct pt_regs *regs); > + /* > + * filter is optional; If a filter exists, handler is run > + * if and only if filter returns true. > + */ > + bool (*filter)(struct uprobe_consumer *self, struct task_struct *task); > + > + struct uprobe_consumer *next; > + void *fvalue; /* filter value */ > +};
Since you pass in a pointer to this structure at register_uprobe() its user allocated, hence you can remove the fvalue thing and let the user embed this in a larger struct if needed, the filter functions can then use container_of() to get at the larger data structure.
|