X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=include%2Fsys%2Fdmu.h;h=bcdf7d646fbc8073337a412c4ac1772753a2cc39;hb=047218e222332418b75e2ef789f4a5bcf4b99ac6;hp=d24615262737912d1e88c18aecd30fc8c9105560;hpb=6b763916480834b3e8acb60bead9028895a72d45;p=mirror_zfs-debian.git diff --git a/include/sys/dmu.h b/include/sys/dmu.h index d2461526..bcdf7d64 100644 --- a/include/sys/dmu.h +++ b/include/sys/dmu.h @@ -713,11 +713,16 @@ void dmu_tx_mark_netfree(dmu_tx_t *tx); * to stable storage and will also be called if the dmu_tx is aborted. * If there is any error which prevents the transaction from being committed to * disk, the callback will be called with a value of error != 0. + * + * When multiple callbacks are registered to the transaction, the callbacks + * will be called in reverse order to let Lustre, the only user of commit + * callback currently, take the fast path of its commit callback handling. */ typedef void dmu_tx_callback_func_t(void *dcb_data, int error); void dmu_tx_callback_register(dmu_tx_t *tx, dmu_tx_callback_func_t *dcb_func, void *dcb_data); +void dmu_tx_do_callbacks(list_t *cb_list, int error); /* * Free up the data blocks for a defined range of a file. If size is