Lines Matching refs:zds
114 zone_datasets_t *zds; in zone_datasets_lookup() local
116 list_for_each_entry(zds, &zone_datasets, zds_list) { in zone_datasets_lookup()
117 if (user_ns_zoneid(zds->zds_userns) == nsinum) in zone_datasets_lookup()
118 return (zds); in zone_datasets_lookup()
125 zone_dataset_lookup(zone_datasets_t *zds, const char *dataset, size_t dsnamelen) in zone_dataset_lookup() argument
129 list_for_each_entry(zd, &zds->zds_datasets, zd_list) { in zone_dataset_lookup()
170 zone_datasets_t *zds; in zone_dataset_attach() local
183 zds = zone_datasets_lookup(user_ns_zoneid(userns)); in zone_dataset_attach()
184 if (zds == NULL) { in zone_dataset_attach()
185 zds = kmem_alloc(sizeof (zone_datasets_t), KM_SLEEP); in zone_dataset_attach()
186 INIT_LIST_HEAD(&zds->zds_list); in zone_dataset_attach()
187 INIT_LIST_HEAD(&zds->zds_datasets); in zone_dataset_attach()
188 zds->zds_userns = userns; in zone_dataset_attach()
194 list_add_tail(&zds->zds_list, &zone_datasets); in zone_dataset_attach()
196 zd = zone_dataset_lookup(zds, dataset, dsnamelen); in zone_dataset_attach()
207 list_add_tail(&zd->zd_list, &zds->zds_datasets); in zone_dataset_attach()
222 zone_datasets_t *zds; in zone_dataset_detach() local
235 zds = zone_datasets_lookup(user_ns_zoneid(userns)); in zone_dataset_detach()
236 if (zds != NULL) in zone_dataset_detach()
237 zd = zone_dataset_lookup(zds, dataset, dsnamelen); in zone_dataset_detach()
238 if (zds == NULL || zd == NULL) { in zone_dataset_detach()
247 if (list_empty(&zds->zds_datasets)) { in zone_dataset_detach()
254 list_del(&zds->zds_list); in zone_dataset_detach()
255 kmem_free(zds, sizeof (*zds)); in zone_dataset_detach()
282 zone_datasets_t *zds; in zone_dataset_visible() local
299 zds = zone_datasets_lookup(crgetzoneid(curproc->cred)); in zone_dataset_visible()
300 if (zds == NULL) { in zone_dataset_visible()
306 list_for_each_entry(zd, &zds->zds_datasets, zd_list) { in zone_dataset_visible()
400 zone_datasets_t *zds; in spl_zone_fini() local
410 zds = list_entry(zone_datasets.next, zone_datasets_t, zds_list); in spl_zone_fini()
411 while (!list_empty(&zds->zds_datasets)) { in spl_zone_fini()
412 zd = list_entry(zds->zds_datasets.next, in spl_zone_fini()
417 put_user_ns(zds->zds_userns); in spl_zone_fini()
418 list_del(&zds->zds_list); in spl_zone_fini()
419 kmem_free(zds, sizeof (*zds)); in spl_zone_fini()