X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=module%2Fzfs%2Fsa.c;fp=module%2Fzfs%2Fsa.c;h=32b4c5b084e1d8f1565251d927f8c45caa6fe5d6;hb=0ece356db51e225c3d4a26dff7cf67c99b6b9c55;hp=bcef7d1fb93d78c74bff71951613b0fd084fccb0;hpb=2c6d0b1e07b0265f0661ed7851d3aa8d3e75e7a9;p=zfs.git diff --git a/module/zfs/sa.c b/module/zfs/sa.c index bcef7d1..32b4c5b 100644 --- a/module/zfs/sa.c +++ b/module/zfs/sa.c @@ -1334,6 +1334,19 @@ sa_idx_tab_hold(objset_t *os, sa_idx_tab_t *idx_tab) } void +sa_spill_rele(sa_handle_t *hdl) +{ + mutex_enter(&hdl->sa_lock); + if (hdl->sa_spill) { + sa_idx_tab_rele(hdl->sa_os, hdl->sa_spill_tab); + dmu_buf_rele(hdl->sa_spill, NULL); + hdl->sa_spill = NULL; + hdl->sa_spill_tab = NULL; + } + mutex_exit(&hdl->sa_lock); +} + +void sa_handle_destroy(sa_handle_t *hdl) { mutex_enter(&hdl->sa_lock); @@ -1994,6 +2007,7 @@ EXPORT_SYMBOL(sa_handle_get_from_db); EXPORT_SYMBOL(sa_handle_destroy); EXPORT_SYMBOL(sa_buf_hold); EXPORT_SYMBOL(sa_buf_rele); +EXPORT_SYMBOL(sa_spill_rele); EXPORT_SYMBOL(sa_lookup); EXPORT_SYMBOL(sa_update); EXPORT_SYMBOL(sa_remove);