> On Nov 20, 2015, at 1:30 PM, Matthew Ahrens <[email protected]> wrote: > > The problem is that we set the refreservation, then receive the first > snapshot which references more than it's allowed to, so it fails. The > alternative would be to set the refreservation at the end, with the > understanding that you might be in violation then.
Refreservation? Or refquota? The datasets I'm dealing with have refquota set, but not refreservation at all, and I don't immediately see any internal code that sets refreservation. The failure of the zfs recv in the bug's reproduction is a quota check failure: 10 -> dsl_dir_tempreserve_impl 10 -> dsl_dir_space_towrite 10 <- dsl_dir_space_towrite Returns 0x660000 10 -> dsl_dataset_check_quota 10 <- dsl_dataset_check_quota Returns 0x5b 10 <- dsl_dir_tempreserve_impl Returns 0x5b I'm attaching a DTrace script that I used to catch it in the act (and produce those lines of output above, among others). Run it before invoking the "zfs send ... | zfs recv..." portion of the bug's reproduction, and hit ^C on it after the command fails. I will also provide an example output. My first inclination at solving this problem is simple, and probably missing cases for the newly-pushed resumable-receive case: - Check the existence and non-zero-ness of ZFS_PROP_REFQUOTA in the receive dataset inside dmu_recv_stream(), toward the beginning. - Save it off, and set the dataset's refquota to 0/don't-enforce - Proceed with receive. - If we've saved off a REFQUOTA, restore it on the received dataset, failing the receive if setting the refquota fails (it shouldn't, but let's be conservative). Am I on crack? I'm concerned that setting REFQUOTA (dsl_dataset_set_refquota()) uses the name of the dataset and calls dsl_sync_task, while we already have a dsl_dataset pointer in dmu_recv_stream(). Pardon my naivete in this code, and thanks, Dan
quota.d
Description: Binary data
dtrace: script '/tmp/quota.d' matched 75603 probes
dtrace: 42 failed speculations (available buffer(s) still busy)
dtrace: 47 failed speculations (available buffer(s) still busy)
dtrace: 48 failed speculations (available buffer(s) still busy)
dtrace: 69 failed speculations (available buffer(s) still busy)
dtrace: 50 failed speculations (available buffer(s) still busy)
dtrace: 28 failed speculations (available buffer(s) still busy)
dtrace: 11 failed speculations (available buffer(s) still busy)
dtrace: 5 failed speculations (available buffer(s) still busy)
dtrace: 5 failed speculations (available buffer(s) still busy)
dtrace: 1 failed speculation (available buffer(s) still busy)
dtrace: 2 failed speculations (available buffer(s) still busy)
dtrace: 2 failed speculations (available buffer(s) still busy)
dtrace: 1 failed speculation (available buffer(s) still busy)
CPU FUNCTION
11 -> do_splx
11 -> apix_setspl
11 -> psm_get_cpu_id
11 <- psm_get_cpu_id Returns 0xb
11 <- apix_setspl Returns 0xffffff113bbd3640
11 -> apix_get_pending_spl
11 <- apix_get_pending_spl Returns 0x0
11 <- do_splx Returns 0xb
11 <- resume Returns 0xb
11 <- swtch Returns 0xb
11 <- cv_wait Returns 0x0
11 <- txg_wait_open Returns 0x0
11 <- dmu_tx_wait Returns 0x0
11 -> dmu_tx_try_assign
11 -> spa_suspended
11 <- spa_suspended Returns 0x0
11 -> dsl_pool_need_dirty_delay
11 <- dsl_pool_need_dirty_delay Returns 0x0
11 -> txg_hold_open
11 <- txg_hold_open Returns 0x4a16c4
11 -> list_head
11 <- list_head Returns 0xffffff12ebf82e68
11 -> list_next
11 <- list_next Returns 0x0
11 -> dsl_dataset_prev_snap_txg
11 -> spa_last_synced_txg
11 <- spa_last_synced_txg Returns 0x4a16c1
11 <- dsl_dataset_prev_snap_txg Returns 0x1
11 -> spa_get_asize
11 <- spa_get_asize Returns 0x8a0000
11 -> spa_get_asize
11 <- spa_get_asize Returns 0x2a0000
11 -> spa_get_asize
11 <- spa_get_asize Returns 0x2a0000
11 -> dsl_dir_tempreserve_space
11 -> kmem_alloc
11 -> kmem_cache_alloc
11 <- kmem_cache_alloc Returns 0xffffff11a7781920
11 <- kmem_alloc Returns 0xffffff11a7781920
11 -> list_create
11 <- list_create Returns 0xffffff11a7781930
11 -> arc_tempreserve_space
11 -> arc_memory_throttle
11 <- arc_memory_throttle Returns 0x0
11 <- arc_tempreserve_space Returns 0x0
11 -> kmem_zalloc
11 -> kmem_cache_alloc
11 <- kmem_cache_alloc Returns 0xffffff11a2626d68
11 <- kmem_zalloc Returns 0xffffff11a2626d68
11 -> list_insert_tail
11 <- list_insert_tail Returns 0xffffff11a7781930
11 -> dsl_dir_tempreserve_impl
11 -> dsl_dir_space_towrite
11 <- dsl_dir_space_towrite Returns 0x0
11 -> dsl_dataset_check_quota
11 | dsl_dataset_check_quota:return struct receive_writer_arg {
objset_t *os = 0xffffff12fdb77880
boolean_t byteswap = B_FALSE
bqueue_t q = {
list_t bq_list = {
size_t list_size = 0x178
size_t list_offset = 0x160
struct list_node list_head = {
struct list_node *list_next = 0xffffff11c3d80660
struct list_node *list_prev = 0xffffff119aaaf4a0
}
}
kmutex_t bq_lock = {
void *[1] _opaque = [ 0 ]
}
kcondvar_t bq_add_cv = {
ushort_t _opaque = 0x1
}
kcondvar_t bq_pop_cv = {
ushort_t _opaque = 0
}
uint64_t bq_size = 0xfeba88
uint64_t bq_maxsize = 0x1000000
size_t bq_node_offset = 0x160
}
kmutex_t mutex = {
void *[1] _opaque = [ 0 ]
}
kcondvar_t cv = {
ushort_t _opaque = 0
}
boolean_t done = B_FALSE
int err = 0
avl_tree_t *guid_to_ds_map = 0
boolean_t resumable = B_FALSE
uint64_t last_object = 0x9
uint64_t last_offset = 0x3200000
uint64_t bytes_read = 0x96875c8
}struct receive_record_arg {
dmu_replay_record_t header = {
enum drr_type = DRR_WRITE
uint32_t drr_payloadlen = 0
union drr_u = {
struct drr_begin drr_begin = {
uint64_t drr_magic = 0x9
uint64_t drr_versioninfo = 0x13
uint64_t drr_creation_time = 0x3200000
dmu_objset_type_t drr_type = 131072
uint32_t drr_flags = 0
uint64_t drr_toguid = 0xc162082156a05d45
uint64_t drr_fromguid = 0x7
char [256] drr_toname = [ "" ]
}
struct drr_end drr_end = {
zio_cksum_t drr_checksum = {
uint64_t [4] zc_word = [ 0x9, 0x13, 0x3200000, 0x20000 ]
}
uint64_t drr_toguid = 0xc162082156a05d45
}
struct drr_object drr_object = {
uint64_t drr_object = 0x9
dmu_object_type_t drr_type = DMU_OT_PLAIN_FILE_CONTENTS
dmu_object_type_t drr_bonustype = DMU_OT_NONE
uint32_t drr_blksz = 0x3200000
uint32_t drr_bonuslen = 0
uint8_t drr_checksumtype = 0
uint8_t drr_compress = 0
uint8_t [6] drr_pad = [ 0x2, 0, 0, 0, 0, 0 ]
uint64_t drr_toguid = 0xc162082156a05d45
}
struct drr_freeobjects drr_freeobjects = {
uint64_t drr_firstobj = 0x9
uint64_t drr_numobjs = 0x13
uint64_t drr_toguid = 0x3200000
}
struct drr_write drr_write = {
uint64_t drr_object = 0x9
dmu_object_type_t drr_type = DMU_OT_PLAIN_FILE_CONTENTS
uint32_t drr_pad = 0
uint64_t drr_offset = 0x3200000
uint64_t drr_length = 0x20000
uint64_t drr_toguid = 0xc162082156a05d45
uint8_t drr_checksumtype = 0x7
uint8_t drr_checksumflags = 0
uint8_t [6] drr_pad2 = [ 0, 0, 0, 0, 0, 0 ]
ddt_key_t drr_key = {
zio_cksum_t ddk_cksum = {
uint64_t [4] zc_word = [ 0, 0, 0, 0 ]
}
uint64_t ddk_prop = 0x200ff00ff
}
}
struct drr_free drr_free = {
uint64_t drr_object = 0x9
uint64_t drr_offset = 0x13
uint64_t drr_length = 0x3200000
uint64_t drr_toguid = 0x20000
}
struct drr_write_byref drr_write_byref = {
uint64_t drr_object = 0x9
uint64_t drr_offset = 0x13
uint64_t drr_length = 0x3200000
uint64_t drr_toguid = 0x20000
uint64_t drr_refguid = 0xc162082156a05d45
uint64_t drr_refobject = 0x7
uint64_t drr_refoffset = 0
uint8_t drr_checksumtype = 0
uint8_t drr_checksumflags = 0
uint8_t [6] drr_pad2 = [ 0, 0, 0, 0, 0, 0 ]
ddt_key_t drr_key = {
zio_cksum_t ddk_cksum = {
uint64_t [4] zc_word = [ 0, 0, 0x200ff00ff, 0 ]
}
uint64_t ddk_prop = 0
}
}
struct drr_spill drr_spill = {
uint64_t drr_object = 0x9
uint64_t drr_length = 0x13
uint64_t drr_toguid = 0x3200000
uint64_t [4] drr_pad = [ 0x20000, 0xc162082156a05d45, 0x7, 0 ]
}
struct drr_write_embedded drr_write_embedded = {
uint64_t drr_object = 0x9
uint64_t drr_offset = 0x13
uint64_t drr_length = 0x3200000
uint64_t drr_toguid = 0x20000
uint8_t drr_compression = 0x45
uint8_t drr_etype = 0x5d
uint8_t [6] drr_pad = [ 0xa0, 0x56, 0x21, 0x8, 0x62, 0xc1 ]
uint32_t drr_lsize = 0x7
uint32_t drr_psize = 0
}
struct drr_checksum drr_checksum = {
uint64_t [34] drr_pad = [ 0x9, 0x13, 0x3200000, 0x20000,
0xc162082156a05d45, 0x7, 0, 0, 0, 0, 0x200ff00ff, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
zio_cksum_t drr_checksum = {
uint64_t [4] zc_word = [ 0x1755677b58d7,
0x64250a341db50fb4, 0xecdb4ac8a2ab6ae2, 0xa5b8e7b40f2a2cc1 ]
}
}
}
}
void *payload = 0xffffff092dbba000
arc_buf_t *write_buf = 0xffffff12c6e71b60
int payload_size = 0x20000
uint64_t bytes_read = 0x96875c8
boolean_t eos_marker = B_FALSE
bqueue_node_t node = {
list_node_t bqn_node = {
struct list_node *list_next = 0
struct list_node *list_prev = 0
}
uint64_t bqn_size = 0x20178
}
}
11 <- dsl_dataset_check_quota Returns 0x31
11 <- dsl_dir_tempreserve_impl Returns 0x31
11 -> dsl_dir_tempreserve_clear
11 -> list_head
11 <- list_head Returns 0xffffff11a2626d68
11 -> arc_tempreserve_clear
11 <- arc_tempreserve_clear Returns 0xffffff11a2626d68
11 -> list_remove
11 <- list_remove Returns 0xffffff11a7781930
11 -> kmem_free
11 -> kmem_cache_free
11 <- kmem_cache_free Returns 0xffffff11f477cb00
11 <- kmem_free Returns 0xffffff11f477cb00
11 -> list_head
11 <- list_head Returns 0x0
11 -> kmem_free
11 -> kmem_cache_free
11 <- kmem_cache_free Returns 0xffffff11f477cb00
11 <- kmem_free Returns 0xffffff11f477cb00
11 <- dsl_dir_tempreserve_clear Returns 0xffffff11f477cb00
11 <- dsl_dir_tempreserve_space Returns 0x31
11 <- dmu_tx_try_assign Returns 0x31
11 -> dmu_tx_unassign
11 -> txg_rele_to_quiesce
11 <- txg_rele_to_quiesce Returns 0x31
11 -> list_head
11 <- list_head Returns 0xffffff12ebf82e68
11 -> cv_broadcast
11 <- cv_broadcast Returns 0x0
11 -> list_next
11 <- list_next Returns 0x0
11 -> txg_rele_to_sync
11 -> cv_broadcast
11 <- cv_broadcast Returns 0x0
11 <- txg_rele_to_sync Returns 0x0
11 <- dmu_tx_unassign Returns 0x4a16c4
11 <- dmu_tx_assign Returns 0x31
11 -> dmu_tx_abort
11 -> list_head
11 <- list_head Returns 0xffffff12ebf82e68
11 -> list_remove
11 <- list_remove Returns 0xffffff11758eb850
11 -> kmem_free
11 -> kmem_cache_free
11 <- kmem_cache_free Returns 0xffffff1244285c80
11 <- kmem_free Returns 0xffffff1244285c80
11 -> dnode_rele
11 -> dnode_rele_and_unlock
11 <- dnode_rele_and_unlock Returns 0x195
11 <- dnode_rele Returns 0x195
11 -> list_head
11 <- list_head Returns 0x0
11 -> list_is_empty
11 <- list_is_empty Returns 0x1
11 -> list_destroy
11 <- list_destroy Returns 0x1
11 -> list_destroy
11 <- list_destroy Returns 0x1
11 -> kmem_free
11 -> kmem_cache_free
11 <- kmem_cache_free Returns 0xffffff11dd554340
11 <- kmem_free Returns 0xffffff11dd554340
11 <- dmu_tx_abort Returns 0xffffff11dd554340
11 <- receive_write Returns 0x31
11 -> dmu_return_arcbuf
11 -> arc_return_buf
11 <- arc_return_buf Returns 0xfffffffffffe0000
11 -> arc_buf_remove_ref
11 -> buf_hash
11 <- buf_hash Returns 0x16545d2b1cf3c623
11 -> arc_buf_free
11 -> remove_reference
11 <- remove_reference Returns 0x0
11 -> arc_hdr_destroy
11 -> arc_buf_destroy
11 -> arc_buf_type
11 <- arc_buf_type Returns 0x0
11 -> arc_cksum_verify
11 <- arc_cksum_verify Returns 0x0
11 -> arc_buf_data_free
11 -> zio_data_buf_free
11 -> kmem_cache_free
11 <- kmem_cache_free Returns 0xffffff13035c61e0
11 <- zio_data_buf_free Returns 0xffffff13035c61e0
11 <- arc_buf_data_free Returns 0xffffff13035c61e0
11 -> arc_space_return
11 <- arc_space_return Returns 0xffffff13035c61e0
11 -> multilist_link_active
11 -> list_link_active
11 <- list_link_active Returns 0x0
11 <- multilist_link_active Returns 0x0
11 -> kmem_cache_free
11 <- kmem_cache_free Returns 0xffffff13036bb940
11 <- arc_buf_destroy Returns 0xffffff13036bb940
11 -> kmem_cache_free
11 <- kmem_cache_free Returns 0xffffff11cc8c5600
11 <- arc_hdr_destroy Returns 0xffffff11cc8c5600
11 <- arc_buf_free Returns 0xffffff11cc8c5600
11 <- arc_buf_remove_ref Returns 0x1
11 <- dmu_return_arcbuf Returns 0x1
11 <- receive_process_record Returns 0x31
10 -> receive_process_record struct receive_writer_arg {
objset_t *os = 0xffffff12fdb77880
boolean_t byteswap = B_FALSE
bqueue_t q = {
list_t bq_list = {
size_t list_size = 0x178
size_t list_offset = 0x160
struct list_node list_head = {
struct list_node *list_next = 0xffffff11c3d80660
struct list_node *list_prev = 0xffffff1301483320
}
}
kmutex_t bq_lock = {
void *[1] _opaque = [ 0 ]
}
kcondvar_t bq_add_cv = {
ushort_t _opaque = 0
}
kcondvar_t bq_pop_cv = {
ushort_t _opaque = 0
}
uint64_t bq_size = 0xfcb910
uint64_t bq_maxsize = 0x1000000
size_t bq_node_offset = 0x160
}
kmutex_t mutex = {
void *[1] _opaque = [ 0 ]
}
kcondvar_t cv = {
ushort_t _opaque = 0
}
boolean_t done = B_FALSE
int err = 0
avl_tree_t *guid_to_ds_map = 0
boolean_t resumable = B_FALSE
uint64_t last_object = 0x9
uint64_t last_offset = 0x31e0000
uint64_t bytes_read = 0x9667490
}struct receive_record_arg {
dmu_replay_record_t header = {
enum drr_type = DRR_WRITE
uint32_t drr_payloadlen = 0
union drr_u = {
struct drr_begin drr_begin = {
uint64_t drr_magic = 0x9
uint64_t drr_versioninfo = 0x13
uint64_t drr_creation_time = 0x3200000
dmu_objset_type_t drr_type = 131072
uint32_t drr_flags = 0
uint64_t drr_toguid = 0xc162082156a05d45
uint64_t drr_fromguid = 0x7
char [256] drr_toname = [ "" ]
}
struct drr_end drr_end = {
zio_cksum_t drr_checksum = {
uint64_t [4] zc_word = [ 0x9, 0x13, 0x3200000, 0x20000 ]
}
uint64_t drr_toguid = 0xc162082156a05d45
}
struct drr_object drr_object = {
uint64_t drr_object = 0x9
dmu_object_type_t drr_type = DMU_OT_PLAIN_FILE_CONTENTS
dmu_object_type_t drr_bonustype = DMU_OT_NONE
uint32_t drr_blksz = 0x3200000
uint32_t drr_bonuslen = 0
uint8_t drr_checksumtype = 0
uint8_t drr_compress = 0
uint8_t [6] drr_pad = [ 0x2, 0, 0, 0, 0, 0 ]
uint64_t drr_toguid = 0xc162082156a05d45
}
struct drr_freeobjects drr_freeobjects = {
uint64_t drr_firstobj = 0x9
uint64_t drr_numobjs = 0x13
uint64_t drr_toguid = 0x3200000
}
struct drr_write drr_write = {
uint64_t drr_object = 0x9
dmu_object_type_t drr_type = DMU_OT_PLAIN_FILE_CONTENTS
uint32_t drr_pad = 0
uint64_t drr_offset = 0x3200000
uint64_t drr_length = 0x20000
uint64_t drr_toguid = 0xc162082156a05d45
uint8_t drr_checksumtype = 0x7
uint8_t drr_checksumflags = 0
uint8_t [6] drr_pad2 = [ 0, 0, 0, 0, 0, 0 ]
ddt_key_t drr_key = {
zio_cksum_t ddk_cksum = {
uint64_t [4] zc_word = [ 0, 0, 0, 0 ]
}
uint64_t ddk_prop = 0x200ff00ff
}
}
struct drr_free drr_free = {
uint64_t drr_object = 0x9
uint64_t drr_offset = 0x13
uint64_t drr_length = 0x3200000
uint64_t drr_toguid = 0x20000
}
struct drr_write_byref drr_write_byref = {
uint64_t drr_object = 0x9
uint64_t drr_offset = 0x13
uint64_t drr_length = 0x3200000
uint64_t drr_toguid = 0x20000
uint64_t drr_refguid = 0xc162082156a05d45
uint64_t drr_refobject = 0x7
uint64_t drr_refoffset = 0
uint8_t drr_checksumtype = 0
uint8_t drr_checksumflags = 0
uint8_t [6] drr_pad2 = [ 0, 0, 0, 0, 0, 0 ]
ddt_key_t drr_key = {
zio_cksum_t ddk_cksum = {
uint64_t [4] zc_word = [ 0, 0, 0x200ff00ff, 0 ]
}
uint64_t ddk_prop = 0
}
}
struct drr_spill drr_spill = {
uint64_t drr_object = 0x9
uint64_t drr_length = 0x13
uint64_t drr_toguid = 0x3200000
uint64_t [4] drr_pad = [ 0x20000, 0xc162082156a05d45, 0x7, 0 ]
}
struct drr_write_embedded drr_write_embedded = {
uint64_t drr_object = 0x9
uint64_t drr_offset = 0x13
uint64_t drr_length = 0x3200000
uint64_t drr_toguid = 0x20000
uint8_t drr_compression = 0x45
uint8_t drr_etype = 0x5d
uint8_t [6] drr_pad = [ 0xa0, 0x56, 0x21, 0x8, 0x62, 0xc1 ]
uint32_t drr_lsize = 0x7
uint32_t drr_psize = 0
}
struct drr_checksum drr_checksum = {
uint64_t [34] drr_pad = [ 0x9, 0x13, 0x3200000, 0x20000,
0xc162082156a05d45, 0x7, 0, 0, 0, 0, 0x200ff00ff, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
zio_cksum_t drr_checksum = {
uint64_t [4] zc_word = [ 0x1755677b58d7,
0x64250a341db50fb4, 0xecdb4ac8a2ab6ae2, 0xa5b8e7b40f2a2cc1 ]
}
}
}
}
void *payload = 0xffffff092dbba000
arc_buf_t *write_buf = 0xffffff12c6e71b60
int payload_size = 0x20000
uint64_t bytes_read = 0x96875c8
boolean_t eos_marker = B_FALSE
bqueue_node_t node = {
list_node_t bqn_node = {
struct list_node *list_next = 0
struct list_node *list_prev = 0
}
uint64_t bqn_size = 0x20178
}
}
10 | receive_process_record:entry
10 -> receive_write
10 -> dmu_object_info
10 -> dnode_hold
10 -> dnode_hold_impl
10 -> rw_write_held
10 <- rw_write_held Returns 0x0
10 -> dbuf_whichblock
10 <- dbuf_whichblock Returns 0x0
10 -> dbuf_hold
10 -> dbuf_hold_level
10 -> dbuf_hold_impl
10 -> dbuf_find
10 -> dbuf_hash
10 <- dbuf_hash Returns 0xd5cfa6755a977d40
10 <- dbuf_find Returns 0xffffff12fc87a788
10 <- dbuf_hold_impl Returns 0x0
10 <- dbuf_hold_level Returns 0xffffff12fc87a788
10 <- dbuf_hold Returns 0xffffff12fc87a788
10 -> dbuf_read
10 -> zrl_add_impl
10 <- zrl_add_impl Returns 0x0
10 -> dmu_zfetch
10 <- dmu_zfetch Returns 0x0
10 -> zrl_remove
10 <- zrl_remove Returns 0x0
10 <- dbuf_read Returns 0x0
10 -> dmu_buf_get_user
10 <- dmu_buf_get_user Returns 0xffffff12fd923880
10 -> zrl_add_impl
10 <- zrl_add_impl Returns 0x0
10 -> zrl_remove
10 <- zrl_remove Returns 0x0
10 -> dbuf_rele
10 -> dbuf_rele_and_unlock
10 <- dbuf_rele_and_unlock Returns 0x6
10 <- dbuf_rele Returns 0x6
10 <- dnode_hold_impl Returns 0x0
10 <- dnode_hold Returns 0x0
10 -> dnode_rele
10 -> dnode_rele_and_unlock
10 <- dnode_rele_and_unlock Returns 0x196
10 <- dnode_rele Returns 0x196
10 <- dmu_object_info Returns 0x0
10 -> dmu_tx_create
10 -> dmu_tx_create_dd
10 -> kmem_zalloc
10 -> kmem_cache_alloc
10 <- kmem_cache_alloc Returns 0xffffff11758eb840
10 <- kmem_zalloc Returns 0xffffff11758eb840
10 -> list_create
10 <- list_create Returns 0xffffff11758eb850
10 -> list_create
10 <- list_create Returns 0xffffff11758eb8c0
10 -> gethrtime
10 -> tsc_gethrtime_delta
10 <- tsc_gethrtime_delta Returns 0x17d75614741f9
10 <- gethrtime Returns 0x17d75614741f9
10 <- dmu_tx_create_dd Returns 0xffffff11758eb840
10 -> dsl_dataset_prev_snap_txg
10 -> spa_last_synced_txg
10 <- spa_last_synced_txg Returns 0x4a16bf
10 <- dsl_dataset_prev_snap_txg Returns 0x1
10 <- dmu_tx_create Returns 0xffffff11758eb840
10 -> dmu_tx_hold_write
10 -> dmu_tx_hold_object_impl
10 -> dnode_hold
10 -> dnode_hold_impl
10 -> rw_write_held
10 <- rw_write_held Returns 0x0
10 -> dbuf_whichblock
10 <- dbuf_whichblock Returns 0x0
10 -> dbuf_hold
10 -> dbuf_hold_level
10 -> dbuf_hold_impl
10 -> dbuf_find
10 -> dbuf_hash
10 <- dbuf_hash Returns 0xd5cfa6755a977d40
10 <- dbuf_find Returns 0xffffff12fc87a788
10 <- dbuf_hold_impl Returns 0x0
10 <- dbuf_hold_level Returns 0xffffff12fc87a788
10 <- dbuf_hold Returns 0xffffff12fc87a788
10 -> dbuf_read
10 -> zrl_add_impl
10 <- zrl_add_impl Returns 0x0
10 -> dmu_zfetch
10 <- dmu_zfetch Returns 0x0
10 -> zrl_remove
10 <- zrl_remove Returns 0x0
10 <- dbuf_read Returns 0x0
10 -> dmu_buf_get_user
10 <- dmu_buf_get_user Returns 0xffffff12fd923880
10 -> zrl_add_impl
10 <- zrl_add_impl Returns 0x0
10 -> zrl_remove
10 <- zrl_remove Returns 0x0
10 -> dbuf_rele
10 -> dbuf_rele_and_unlock
10 <- dbuf_rele_and_unlock Returns 0x6
10 <- dbuf_rele Returns 0x6
10 <- dnode_hold_impl Returns 0x0
10 <- dnode_hold Returns 0x0
10 -> kmem_zalloc
10 -> kmem_cache_alloc
10 <- kmem_cache_alloc Returns 0xffffff12ebf82e68
10 <- kmem_zalloc Returns 0xffffff12ebf82e68
10 -> list_insert_tail
10 <- list_insert_tail Returns 0xffffff11758eb850
10 <- dmu_tx_hold_object_impl Returns 0xffffff12ebf82e68
10 -> dmu_tx_count_write
10 -> zfs_zone_io_throttle
10 -> gethrtime
10 -> tsc_gethrtime_delta
10 <- tsc_gethrtime_delta Returns 0x17d756147b889
10 <- gethrtime Returns 0x17d756147b889
10 -> add_iop
10 -> add_zone_iop
10 -> compute_historical_zone_cnt
10 <- compute_historical_zone_cnt Returns 0x1b2776
10 <- add_zone_iop Returns 0x1b2776
10 <- add_iop Returns 0x1b2776
10 <- zfs_zone_io_throttle Returns 0x3d090
10 -> zio_root
10 -> zio_null
10 -> zio_create
10 -> kmem_cache_alloc
10 <- kmem_cache_alloc Returns 0xffffff11c9cb1550
10 -> mutex_init
10 <- mutex_init Returns 0xffffff11c9cb1550
10 -> cv_init
10 <- cv_init Returns 0xffffff11c9cb1550
10 -> list_create
10 <- list_create Returns 0xffffff11c9cb1650
10 -> list_create
10 <- list_create Returns 0xffffff11c9cb1670
10 -> zfs_zone_zio_init
10 <- zfs_zone_zio_init Returns 0x0
10 <- zio_create Returns 0xffffff11c9cb1550
10 <- zio_null Returns 0xffffff11c9cb1550
10 <- zio_root Returns 0xffffff11c9cb1550
10 -> zio_wait
10 -> zio_execute
10 -> zio_ready
10 -> zio_wait_for_children
10 <- zio_wait_for_children Returns 0x0
10 -> zio_wait_for_children
10 <- zio_wait_for_children Returns 0x0
10 -> zio_walk_parents
10 -> list_head
10 <- list_head Returns 0x0
10 <- zio_walk_parents Returns 0x0
10 <- zio_ready Returns 0x100
10 -> zio_done
10 -> zio_wait_for_children
10 <- zio_wait_for_children Returns 0x0
10 -> zio_wait_for_children
10 <- zio_wait_for_children Returns 0x0
10 -> zio_wait_for_children
10 <- zio_wait_for_children Returns 0x0
10 -> zio_wait_for_children
10 <- zio_wait_for_children Returns 0x0
10 -> zio_inherit_child_errors
10 <- zio_inherit_child_errors Returns 0x0
10 -> zio_inherit_child_errors
10 <- zio_inherit_child_errors Returns 0x0
10 -> zio_inherit_child_errors
10 <- zio_inherit_child_errors Returns 0x0
10 -> zio_pop_transforms
10 <- zio_pop_transforms Returns 0x0
10 -> vdev_stat_update
10 <- vdev_stat_update Returns 0x0
10 -> zio_inherit_child_errors
10 <- zio_inherit_child_errors Returns 0x0
10 -> zio_gang_tree_free
10 <- zio_gang_tree_free Returns 0x0
10 -> zio_walk_parents
10 -> list_head
10 <- list_head Returns 0x0
10 <- zio_walk_parents Returns 0x0
10 -> cv_broadcast
10 <- cv_broadcast Returns 0x0
10 <- zio_done Returns 0x101
10 <- zio_execute Returns 0x101
10 -> zio_destroy
10 -> list_destroy
10 <- list_destroy Returns 0x0
10 -> list_destroy
10 <- list_destroy Returns 0x0
10 -> mutex_destroy
10 <- mutex_destroy Returns 0xffffff007bd97c46
10 -> cv_destroy
10 <- cv_destroy Returns 0xffffff007bd97c46
10 -> kmem_cache_free
10 <- kmem_cache_free Returns 0xffffff11cee8d600
10 <- zio_destroy Returns 0xffffff11cee8d600
10 <- zio_wait Returns 0x0
10 <- dmu_tx_count_write Returns 0xfffffffe
10 -> dmu_tx_count_dnode
10 -> dsl_dataset_block_freeable
10 -> dsl_dataset_prev_snap_txg
10 -> spa_last_synced_txg
10 <- spa_last_synced_txg Returns 0x4a16bf
10 <- dsl_dataset_prev_snap_txg Returns 0x1
10 -> dsl_dataset_get_spa
10 <- dsl_dataset_get_spa Returns 0xffffff1159b6d000
10 -> ddt_prefetch
10 <- ddt_prefetch Returns 0xffffff1159b6d000
10 <- dsl_dataset_block_freeable Returns 0x1
10 <- dmu_tx_count_dnode Returns 0x1
10 <- dmu_tx_hold_write Returns 0x1
10 -> dmu_tx_assign
10 -> dmu_tx_try_assign
10 -> spa_suspended
10 <- spa_suspended Returns 0x0
10 -> dsl_pool_need_dirty_delay
10 <- dsl_pool_need_dirty_delay Returns 0x0
10 -> txg_hold_open
10 <- txg_hold_open Returns 0x4a16c1
10 -> list_head
10 <- list_head Returns 0xffffff12ebf82e68
10 -> list_next
10 <- list_next Returns 0x0
10 -> dsl_dataset_prev_snap_txg
10 -> spa_last_synced_txg
10 <- spa_last_synced_txg Returns 0x4a16bf
10 <- dsl_dataset_prev_snap_txg Returns 0x1
10 -> spa_get_asize
10 <- spa_get_asize Returns 0x8a0000
10 -> spa_get_asize
10 <- spa_get_asize Returns 0x2a0000
10 -> spa_get_asize
10 <- spa_get_asize Returns 0x2a0000
10 -> dsl_dir_tempreserve_space
10 -> kmem_alloc
10 -> kmem_cache_alloc
10 <- kmem_cache_alloc Returns 0xffffff11aa3d6e48
10 <- kmem_alloc Returns 0xffffff11aa3d6e48
10 -> list_create
10 <- list_create Returns 0xffffff11aa3d6e58
10 -> arc_tempreserve_space
10 -> arc_memory_throttle
10 <- arc_memory_throttle Returns 0x0
10 <- arc_tempreserve_space Returns 0x0
10 -> kmem_zalloc
10 -> kmem_cache_alloc
10 <- kmem_cache_alloc Returns 0xffffff11b8410bf8
10 <- kmem_zalloc Returns 0xffffff11b8410bf8
10 -> list_insert_tail
10 <- list_insert_tail Returns 0xffffff11aa3d6e58
10 -> dsl_dir_tempreserve_impl
10 -> dsl_dir_space_towrite
10 <- dsl_dir_space_towrite Returns 0x660000
10 -> dsl_dataset_check_quota
10 <- dsl_dataset_check_quota Returns 0x5b
10 <- dsl_dir_tempreserve_impl Returns 0x5b
10 -> dsl_dir_tempreserve_clear
10 -> list_head
10 <- list_head Returns 0xffffff11b8410bf8
10 -> arc_tempreserve_clear
10 <- arc_tempreserve_clear Returns 0xffffff11b8410bf8
10 -> list_remove
10 <- list_remove Returns 0xffffff11aa3d6e58
10 -> kmem_free
10 -> kmem_cache_free
10 <- kmem_cache_free Returns 0xffffff11f9612d80
10 <- kmem_free Returns 0xffffff11f9612d80
10 -> list_head
10 <- list_head Returns 0x0
10 -> kmem_free
10 -> kmem_cache_free
10 <- kmem_cache_free Returns 0xffffff11f9612d80
10 <- kmem_free Returns 0xffffff11f9612d80
10 <- dsl_dir_tempreserve_clear Returns 0xffffff11f9612d80
10 <- dsl_dir_tempreserve_space Returns 0x5b
10 <- dmu_tx_try_assign Returns 0x5b
10 -> dmu_tx_unassign
10 -> txg_rele_to_quiesce
10 <- txg_rele_to_quiesce Returns 0x5b
10 -> list_head
10 <- list_head Returns 0xffffff12ebf82e68
10 -> cv_broadcast
10 <- cv_broadcast Returns 0x0
10 -> list_next
10 <- list_next Returns 0x0
10 -> txg_rele_to_sync
10 -> cv_broadcast
10 <- cv_broadcast Returns 0x0
10 <- txg_rele_to_sync Returns 0x0
10 <- dmu_tx_unassign Returns 0x4a16c1
10 -> dmu_tx_wait
10 -> spa_suspended
10 <- spa_suspended Returns 0x0
10 -> txg_wait_open
10 -> cv_broadcast
10 -> disp_lock_enter
10 -> lock_set_spl
10 -> splr
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- splr Returns 0x0
10 <- lock_set_spl Returns 0x0
10 <- disp_lock_enter Returns 0x0
10 -> sleepq_wakeall_chan
10 -> sleepq_unlink
10 <- sleepq_unlink Returns 0xffffff007ad06c40
10 -> setbackdq
10 -> ddi_get_lbolt
10 -> lbolt_event_driven
10 -> gethrtime
10 -> tsc_gethrtime_delta
10 <- tsc_gethrtime_delta Returns 0x17d756149a713
10 <- gethrtime Returns 0x17d756149a713
10 <- lbolt_event_driven Returns 0x27ff982
10 <- ddi_get_lbolt Returns 0x27ff982
10 -> cmt_balance
10 -> bitset_in_set
10 <- bitset_in_set Returns 0x1
10 -> cmt_should_migrate
10 <- cmt_should_migrate Returns 0x1
10 <- cmt_balance Returns 0xffffff115afa8000
10 -> gethrtime_unscaled
10 -> tsc_gethrtimeunscaled_delta
10 -> tsc_gethrtimeunscaled
10 <- tsc_gethrtimeunscaled Returns 0x4c49df1fe4dea
10 <- tsc_gethrtimeunscaled_delta Returns 0x4c4a675331382
10 <- gethrtime_unscaled Returns 0x4c4a675331382
10 -> cpu_update_pct
10 -> scalehrtime
10 -> tsc_scalehrtime
10 <- tsc_scalehrtime Returns 0x14a39b
10 <- scalehrtime Returns 0x14a39b
10 -> cpu_decay
10 -> exp_x
10 <- exp_x Returns 0x7ffdefa4
10 <- cpu_decay Returns 0x0
10 <- cpu_update_pct Returns 0x0
10 -> disp_lock_enter_high
10 <- disp_lock_enter_high Returns 0x0
10 -> cpu_resched
10 <- cpu_resched Returns 0x0
10 -> cstate_wakeup
10 -> bitset_in_set
10 <- bitset_in_set Returns 0x1
10 -> bitset_atomic_del
10 <- bitset_atomic_del Returns 0xffffffffffffffbf
10 -> poke_cpu
10 -> send_dirint
10 -> apic_send_ipi
10 -> local_apic_read
10 <- local_apic_read Returns 0xf1
10 -> local_apic_write_int_cmd
10 <- local_apic_write_int_cmd Returns
0xffffff10f767f000
10 <- apic_send_ipi Returns 0xffffff10f767f000
10 <- send_dirint Returns 0xffffff10f767f000
10 <- poke_cpu Returns 0xffffff10f767f000
10 <- cstate_wakeup Returns 0xffffff10f767f000
10 <- setbackdq Returns 0xffffff10f767f000
10 -> disp_lock_exit_high
10 <- disp_lock_exit_high Returns 0x0
10 <- sleepq_wakeall_chan Returns 0x0
10 -> disp_lock_exit
10 -> do_splx
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- do_splx Returns 0xb
10 <- disp_lock_exit Returns 0xb
10 <- cv_broadcast Returns 0xb
10 -> cv_wait
10 -> thread_lock
10 -> splr
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- splr Returns 0x0
10 <- thread_lock Returns 0xffffff007bd97c40
10 -> cv_block
10 -> sys_nullsys
10 <- sys_nullsys Returns 0xfffffffffbc9f5c8
10 -> disp_lock_enter_high
10 <- disp_lock_enter_high Returns 0xffffff1159
10 -> disp_lock_exit_high
10 <- disp_lock_exit_high Returns 0x0
10 -> sleepq_insert
10 <- sleepq_insert Returns 0x0
10 <- cv_block Returns 0x0
10 -> disp_lock_exit_nopreempt
10 -> do_splx
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- do_splx Returns 0xb
10 <- disp_lock_exit_nopreempt Returns 0xb
10 -> swtch
10 -> disp
10 -> disp_lock_enter
10 -> lock_set_spl
10 -> splr
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- splr Returns 0x0
10 <- lock_set_spl Returns 0x0
10 <- disp_lock_enter Returns 0x0
10 -> disp_lock_exit
10 -> do_splx
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- do_splx Returns 0xb
10 <- disp_lock_exit Returns 0xb
10 -> disp_getwork
10 <- disp_getwork Returns 0x0
10 -> splr
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- splr Returns 0x0
10 <- disp Returns 0xffffff007b1efc40
10 -> gethrtime_unscaled
10 -> tsc_gethrtimeunscaled_delta
10 -> tsc_gethrtimeunscaled
10 <- tsc_gethrtimeunscaled Returns 0x4c49df2019534
10 <- tsc_gethrtimeunscaled_delta Returns 0x4c4a675365acc
10 <- gethrtime_unscaled Returns 0x4c4a675365acc
10 -> pg_ev_thread_swtch
10 -> cmt_ev_thread_swtch
10 <- cmt_ev_thread_swtch Returns 0xffffff007b1efc40
10 -> cmt_ev_thread_swtch
10 <- cmt_ev_thread_swtch Returns 0xffffff007b1efc40
10 -> cmt_ev_thread_swtch
10 <- cmt_ev_thread_swtch Returns 0xffffff007b1efc40
10 -> cmt_ev_thread_swtch_pwr
10 -> cpupm_utilization_event
10 <- cpupm_utilization_event Returns 0x1
10 <- cmt_ev_thread_swtch_pwr Returns 0x1
10 -> cmt_ev_thread_swtch
10 <- cmt_ev_thread_swtch Returns 0xffffff007b1efc40
10 <- pg_ev_thread_swtch Returns 0xffffff007b1efc40
10 -> restore_mstate
10 <- restore_mstate Returns 0xffffff007b1efc40
10 -> ddi_get_lbolt
10 -> lbolt_event_driven
10 -> gethrtime
10 -> tsc_gethrtime_delta
10 <- tsc_gethrtime_delta Returns 0x17d75614b0496
10 <- gethrtime Returns 0x17d75614b0496
10 <- lbolt_event_driven Returns 0x27ff982
10 <- ddi_get_lbolt Returns 0x27ff982
10 -> resume
10 -> do_splx
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- do_splx Returns 0xb
10 <- resume Returns 0xb
10 <- swtch Returns 0xb
10 <- cv_wait Returns 0x0
10 <- txg_wait_open Returns 0x0
10 <- dmu_tx_wait Returns 0x0
10 -> dmu_tx_try_assign
10 -> spa_suspended
10 <- spa_suspended Returns 0x0
10 -> dsl_pool_need_dirty_delay
10 <- dsl_pool_need_dirty_delay Returns 0x0
10 -> txg_hold_open
10 <- txg_hold_open Returns 0x4a16c2
10 -> list_head
10 <- list_head Returns 0xffffff12ebf82e68
10 -> list_next
10 <- list_next Returns 0x0
10 -> dsl_dataset_prev_snap_txg
10 -> spa_last_synced_txg
10 <- spa_last_synced_txg Returns 0x4a16bf
10 <- dsl_dataset_prev_snap_txg Returns 0x1
10 -> spa_get_asize
10 <- spa_get_asize Returns 0x8a0000
10 -> spa_get_asize
10 <- spa_get_asize Returns 0x2a0000
10 -> spa_get_asize
10 <- spa_get_asize Returns 0x2a0000
10 -> dsl_dir_tempreserve_space
10 -> kmem_alloc
10 -> kmem_cache_alloc
10 <- kmem_cache_alloc Returns 0xffffff11aa3d6e48
10 <- kmem_alloc Returns 0xffffff11aa3d6e48
10 -> list_create
10 <- list_create Returns 0xffffff11aa3d6e58
10 -> arc_tempreserve_space
10 -> arc_memory_throttle
10 <- arc_memory_throttle Returns 0x0
10 <- arc_tempreserve_space Returns 0x0
10 -> kmem_zalloc
10 -> kmem_cache_alloc
10 <- kmem_cache_alloc Returns 0xffffff11b8410bf8
10 <- kmem_zalloc Returns 0xffffff11b8410bf8
10 -> list_insert_tail
10 <- list_insert_tail Returns 0xffffff11aa3d6e58
10 -> dsl_dir_tempreserve_impl
10 -> dsl_dir_space_towrite
10 <- dsl_dir_space_towrite Returns 0x660000
10 -> dsl_dataset_check_quota
10 <- dsl_dataset_check_quota Returns 0x5b
10 <- dsl_dir_tempreserve_impl Returns 0x5b
10 -> dsl_dir_tempreserve_clear
10 -> list_head
10 <- list_head Returns 0xffffff11b8410bf8
10 -> arc_tempreserve_clear
10 <- arc_tempreserve_clear Returns 0xffffff11b8410bf8
10 -> list_remove
10 <- list_remove Returns 0xffffff11aa3d6e58
10 -> kmem_free
10 -> kmem_cache_free
10 <- kmem_cache_free Returns 0xffffff11f9612d80
10 <- kmem_free Returns 0xffffff11f9612d80
10 -> list_head
10 <- list_head Returns 0x0
10 -> kmem_free
10 -> kmem_cache_free
10 <- kmem_cache_free Returns 0xffffff11f9612d80
10 <- kmem_free Returns 0xffffff11f9612d80
10 <- dsl_dir_tempreserve_clear Returns 0xffffff11f9612d80
10 <- dsl_dir_tempreserve_space Returns 0x5b
10 <- dmu_tx_try_assign Returns 0x5b
10 -> dmu_tx_unassign
10 -> txg_rele_to_quiesce
10 <- txg_rele_to_quiesce Returns 0x5b
10 -> list_head
10 <- list_head Returns 0xffffff12ebf82e68
10 -> cv_broadcast
10 <- cv_broadcast Returns 0x0
10 -> list_next
10 <- list_next Returns 0x0
10 -> txg_rele_to_sync
10 -> cv_broadcast
10 <- cv_broadcast Returns 0x0
10 <- txg_rele_to_sync Returns 0x0
10 <- dmu_tx_unassign Returns 0x4a16c2
10 -> dmu_tx_wait
10 -> spa_suspended
10 <- spa_suspended Returns 0x0
10 -> txg_wait_open
10 -> cv_broadcast
10 -> disp_lock_enter
10 -> lock_set_spl
10 -> splr
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- splr Returns 0x0
10 <- lock_set_spl Returns 0x0
10 <- disp_lock_enter Returns 0x0
10 -> sleepq_wakeall_chan
10 -> sleepq_unlink
10 <- sleepq_unlink Returns 0xffffff007ad06c40
10 -> setbackdq
10 -> ddi_get_lbolt
10 -> lbolt_event_driven
10 -> gethrtime
10 -> tsc_gethrtime_delta
10 <- tsc_gethrtime_delta Returns 0x17d75616f3f4d
10 <- gethrtime Returns 0x17d75616f3f4d
10 <- lbolt_event_driven Returns 0x27ff982
10 <- ddi_get_lbolt Returns 0x27ff982
10 -> cmt_balance
10 -> bitset_in_set
10 <- bitset_in_set Returns 0x1
10 -> cmt_should_migrate
10 <- cmt_should_migrate Returns 0x0
10 -> bitset_in_set
10 <- bitset_in_set Returns 0x1
10 -> cmt_should_migrate
10 <- cmt_should_migrate Returns 0x0
10 <- cmt_balance Returns 0xffffff115afa8000
10 -> gethrtime_unscaled
10 -> tsc_gethrtimeunscaled_delta
10 -> tsc_gethrtimeunscaled
10 <- tsc_gethrtimeunscaled Returns 0x4c49df276abcb
10 <- tsc_gethrtimeunscaled_delta Returns 0x4c4a675ab7163
10 <- gethrtime_unscaled Returns 0x4c4a675ab7163
10 -> cpu_update_pct
10 -> scalehrtime
10 -> tsc_scalehrtime
10 <- tsc_scalehrtime Returns 0x52530
10 <- scalehrtime Returns 0x52530
10 -> cpu_decay
10 -> exp_x
10 <- exp_x Returns 0x7fff7c48
10 <- cpu_decay Returns 0x0
10 <- cpu_update_pct Returns 0x0
10 -> disp_lock_enter_high
10 <- disp_lock_enter_high Returns 0x0
10 -> cpu_resched
10 <- cpu_resched Returns 0x0
10 -> cstate_wakeup
10 -> bitset_in_set
10 <- bitset_in_set Returns 0x1
10 -> bitset_atomic_del
10 <- bitset_atomic_del Returns 0xffffffffffffffbf
10 -> poke_cpu
10 -> send_dirint
10 -> apic_send_ipi
10 -> local_apic_read
10 <- local_apic_read Returns 0xf1
10 -> local_apic_write_int_cmd
10 <- local_apic_write_int_cmd Returns
0xffffff10f767f000
10 <- apic_send_ipi Returns 0xffffff10f767f000
10 <- send_dirint Returns 0xffffff10f767f000
10 <- poke_cpu Returns 0xffffff10f767f000
10 <- cstate_wakeup Returns 0xffffff10f767f000
10 <- setbackdq Returns 0xffffff10f767f000
10 -> disp_lock_exit_high
10 <- disp_lock_exit_high Returns 0x0
10 <- sleepq_wakeall_chan Returns 0x0
10 -> disp_lock_exit
10 -> do_splx
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- do_splx Returns 0xb
10 <- disp_lock_exit Returns 0xb
10 <- cv_broadcast Returns 0xb
10 -> cv_wait
10 -> thread_lock
10 -> splr
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- splr Returns 0x0
10 <- thread_lock Returns 0xffffff007bd97c40
10 -> cv_block
10 -> sys_nullsys
10 <- sys_nullsys Returns 0xfffffffffbc9f5c8
10 -> disp_lock_enter_high
10 <- disp_lock_enter_high Returns 0xffffff1159
10 -> disp_lock_exit_high
10 <- disp_lock_exit_high Returns 0x0
10 -> sleepq_insert
10 <- sleepq_insert Returns 0x0
10 <- cv_block Returns 0x0
10 -> disp_lock_exit_nopreempt
10 -> do_splx
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- do_splx Returns 0xb
10 <- disp_lock_exit_nopreempt Returns 0xb
10 -> swtch
10 -> disp
10 -> disp_lock_enter
10 -> lock_set_spl
10 -> splr
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- splr Returns 0x0
10 <- lock_set_spl Returns 0x0
10 <- disp_lock_enter Returns 0x0
10 -> disp_lock_exit
10 -> do_splx
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- do_splx Returns 0xb
10 <- disp_lock_exit Returns 0xb
10 -> disp_getwork
10 <- disp_getwork Returns 0x0
10 -> splr
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- splr Returns 0x0
10 <- disp Returns 0xffffff007b1efc40
10 -> gethrtime_unscaled
10 -> tsc_gethrtimeunscaled_delta
10 -> tsc_gethrtimeunscaled
10 <- tsc_gethrtimeunscaled Returns 0x4c49df27a6459
10 <- tsc_gethrtimeunscaled_delta Returns 0x4c4a675af29f1
10 <- gethrtime_unscaled Returns 0x4c4a675af29f1
10 -> pg_ev_thread_swtch
10 -> cmt_ev_thread_swtch
10 <- cmt_ev_thread_swtch Returns 0xffffff007b1efc40
10 -> cmt_ev_thread_swtch
10 <- cmt_ev_thread_swtch Returns 0xffffff007b1efc40
10 -> cmt_ev_thread_swtch
10 <- cmt_ev_thread_swtch Returns 0xffffff007b1efc40
10 -> cmt_ev_thread_swtch_pwr
10 -> cpupm_utilization_event
10 <- cpupm_utilization_event Returns 0xffffff115b22f530
10 <- cmt_ev_thread_swtch_pwr Returns 0xffffff115b22f530
10 -> cmt_ev_thread_swtch
10 <- cmt_ev_thread_swtch Returns 0xffffff007b1efc40
10 <- pg_ev_thread_swtch Returns 0xffffff007b1efc40
10 -> restore_mstate
10 <- restore_mstate Returns 0xffffff007b1efc40
10 -> ddi_get_lbolt
10 -> lbolt_event_driven
10 -> gethrtime
10 -> tsc_gethrtime_delta
10 <- tsc_gethrtime_delta Returns 0x17d756170c273
10 <- gethrtime Returns 0x17d756170c273
10 <- lbolt_event_driven Returns 0x27ff982
10 <- ddi_get_lbolt Returns 0x27ff982
10 -> resume
10 -> do_splx
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- do_splx Returns 0xb
10 <- resume Returns 0xb
10 <- swtch Returns 0xb
10 <- cv_wait Returns 0x0
10 <- txg_wait_open Returns 0x0
10 <- dmu_tx_wait Returns 0x0
10 -> dmu_tx_try_assign
10 -> spa_suspended
10 <- spa_suspended Returns 0x0
10 -> dsl_pool_need_dirty_delay
10 <- dsl_pool_need_dirty_delay Returns 0x0
10 -> txg_hold_open
10 <- txg_hold_open Returns 0x4a16c3
10 -> list_head
10 <- list_head Returns 0xffffff12ebf82e68
10 -> list_next
10 <- list_next Returns 0x0
10 -> dsl_dataset_prev_snap_txg
10 -> spa_last_synced_txg
10 <- spa_last_synced_txg Returns 0x4a16c0
10 <- dsl_dataset_prev_snap_txg Returns 0x1
10 -> spa_get_asize
10 <- spa_get_asize Returns 0x8a0000
10 -> spa_get_asize
10 <- spa_get_asize Returns 0x2a0000
10 -> spa_get_asize
10 <- spa_get_asize Returns 0x2a0000
10 -> dsl_dir_tempreserve_space
10 -> kmem_alloc
10 -> kmem_cache_alloc
10 <- kmem_cache_alloc Returns 0xffffff11aa3d6e48
10 <- kmem_alloc Returns 0xffffff11aa3d6e48
10 -> list_create
10 <- list_create Returns 0xffffff11aa3d6e58
10 -> arc_tempreserve_space
10 -> arc_memory_throttle
10 <- arc_memory_throttle Returns 0x0
10 <- arc_tempreserve_space Returns 0x0
10 -> kmem_zalloc
10 -> kmem_cache_alloc
10 <- kmem_cache_alloc Returns 0xffffff11b8410bf8
10 <- kmem_zalloc Returns 0xffffff11b8410bf8
10 -> list_insert_tail
10 <- list_insert_tail Returns 0xffffff11aa3d6e58
10 -> dsl_dir_tempreserve_impl
10 -> dsl_dir_space_towrite
10 <- dsl_dir_space_towrite Returns 0x660000
10 -> dsl_dataset_check_quota
10 <- dsl_dataset_check_quota Returns 0x5b
10 <- dsl_dir_tempreserve_impl Returns 0x5b
10 -> dsl_dir_tempreserve_clear
10 -> list_head
10 <- list_head Returns 0xffffff11b8410bf8
10 -> arc_tempreserve_clear
10 <- arc_tempreserve_clear Returns 0xffffff11b8410bf8
10 -> list_remove
10 <- list_remove Returns 0xffffff11aa3d6e58
10 -> kmem_free
10 -> kmem_cache_free
10 <- kmem_cache_free Returns 0xffffff11f9612d80
10 <- kmem_free Returns 0xffffff11f9612d80
10 -> list_head
10 <- list_head Returns 0x0
10 -> kmem_free
10 -> kmem_cache_free
10 <- kmem_cache_free Returns 0xffffff11f9612d80
10 <- kmem_free Returns 0xffffff11f9612d80
10 <- dsl_dir_tempreserve_clear Returns 0xffffff11f9612d80
10 <- dsl_dir_tempreserve_space Returns 0x5b
10 <- dmu_tx_try_assign Returns 0x5b
10 -> dmu_tx_unassign
10 -> txg_rele_to_quiesce
10 <- txg_rele_to_quiesce Returns 0x5b
10 -> list_head
10 <- list_head Returns 0xffffff12ebf82e68
10 -> cv_broadcast
10 <- cv_broadcast Returns 0x0
10 -> list_next
10 <- list_next Returns 0x0
10 -> txg_rele_to_sync
10 -> cv_broadcast
10 <- cv_broadcast Returns 0x0
10 <- txg_rele_to_sync Returns 0x0
10 <- dmu_tx_unassign Returns 0x4a16c3
10 -> dmu_tx_wait
10 -> spa_suspended
10 <- spa_suspended Returns 0x0
10 -> txg_wait_open
10 -> cv_broadcast
10 -> disp_lock_enter
10 -> lock_set_spl
10 -> splr
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- splr Returns 0x0
10 <- lock_set_spl Returns 0x0
10 <- disp_lock_enter Returns 0x0
10 -> sleepq_wakeall_chan
10 -> sleepq_unlink
10 <- sleepq_unlink Returns 0xffffff007ad06c40
10 -> setbackdq
10 -> ddi_get_lbolt
10 -> lbolt_event_driven
10 -> gethrtime
10 -> tsc_gethrtime_delta
10 <- tsc_gethrtime_delta Returns 0x17d75619fc3c7
10 <- gethrtime Returns 0x17d75619fc3c7
10 <- lbolt_event_driven Returns 0x27ff982
10 <- ddi_get_lbolt Returns 0x27ff982
10 -> cmt_balance
10 -> bitset_in_set
10 <- bitset_in_set Returns 0x1
10 -> cmt_should_migrate
10 <- cmt_should_migrate Returns 0x0
10 -> bitset_in_set
10 <- bitset_in_set Returns 0x1
10 -> cmt_should_migrate
10 <- cmt_should_migrate Returns 0x0
10 <- cmt_balance Returns 0xffffff115afa8000
10 -> gethrtime_unscaled
10 -> tsc_gethrtimeunscaled_delta
10 -> tsc_gethrtimeunscaled
10 <- tsc_gethrtimeunscaled Returns 0x4c49df311ed1c
10 <- tsc_gethrtimeunscaled_delta Returns 0x4c4a67646b2b4
10 <- gethrtime_unscaled Returns 0x4c4a67646b2b4
10 -> cpu_update_pct
10 -> scalehrtime
10 -> tsc_scalehrtime
10 <- tsc_scalehrtime Returns 0x49780
10 <- scalehrtime Returns 0x49780
10 -> cpu_decay
10 -> exp_x
10 <- exp_x Returns 0x7fff8a74
10 <- cpu_decay Returns 0x0
10 <- cpu_update_pct Returns 0x0
10 -> disp_lock_enter_high
10 <- disp_lock_enter_high Returns 0x0
10 -> cpu_resched
10 <- cpu_resched Returns 0x0
10 -> cstate_wakeup
10 -> bitset_in_set
10 <- bitset_in_set Returns 0x1
10 -> bitset_atomic_del
10 <- bitset_atomic_del Returns 0xffffffffffffffbf
10 -> poke_cpu
10 -> send_dirint
10 -> apic_send_ipi
10 -> local_apic_read
10 <- local_apic_read Returns 0xf1
10 -> local_apic_write_int_cmd
10 <- local_apic_write_int_cmd Returns
0xffffff10f767f000
10 <- apic_send_ipi Returns 0xffffff10f767f000
10 <- send_dirint Returns 0xffffff10f767f000
10 <- poke_cpu Returns 0xffffff10f767f000
10 <- cstate_wakeup Returns 0xffffff10f767f000
10 <- setbackdq Returns 0xffffff10f767f000
10 -> disp_lock_exit_high
10 <- disp_lock_exit_high Returns 0x0
10 <- sleepq_wakeall_chan Returns 0x0
10 -> disp_lock_exit
10 -> do_splx
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- do_splx Returns 0xb
10 <- disp_lock_exit Returns 0xb
10 <- cv_broadcast Returns 0xb
10 -> cv_wait
10 -> thread_lock
10 -> splr
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- splr Returns 0x0
10 <- thread_lock Returns 0xffffff007bd97c40
10 -> cv_block
10 -> sys_nullsys
10 <- sys_nullsys Returns 0xfffffffffbc9f5c8
10 -> disp_lock_enter_high
10 <- disp_lock_enter_high Returns 0xffffff1159
10 -> disp_lock_exit_high
10 <- disp_lock_exit_high Returns 0x0
10 -> sleepq_insert
10 <- sleepq_insert Returns 0x0
10 <- cv_block Returns 0x0
10 -> disp_lock_exit_nopreempt
10 -> do_splx
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- do_splx Returns 0xb
10 <- disp_lock_exit_nopreempt Returns 0xb
10 -> swtch
10 -> disp
10 -> disp_lock_enter
10 -> lock_set_spl
10 -> splr
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- splr Returns 0x0
10 <- lock_set_spl Returns 0x0
10 <- disp_lock_enter Returns 0x0
10 -> disp_lock_exit
10 -> do_splx
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- do_splx Returns 0xb
10 <- disp_lock_exit Returns 0xb
10 -> disp_getwork
10 <- disp_getwork Returns 0x0
10 -> splr
10 -> apix_setspl
10 -> psm_get_cpu_id
10 <- psm_get_cpu_id Returns 0xa
10 <- apix_setspl Returns 0xffffff113bbd3600
10 -> apix_get_pending_spl
10 <- apix_get_pending_spl Returns 0x0
10 <- splr Returns 0x0
10 <- disp Returns 0xffffff007b1efc40
10 -> gethrtime_unscaled
10 -> tsc_gethrtimeunscaled_delta
10 -> tsc_gethrtimeunscaled
10 <- tsc_gethrtimeunscaled Returns 0x4c49df315a4d6
10 <- tsc_gethrtimeunscaled_delta Returns 0x4c4a6764a6a6e
10 <- gethrtime_unscaled Returns 0x4c4a6764a6a6e
10 -> pg_ev_thread_swtch
10 -> cmt_ev_thread_swtch
10 <- cmt_ev_thread_swtch Returns 0xffffff007b1efc40
10 -> cmt_ev_thread_swtch
10 <- cmt_ev_thread_swtch Returns 0xffffff007b1efc40
10 -> cmt_ev_thread_swtch
10 <- cmt_ev_thread_swtch Returns 0xffffff007b1efc40
10 -> cmt_ev_thread_swtch_pwr
10 -> cpupm_utilization_event
10 <- cpupm_utilization_event Returns 0xffffff115b22f530
10 <- cmt_ev_thread_swtch_pwr Returns 0xffffff115b22f530
10 -> cmt_ev_thread_swtch
10 <- cmt_ev_thread_swtch Returns 0xffffff007b1efc40
10 <- pg_ev_thread_swtch Returns 0xffffff007b1efc40
10 -> restore_mstate
10 <- restore_mstate Returns 0xffffff007b1efc40
10 -> ddi_get_lbolt
10 -> lbolt_event_driven
10 -> gethrtime
10 -> tsc_gethrtime_delta
10 <- tsc_gethrtime_delta Returns 0x17d7561a1469e
10 <- gethrtime Returns 0x17d7561a1469e
10 <- lbolt_event_driven Returns 0x27ff982
10 <- ddi_get_lbolt Returns 0x27ff982
10 -> resume
_______________________________________________ developer mailing list [email protected] http://lists.open-zfs.org/mailman/listinfo/developer
