static void cond_cleanup(struct cond_info* p);
-/* Global variables. */
-
-Bool s_drd_report_signal_unlocked = True;
-
-
/* Local variables. */
+static Bool s_drd_report_signal_unlocked = True;
static Bool s_trace_cond;
/* Function definitions. */
+void cond_set_report_signal_unlocked(const Bool r)
+{
+ s_drd_report_signal_unlocked = r;
+}
+
void cond_set_trace(const Bool trace_cond)
{
s_trace_cond = trace_cond;
struct cond_info;
-/* Global variables. */
-
-extern Bool s_drd_report_signal_unlocked;
-
-
/* Function declarations. */
+void cond_set_report_signal_unlocked(const Bool r);
void cond_set_trace(const Bool trace_cond);
void cond_pre_init(const Addr cond);
void cond_post_destroy(const Addr cond);
{
int check_stack_accesses = -1;
int exclusive_threshold_ms = -1;
+ int report_signal_unlocked = -1;
int segment_merging = -1;
int shared_threshold_ms = -1;
int show_confl_seg = -1;
VG_BOOL_CLO (arg, "--check-stack-var", check_stack_accesses)
else VG_BOOL_CLO(arg, "--drd-stats", DRD_(s_print_stats))
- else VG_BOOL_CLO(arg,"--report-signal-unlocked",s_drd_report_signal_unlocked)
+ else VG_BOOL_CLO(arg,"--report-signal-unlocked",report_signal_unlocked)
else VG_BOOL_CLO(arg, "--segment-merging", segment_merging)
else VG_BOOL_CLO(arg, "--show-confl-seg", show_confl_seg)
else VG_BOOL_CLO(arg, "--show-stack-usage", DRD_(s_show_stack_usage))
mutex_set_lock_threshold(exclusive_threshold_ms);
rwlock_set_exclusive_threshold(exclusive_threshold_ms);
}
+ if (report_signal_unlocked != -1)
+ {
+ cond_set_report_signal_unlocked(report_signal_unlocked);
+ }
if (shared_threshold_ms != -1)
{
rwlock_set_shared_threshold(shared_threshold_ms);