-
Notifications
You must be signed in to change notification settings - Fork 108
/
Copy pathhelgrind.suppressions
66 lines (66 loc) · 2.66 KB
/
helgrind.suppressions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
# atomic operations
{
atomic_load
Helgrind:Race
fun:load
fun:load
}
{
atomic_exchange
Helgrind:Race
fun:exchange
fun:exchange
}
{
atomic_store
Helgrind:Race
fun:store
fun:store
}
# Signaling queue_condition_variable is safe in chain_plugin::push_generate_block_request, because we push to priority_write_queue and then check in chain_plugin_impl::start_write_processing for priority_write_queue.empty()
{
<insert_a_suppression_name_here>
Helgrind:Dubious
obj:/usr/pkg/libexec/valgrind/vgpreload_helgrind-amd64-linux.so
fun:_ZN4hive7plugins5chain12chain_plugin14push_generate_block_requestERKSt10shared_ptrINS_5chain27generate_block_flow_controlEE
}
# Same, but in chain_plugin::accept_transaction
{
<insert_a_suppression_name_here>
Helgrind:Dubious
obj:/usr/pkg/libexec/valgrind/vgpreload_helgrind-amd64-linux.so
fun:_ZN4hive7plugins5chain12chain_plugin18accept_transactionERKSt10shared_ptrINS_5chain21full_transaction_typeEENS2_9lock_typeE
}
# Signaling work_queue_condition_variable in blockchain_worker_thread_pool::shutdown is safe, because we unset running and check it's set in is_running
{
<insert_a_suppression_name_here>
Helgrind:Dubious
obj:/usr/pkg/libexec/valgrind/vgpreload_helgrind-amd64-linux.so
fun:_ZN4hive5chain29blockchain_worker_thread_pool8shutdownEv
}
# Signaling work_queue_condition_variable in blockchain_worker_thread_pool::enqueue_work is safe, because we push to work_queues and check it's non-empty in dequeue_work
{
<insert_a_suppression_name_here>
Helgrind:Dubious
obj:/usr/pkg/libexec/valgrind/vgpreload_helgrind-amd64-linux.so
fun:_ZN4hive5chain29blockchain_worker_thread_pool12enqueue_workERKSt10shared_ptrINS0_15full_block_typeEENS1_16data_source_typeE
}
{
<insert_a_suppression_name_here>
Helgrind:Dubious
obj:/usr/pkg/libexec/valgrind/vgpreload_helgrind-amd64-linux.so
fun:_ZN4hive5chain29blockchain_worker_thread_pool12enqueue_workERKSt10shared_ptrINS0_21full_transaction_typeEENS1_16data_source_typeE
}
{
<insert_a_suppression_name_here>
Helgrind:Dubious
obj:/usr/pkg/libexec/valgrind/vgpreload_helgrind-amd64-linux.so
fun:_ZN4hive5chain29blockchain_worker_thread_pool12enqueue_workERKSt6vectorISt10shared_ptrINS0_21full_transaction_typeEESaIS5_EENS1_16data_source_typeESt8optionalIjE
}
# Signaling queue_condition_variable in chain_plugin_impl::stop_write_processing is safe, because we're unsetting running and check it's set in chain_plugin_impl::start_write_processing
{
<insert_a_suppression_name_here>
Helgrind:Dubious
obj:/usr/pkg/libexec/valgrind/vgpreload_helgrind-amd64-linux.so
fun:_ZN4hive7plugins5chain6detail17chain_plugin_impl21stop_write_processingEv
}