dtrace_pops_t dtrace_provider_ops = {
(void (*)(void *, const dtrace_probedesc_t *))dtrace_nullop,
(void (*)(void *, struct module *))dtrace_nullop,
- (void (*)(void *, struct module *))dtrace_nullop,
(int (*)(void *, dtrace_id_t, void *))dtrace_enable_nullop,
(void (*)(void *, dtrace_id_t, void *))dtrace_nullop,
(void (*)(void *, dtrace_id_t, void *))dtrace_nullop,
kfree(probe);
}
-
- /*
- * Give all providers a chance to do cleanup for this module.
- */
- for (prv = dtrace_provider; prv != NULL; prv = prv->dtpv_next) {
- if (prv->dtpv_pops.dtps_cleanup_module)
- prv->dtpv_pops.dtps_cleanup_module(prv->dtpv_arg, mp);
- }
-
mutex_unlock(&dtrace_lock);
mutex_unlock(&dtrace_provider_lock);
typedef struct dtrace_pops {
void (*dtps_provide)(void *, const struct dtrace_probedesc *);
void (*dtps_provide_module)(void *, struct module *);
- void (*dtps_cleanup_module)(void *, struct module *);
int (*dtps_enable)(void *, dtrace_id_t, void *);
void (*dtps_disable)(void *, dtrace_id_t, void *);
void (*dtps_suspend)(void *, dtrace_id_t, void *);