usr/src/uts/common/fs/zfs/dmu_objset.c
changeset 11209 462283cb4096
parent 11165 68184eb5449e
child 11620 ebeec53e6212
equal deleted inserted replaced
11208:2efe153f06fe 11209:462283cb4096
   777 		dsl_props_set_sync(ds->ds_prev, &pa, cr, tx);
   777 		dsl_props_set_sync(ds->ds_prev, &pa, cr, tx);
   778 	}
   778 	}
   779 }
   779 }
   780 
   780 
   781 static int
   781 static int
   782 dmu_objset_snapshot_one(char *name, void *arg)
   782 dmu_objset_snapshot_one(const char *name, void *arg)
   783 {
   783 {
   784 	struct snaparg *sn = arg;
   784 	struct snaparg *sn = arg;
   785 	objset_t *os;
   785 	objset_t *os;
   786 	int err;
   786 	int err;
   787 
   787 
  1313 
  1313 
  1314 	return (0);
  1314 	return (0);
  1315 }
  1315 }
  1316 
  1316 
  1317 struct findarg {
  1317 struct findarg {
  1318 	int (*func)(char *, void *);
  1318 	int (*func)(const char *, void *);
  1319 	void *arg;
  1319 	void *arg;
  1320 };
  1320 };
  1321 
  1321 
  1322 /* ARGSUSED */
  1322 /* ARGSUSED */
  1323 static int
  1323 static int
  1324 findfunc(spa_t *spa, uint64_t dsobj, const char *dsname, void *arg)
  1324 findfunc(spa_t *spa, uint64_t dsobj, const char *dsname, void *arg)
  1325 {
  1325 {
  1326 	struct findarg *fa = arg;
  1326 	struct findarg *fa = arg;
  1327 	return (fa->func((char *)dsname, fa->arg));
  1327 	return (fa->func(dsname, fa->arg));
  1328 }
  1328 }
  1329 
  1329 
  1330 /*
  1330 /*
  1331  * Find all objsets under name, and for each, call 'func(child_name, arg)'.
  1331  * Find all objsets under name, and for each, call 'func(child_name, arg)'.
  1332  * Perhaps change all callers to use dmu_objset_find_spa()?
  1332  * Perhaps change all callers to use dmu_objset_find_spa()?
  1333  */
  1333  */
  1334 int
  1334 int
  1335 dmu_objset_find(char *name, int func(char *, void *), void *arg, int flags)
  1335 dmu_objset_find(char *name, int func(const char *, void *), void *arg,
       
  1336     int flags)
  1336 {
  1337 {
  1337 	struct findarg fa;
  1338 	struct findarg fa;
  1338 	fa.func = func;
  1339 	fa.func = func;
  1339 	fa.arg = arg;
  1340 	fa.arg = arg;
  1340 	return (dmu_objset_find_spa(NULL, name, findfunc, &fa, flags));
  1341 	return (dmu_objset_find_spa(NULL, name, findfunc, &fa, flags));
  1444 	return (err);
  1445 	return (err);
  1445 }
  1446 }
  1446 
  1447 
  1447 /* ARGSUSED */
  1448 /* ARGSUSED */
  1448 int
  1449 int
  1449 dmu_objset_prefetch(char *name, void *arg)
  1450 dmu_objset_prefetch(const char *name, void *arg)
  1450 {
  1451 {
  1451 	dsl_dataset_t *ds;
  1452 	dsl_dataset_t *ds;
  1452 
  1453 
  1453 	if (dsl_dataset_hold(name, FTAG, &ds))
  1454 	if (dsl_dataset_hold(name, FTAG, &ds))
  1454 		return (0);
  1455 		return (0);