-
Notifications
You must be signed in to change notification settings - Fork 392
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
iox-#459 enable UndefinedBehaviorSanitizer for iceoryx #461
iox-#459 enable UndefinedBehaviorSanitizer for iceoryx #461
Conversation
Signed-off-by: Prasanna Bhat <[email protected]>
@prasannabhat Can you please merge the latest master and rebuild again? |
…clipse-iceoryx#459-enable-ub-sanitizer Signed-off-by: Prasanna Bhat <[email protected]>
Signed-off-by: Prasanna Bhat <[email protected]>
Signed-off-by: Prasanna Bhat <[email protected]>
Signed-off-by: Prasanna Bhat <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks quite good!
One last point from my side: Can you add some words about the UB Sanitizer in https://github.com/eclipse/iceoryx/blob/master/doc/website/getting-started/installation.md#use-sanitizer-scan ?
@@ -58,6 +58,8 @@ function(iox_create_asan_compile_time_blacklist BLACKLIST_FILE_PATH) | |||
file(WRITE ${BLACKLIST_FILE_PATH} "# This file is auto-generated from iceoryx_utils/cmake/IceoryxPlatform.cmake\n") | |||
file(APPEND ${BLACKLIST_FILE_PATH} "# src:*file_name.cpp*\n") | |||
file(APPEND ${BLACKLIST_FILE_PATH} "# fun:*Test_Name*\n") | |||
file(APPEND ${BLACKLIST_FILE_PATH} "# posh_runtime.cpp:70:12: runtime error: reference binding to null pointer of type 'iox::runtime::PoshRuntime'\n") | |||
file(APPEND ${BLACKLIST_FILE_PATH} "src:*posh_runtime.cpp\n") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you have more information what fails? Maybe we can fix it with this PR
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would keep that separate because it does not belong into this issue: #423
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you're right, but maybe it's a minor thing which could be solved within a few minutes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here you go
AFAIK there is only one error from UBSan (I think this is a very positve indication of the code quality 👍 )
(Dont know how long these build logs are persisted)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's really weird. The error doesn't make sense. I tried to reproduce it on my machine, but I just got the reference binding to null pointer
error.
I fixed that and removed the runtime from the blacklist. Let's see what happens
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's see what happens
... well, it's broken :D
@dkroenke the tests for setting the runtime factory are broken. We need a RouDi for this tests, but cannot use the RouDiEnvironment, since it sets the factory itself and when we override that in the test, we break the RouDiEnvironment. I'm wondering why it doesn't crash.
I disabled the test with a note to re-enable them with #449
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
okay, windows is broken and I have no idea why :/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it builds now ... but I have only slightly an idea why :D
…clipse-iceoryx#459-enable-ub-sanitizer Signed-off-by: Prasanna Bhat <[email protected]>
Signed-off-by: Prasanna Bhat <[email protected]>
@dkroenke Thanks for introducing the documentation here. I updated UB Sanitizer content. |
… in runtime test Signed-off-by: Mathias Kraus <[email protected]>
Signed-off-by: Mathias Kraus <[email protected]>
Signed-off-by: Mathias Kraus <[email protected]>
Signed-off-by: Prasanna Bhat [email protected]
Pre-Review Checklist for the PR Author
iox-#123-this-is-a-branch
)iox-#123 commit text
)git commit -s
)Notes for Reviewer
More details about UndefinedBehaviorSanitizer
Checklist for the PR Reviewer
Post-review Checklist for the PR Author
Post-review Checklist for the Eclipse Committer
References