We could add a QCC_ASSERT_FATAL() that would trigger the seg_fault rather than 
having all of them fail.  It would be my preference that no all asserts trigger 
this behavior, but would like to hear from others.

From: [email protected] 
[mailto:[email protected]] On Behalf Of Way 
Vadhanasin
Sent: Thursday, March 17, 2016 2:20 PM
To: [email protected]
Subject: [Allseen-core] Making QCC_ASSERT generate core dump?

I recently encountered a series of lock level assert issues in Jenkins with 
information like this:

Acquiring lock 0x7fe6580570e0 level 13040 
(alljoyn_core/router/UDPTransport.cc:3670). Current thread already owns lock 
0x2bec360 level 13060 (alljoyn_core/router/UDPTransport.cc:1584).
ajtest: common/src/LockOrderChecker.cc:214: void 
qcc::LockOrderChecker::AcquiringLock(const qcc::Mutex*, const char*, uint32_t): 
Assertion `false && "Detected out-of-order lock acquire"' failed

(see full log here: 
https://build.allseenalliance.org/ci/job/linux-gcc46-test-verify/1032/artifact/FAIL____ajtest.log)

While this is useful, a core dump would be even better. We can either cause a 
segmentation fault always when assert fires (use another assert or just 
deference a nullptr) or do it only on a lock level assert failure. Does anyone 
have a preference one way or the other? I tend to think do it on all assert 
failures is better.

Thanks,
Way


_______________________________________________
Allseen-core mailing list
[email protected]
https://lists.allseenalliance.org/mailman/listinfo/allseen-core

Reply via email to