Lines Matching full:helper
54 RW_SYSINIT(khelplistlock, &khelp_list_lock, "helper list lock");
56 static TAILQ_HEAD(helper_head, helper) helpers = TAILQ_HEAD_INITIALIZER(helpers);
59 static inline void khelp_remove_osd(struct helper *h, struct osd *hosd);
69 khelp_register_helper(struct helper *h)
71 struct helper *tmph;
118 khelp_deregister_helper(struct helper *h)
120 struct helper *tmph;
150 struct helper *h;
160 /* If helper is correct class and needs to store OSD... */
187 struct helper *h;
209 khelp_remove_osd(struct helper *h, struct osd *hosd)
215 * If the current helper uses OSD and calling osd_get()
216 * on the helper's h_id returns non-NULL, the helper has
238 struct helper *h;
262 * helper's h_hooks struct member.
276 * helper's h_hooks struct member.
290 struct helper *h;
324 if (kmd->helper->h_flags & HELPER_NEEDS_OSD) {
330 kmd->helper->h_zone = uma_zcreate(kmd->name,
334 strlcpy(kmd->helper->h_name, kmd->name, HELPER_NAME_MAXLEN);
335 kmd->helper->h_hooks = kmd->hooks;
336 kmd->helper->h_nhooks = kmd->nhooks;
337 if (kmd->helper->mod_init != NULL)
338 error = kmd->helper->mod_init();
340 error = khelp_register_helper(kmd->helper);
346 error = khelp_deregister_helper(kmd->helper);
348 if (kmd->helper->h_flags & HELPER_NEEDS_OSD)
349 uma_zdestroy(kmd->helper->h_zone);
350 if (kmd->helper->mod_destroy != NULL)
351 kmd->helper->mod_destroy();
353 /* Do nothing and allow unload if helper not in list. */
358 kmd->helper->h_refcount);