left/right is a weird way to refer to address ordering.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
not sure about asan, for hwasan we did some quite significant changes to the output format, and no one complained at us.
I think this is a pretty minor change - we are not touching the general structure of the report, nor introducing a new error type (even though the latter happens from time to time).
This is fine from my perspective, if we want to be extra cautious it might be worth sending an announcement to Discourse before landing this change.
OK. Posted a notice to #sanitizers on Discord and https://discourse.llvm.org/t/psa-asan-and-hwasan-output-format-changes/65024.
If you want to update this, please do it everywhere.
(I don't think it's clearer and it broke a bunch of our tests, so I'm a bit grumpy about this change. Apologies.)
compiler-rt/lib/asan/asan_allocator.cpp | ||
---|---|---|
804 ↗ | (On Diff #458259) | This still says left |
compiler-rt/lib/asan/asan_descriptions.cpp | ||
131 | So does this. |
Sorry about breaking your tests, the apologies are mine. Could you share the test that was broken? Was it only tests or also some parser? D133582 sorts out the remaining references to left/right in the asan code.
We had a bunch of gtest death tests to check that the sanitizers are working. They did a write to the left or right if an array, and checked that that a) crashed b) the crash message contained the text "left of" / "right of". Fairly easy to update, but also a bit churny, for subjectively not a lot of upside. (But if y'all think this is a better diag, that's enough of course.)
Thank you for updating the rest to make the codebase self-consistent again!
yeah, we won't know for a while, but i'm hopeful that (in my day job as "Android C/C++ crash dump bug concierge") i'll have to explain "self explanatory" (hw)asan bug reports less frequently...
it took a pretty sophisticated C programmer explicitly saying "i don't know what '0 bytes to the right' is telling me" for me to be brave enough to complain to the asan folks, even though i'd always had to translate these in my head myself. if _he_ didn't get it, the average NDK user never will.
the same person also noticed that in the shadow map we dump shadow addresses rather than "real" addresses, which i'd never noticed because i just ignore that bit as being "for experts only". one day i might be brave enough to admit that i don't know whether i'm supposed to be using it, and if so, for what :-)
So does this.