LCOV - code coverage report
Current view:
top level
-
spdk/lib/blob
- blobstore.c
(
source
/ functions)
Hit
Total
Coverage
Test:
Combined
Lines:
3747
4615
81.2 %
Date:
2024-07-10 11:15:48
Functions:
306
326
93.9 %
Legend:
Lines:
hit
not hit
| Branches:
+
taken
-
not taken
#
not executed
Branches:
1794
2914
61.6 %
Function Name
Hit count
blob_esnap_channel_tree_RB_NFIND
0
blob_esnap_channel_tree_RB_PREV
0
blob_esnap_channel_tree_RB_REINSERT
0
blob_esnap_channel_tree_RB_REMOVE_COLOR
0
bs_delete_enomem_close_cpl
0
bs_dump_finish
0
bs_dump_print_extent_table
0
bs_dump_print_md_page
0
bs_dump_print_type_bits
0
bs_dump_print_type_flags
0
bs_dump_print_xattr
0
bs_dump_read_md_page
0
bs_dump_read_md_page_cpl
0
bs_dump_super_cpl
0
spdk_blob_tree_RB_NEXT
0
spdk_blob_tree_RB_NFIND
0
spdk_blob_tree_RB_PREV
0
spdk_blob_tree_RB_REINSERT
0
spdk_bs_dump
0
spdk_bs_set_bstype
0
spdk_blob_get_esnap_id
20
spdk_bs_get_bstype
23
bs_clone_snapshot_newblob_cleanup
24
bs_grow_load_super_cpl
24
bs_load_grow_continue
24
bs_load_grow_super_write_cpl
24
bs_load_grow_used_clusters_read_cpl
24
bs_load_grow_used_clusters_write_cpl
24
bs_load_try_to_grow
24
spdk_bs_grow
24
blob_get_xattr_names
25
spdk_blob_get_xattr_names
25
spdk_xattr_names_free
25
spdk_xattr_names_get_count
27
bs_grow_live_super_write_cpl
50
spdk_xattr_names_get_name
50
blob_frozen_destroy_esnap_channels
51
blob_frozen_set_back_bs_dev
51
blob_set_back_bs_dev_done
51
spdk_blob_set_esnap_bs_dev
51
delete_snapshot_esnap_channels_destroyed_cb
52
bs_update_corrupted_blob
72
delete_snapshot_cleanup_clone
72
bs_inflate_blob_set_parent_cpl
73
spdk_blob_get_next_allocated_io_unit
90
spdk_blob_get_next_unallocated_io_unit
90
bs_snapshot_copy_xattr
128
delete_snapshot_cleanup_snapshot
132
bs_destroy_trim_cpl
138
spdk_bs_destroy
138
spdk_bs_get_super
140
bs_delete_corrupted_blob
144
bs_delete_corrupted_blob_cpl
144
bs_delete_corrupted_close_cb
144
spdk_bs_inflate_blob
149
spdk_blob_get_esnap_bs_dev
154
blob_esnap_channel_tree_RB_NEXT
168
blob_find_io_unit
180
spdk_blob_get_num_io_units
182
spdk_blob_get_num_pages
183
bs_grow_live_done
194
bs_grow_live_load_super_cpl
194
spdk_bs_grow_live
194
spdk_bs_blob_decouple_parent
195
bs_examine_clone
216
spdk_blob_remove_xattr
217
bs_set_super_read_cpl
229
bs_set_super_write_cpl
229
spdk_bs_set_super
229
blob_esnap_channel_tree_RB_INSERT
256
blob_esnap_channel_tree_RB_INSERT_COLOR
256
blob_esnap_channel_tree_RB_REMOVE
256
bs_clone_newblob_create_cpl
285
bs_clone_newblob_open_cpl
285
bs_xattr_clone
285
delete_snapshot_unfreeze_cpl
295
bs_clone_origblob_open_cpl
311
spdk_bs_create_clone
311
bs_load_replay_extent_page_cpl
317
bs_load_replay_extent_pages
317
bs_inflate_blob_done
319
delete_snapshot_sync_snapshot_cpl
319
delete_snapshot_sync_clone_cpl
343
delete_snapshot_update_extent_pages_cpl
343
bs_inflate_blob
344
bs_inflate_blob_open_cpl
344
delete_snapshot_update_extent_pages
358
delete_snapshot_freeze_io_cb
367
delete_snapshot_sync_snapshot_xattr_cpl
367
spdk_bs_get_page_size
371
delete_snapshot_open_clone_cb
427
update_clone_on_snapshot_deletion
427
blob_close_esnap_done
576
blob_open_opts_copy
596
spdk_bs_open_blob_ext
626
bs_load_replay_md
641
bs_load_write_used_blobids_cpl
641
bs_load_write_used_clusters_cpl
641
bs_load_write_used_md
641
bs_load_write_used_pages_cpl
641
bs_recover
641
blob_load_esnap
649
blob_esnap_destroy_channels_done
659
delete_blob_cleanup_finish
667
blob_copy
696
blob_esnap_destroy_one_channel
707
spdk_bs_total_data_cluster_count
755
spdk_blob_io_writev
840
bs_mark_dirty_write
992
bs_mark_dirty_write_cpl
992
bs_snapshot_origblob_sync_cpl
1086
bs_snapshot_freeze_cpl
1110
bs_snapshot_newblob_sync_cpl
1110
bs_load_read_used_pages
1125
bs_load_used_blobids_cpl
1125
bs_load_used_clusters_cpl
1125
bs_load_used_pages_cpl
1125
bs_snapshot_newblob_open_cpl
1134
spdk_blob_is_degraded
1153
bs_snapshot_newblob_create_cpl
1158
bs_snapshot_swap_cluster_maps
1158
bs_xattr_snapshot
1158
blob_write_copy
1179
bs_snapshot_origblob_open_cpl
1219
spdk_bs_create_snapshot
1219
spdk_blob_set_read_only
1233
spdk_bs_free_io_channel
1298
spdk_blob_get_parent_snapshot
1354
blob_insert_new_ep_cb
1372
bs_load_replay_md_parse_page
1492
bs_parse_super
1742
bs_load_complete
1766
blob_back_bs_destroy
1772
blob_back_bs_destroy_esnap_done
1772
spdk_blob_get_clones
1774
bs_clone_snapshot_origblob_cleanup
1787
bs_snapshot_unfreeze_cpl
1787
bs_clone_snapshot_cleanup_finish
1874
blob_write_copy_cpl
1875
spdk_bs_iter_first
1905
spdk_blob_io_write_zeroes
2031
register_flag_blob
2079
register_flag_blob_esnap
2079
blob_remove_xattr
2232
spdk_bs_alloc_io_channel
2422
spdk_bs_get_cluster_size
2430
spdk_bs_free_cluster_count
2486
blob_esnap_destroy_bs_dev_channels
2527
spdk_blob_is_snapshot
2594
blob_load_snapshot_cpl
2598
bs_inflate_blob_touch_next
2627
spdk_blob_is_clone
2642
bs_init_persist_super_cpl
2848
bs_init_trim_cpl
2848
bs_opts_verify
2921
spdk_bs_init
2945
spdk_bs_create_blob
3010
blob_request_submit_op_split
3069
blob_set_thin_provision
3747
bs_unload_finish
3912
bs_unload_read_super_cpl
3912
bs_unload_write_super_cpl
3912
bs_unload_write_used_blobids_cpl
3912
bs_unload_write_used_clusters_cpl
3912
bs_unload_write_used_pages_cpl
3912
spdk_bs_unload
3976
spdk_blob_tree_RB_FIND
4056
rw_iov_split_next
4464
bs_write_used_blobids
4553
bs_write_used_clusters
4553
bs_write_used_md
4553
bs_write_super
5159
spdk_blob_io_readv
5640
bs_load_ctx_fail
5865
bs_cluster_needs_allocation
6314
bs_load_super_cpl
7607
spdk_bs_load
7729
bs_opts_copy
7781
spdk_blob_get_id
9198
blob_serialize_extent_rle
9318
bs_iter_close_cpl
9638
spdk_bs_iter_next
9638
spdk_bs_create_blob_ext
9713
blob_serialize_extents_rle
10182
bs_delete_close_cpl
10190
bs_delete_persist_cpl
10190
bs_blob_list_free
10504
bs_dev_destroy
10504
bs_free
10504
bs_register_md_thread
10504
bs_unregister_md_thread
10504
spdk_blob_tree_RB_MINMAX
10504
bs_delete_blob_finish
10562
bs_is_blob_deletable
10562
bs_alloc
10578
bs_delete_open_cpl
10622
spdk_bs_delete_blob
10622
bs_channel_create
10771
bs_channel_destroy
10771
blob_opts_copy
11132
bs_blob_list_remove
11300
bs_load_iter
11364
blob_get_snapshot_and_clone_entries
11776
bs_blob_list_add
11960
blob_esnap_channel_tree_RB_MINMAX
12069
blob_esnap_destroy_bs_channel
12069
spdk_blob_is_read_only
12185
bs_super_validate
12934
bs_create_blob_cpl
14140
bs_create_blob
14238
blob_set_clear_method
15276
spdk_blob_tree_RB_REMOVE_COLOR
16725
spdk_blob_get_xattr_value
17264
spdk_bs_opts_init
18096
bs_iter_cpl
21373
bs_release_md_page
21575
spdk_blob_opts_init
24962
blob_persist_extent_page_cpl
25698
blob_write_extent_page
25698
blob_write_extent_page_ready
25698
blob_insert_cluster_msg_cb
27507
blob_allocate_and_copy_cluster_cpl
27517
blob_insert_cluster_cpl
27517
blob_can_copy
27518
blob_insert_cluster_msg
27541
blob_insert_cluster_msg_cpl
27541
blob_insert_cluster_on_md_thread
27541
bs_get_snapshot_entry
28079
blob_esnap_channel_compare
28385
blob_set_xattrs
28404
blob_esnap_get_io_channel
28505
bs_claim_md_page
29075
blob_esnap_channel_tree_RB_FIND
29332
blob_parse_extent_page
33600
bs_batch_clear_dev
34797
bs_load_cur_extent_page_valid
35116
blob_xattrs_init
39200
spdk_blob_tree_RB_INSERT
41043
spdk_blob_tree_RB_INSERT_COLOR
41043
spdk_blob_tree_RB_REMOVE
41043
blob_load_backing_dev
41059
blob_update_clear_method
41095
blob_parse
41167
blob_load
41335
blob_load_final
41335
bs_open_blob_cpl
41335
blob_load_cpl
41940
spdk_blob_open_opts_init
41961
bs_load_replay_md_chain_cpl
42158
bs_load_cur_md_page_valid
42398
bs_load_replay_cur_md_page
42398
bs_load_replay_md_cpl
42398
spdk_blob_set_xattr
42597
blob_get_xattr_value
43403
blob_deserialize_xattr
44765
blob_close_cpl
44816
spdk_blob_close
44816
spdk_bs_open_blob
44862
bs_open_blob
45488
blob_set_xattr
47692
blob_alloc
55573
blob_free
55573
blob_request_submit_op_split_next
58906
blob_load_cpl_extents_cpl
65323
blob_parse_page
75348
blob_lookup
86710
xattrs_free
111146
bs_resize_freeze_cpl
116898
bs_resize_unfreeze_cpl
116898
spdk_blob_resize
116982
blob_unfreeze_io
118426
blob_freeze_io
118498
blob_execute_queued_io
118546
blob_io_sync
118618
blob_id_cmp
126463
bs_allocate_and_copy_cluster
132235
blob_resize
141254
blob_serialize_extent_page
150003
spdk_blob_sync_md
153276
blob_sync_md
156448
blob_sync_md_cpl
156448
blob_serialize_extent_table
163940
blob_serialize_extent_table_entry
164656
spdk_blob_io_unmap
173109
blob_persist_generate_new_md
174122
blob_persist_write_page_chain
174122
blob_persist_write_page_root
174122
blob_serialize
174122
blob_serialize_flags
174122
blob_persist_clear_clusters
184048
blob_persist_clear_clusters_cpl
184048
blob_persist_clear_extents
184048
blob_persist_clear_extents_cpl
184048
blob_persist_zero_pages_cpl
184072
blob_persist_zero_pages
184312
blob_persist_complete
184360
blob_persist_complete_cb
184360
blob_persist_start
184360
bs_mark_dirty
210058
blob_mark_clean
224999
blob_persist
225594
blob_io_cpl
236924
blob_persist_write_extent_pages
250364
blob_serialize_add_page
299563
blob_serialize_xattr
312993
blob_serialize_xattrs
348244
blob_md_page_calc_crc
493760
spdk_blob_io_write
930109
spdk_blob_get_num_clusters
1053621
spdk_blob_is_thin_provisioned
1916446
bs_release_cluster
2331409
blob_insert_cluster
2494694
bs_allocate_cluster
2494695
bs_claim_cluster
2494695
blob_verify_md_op
3552906
spdk_blob_io_read
4866573
spdk_bs_get_io_unit_size
5643047
blob_request_submit_op_single
5966277
blob_request_submit_op
5971822
spdk_blob_io_readv_ext
7645163
spdk_blob_io_writev_ext
8346206
rw_iov_done
15793980
blob_request_submit_rw_iov
15997849
spdk_blob_is_esnap_clone
21871105
blob_calculate_lba_and_lba_count
21961538
blob_is_esnap_clone
21986102
Generated by:
LCOV version 1.14