X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=module%2Fzfs%2Fdsl_prop.c;h=e44a94853929097e03c1b63cb6bf2f28ca611e66;hb=refs%2Fheads%2Frertzinger%2Ffeature-zpool-get--p;hp=0ba929a713e145c28738af1802c2710062c94511;hpb=c28b227942b421ebdc03c9df9a012642fb517223;p=zfs.git diff --git a/module/zfs/dsl_prop.c b/module/zfs/dsl_prop.c index 0ba929a..e44a948 100644 --- a/module/zfs/dsl_prop.c +++ b/module/zfs/dsl_prop.c @@ -247,9 +247,9 @@ dsl_prop_register(dsl_dataset_t *ds, const char *propname, return (err); } - cbr = kmem_alloc(sizeof (dsl_prop_cb_record_t), KM_SLEEP); + cbr = kmem_alloc(sizeof (dsl_prop_cb_record_t), KM_PUSHPAGE); cbr->cbr_ds = ds; - cbr->cbr_propname = kmem_alloc(strlen(propname)+1, KM_SLEEP); + cbr->cbr_propname = kmem_alloc(strlen(propname)+1, KM_PUSHPAGE); (void) strcpy((char *)cbr->cbr_propname, propname); cbr->cbr_func = callback; cbr->cbr_arg = cbarg; @@ -355,7 +355,7 @@ dsl_prop_predict_sync(dsl_dir_t *dd, dsl_prop_setarg_t *psa) source = ZPROP_SRC_LOCAL; } - switch (source) { + switch ((int)source) { case ZPROP_SRC_NONE: /* Revert to the received value, if any. */ err = zap_lookup(mos, zapobj, recvdstr, 8, 1, @@ -534,7 +534,7 @@ dsl_prop_changed_notify(dsl_pool_t *dp, uint64_t ddobj, } mutex_exit(&dd->dd_lock); - za = kmem_alloc(sizeof (zap_attribute_t), KM_SLEEP); + za = kmem_alloc(sizeof (zap_attribute_t), KM_PUSHPAGE); for (zap_cursor_init(&zc, mos, dd->dd_phys->dd_child_dir_zapobj); zap_cursor_retrieve(&zc, za) == 0; @@ -594,7 +594,7 @@ dsl_prop_set_sync(void *arg1, void *arg2, dmu_tx_t *tx) inheritstr = kmem_asprintf("%s%s", propname, ZPROP_INHERIT_SUFFIX); recvdstr = kmem_asprintf("%s%s", propname, ZPROP_RECVD_SUFFIX); - switch (source) { + switch ((int)source) { case ZPROP_SRC_NONE: /* * revert to received value, if any (inherit -S) @@ -697,7 +697,7 @@ dsl_prop_set_sync(void *arg1, void *arg2, dmu_tx_t *tx) if (source == ZPROP_SRC_LOCAL) { valstr = (char *)psa->psa_value; } else { - tbuf = kmem_alloc(ZAP_MAXVALUELEN, KM_SLEEP); + tbuf = kmem_alloc(ZAP_MAXVALUELEN, KM_PUSHPAGE); if (dsl_prop_get_ds(ds, propname, 1, ZAP_MAXVALUELEN, tbuf, NULL) == 0) valstr = tbuf; @@ -1155,8 +1155,16 @@ dsl_prop_nvlist_add_string(nvlist_t *nv, zfs_prop_t prop, const char *value) } #if defined(_KERNEL) && defined(HAVE_SPL) +EXPORT_SYMBOL(dsl_prop_register); +EXPORT_SYMBOL(dsl_prop_unregister); +EXPORT_SYMBOL(dsl_prop_numcb); EXPORT_SYMBOL(dsl_prop_set); +EXPORT_SYMBOL(dsl_prop_get); +EXPORT_SYMBOL(dsl_prop_get_integer); EXPORT_SYMBOL(dsl_prop_get_all); +EXPORT_SYMBOL(dsl_prop_get_received); +EXPORT_SYMBOL(dsl_prop_get_ds); +EXPORT_SYMBOL(dsl_prop_get_dd); EXPORT_SYMBOL(dsl_prop_nvlist_add_uint64); -EXPORT_SYMBOL(dsl_prop_get_integer); +EXPORT_SYMBOL(dsl_prop_nvlist_add_string); #endif