Lines Matching defs:udata
189 struct nskernd *udata = NULL;
196 udata = kmem_alloc(sizeof (*udata), KM_SLEEP);
197 if (ddi_copyin((void *)arg, udata, sizeof (*udata), mode) < 0) {
198 kmem_free(udata, sizeof (*udata));
202 switch (udata->command) {
204 *rvalp = nskernd_start(udata->data1);
216 bcopy(udata, &nskernd_kdata, sizeof (*udata));
227 bcopy(&nskernd_kdata, udata, sizeof (*udata));
235 udata->command = NSKERND_STOP;
236 udata->data1 = (uint64_t)1; /* cleanup done */
245 if (ddi_copyout(udata, (void *)arg,
246 sizeof (*udata), mode) < 0) {
254 /* save kmem by freeing the udata structure */
255 arg1 = udata->data1;
256 kmem_free(udata, sizeof (*udata));
257 udata = NULL;
262 /* save kmem by freeing the udata structure */
263 arg1 = udata->data1;
264 arg2 = udata->data2;
265 kmem_free(udata, sizeof (*udata));
266 udata = NULL;
271 cmn_err(CE_WARN, "nskernd: unknown command %d", udata->command);
276 if (udata != NULL) {
277 kmem_free(udata, sizeof (*udata));
278 udata = NULL;