[Tarantool-patches] [PATCH luajit 2/2] ci: introduce testing workflow with sanitizers

Igor Munkin imun at tarantool.org
Fri Jul 21 11:14:36 MSK 2023


Sergey,

Thanks for the patch! See my replies below, and the second version of
the series[1] for updates.

On 13.07.23, Sergey Bronnikov wrote:
> Thanks for the patch! LGTM with minor comments below
> 
> Sergey
> 
> On 7/13/23 00:09, Igor Munkin wrote:
> > This commit adds GitHub workflow running all available LuaJIT tests with
> > LUAJIT_USE_ASAN option enabled. For now, sanitizers workflow works only
> > for Linux/x86_64 as the most scaling setup in our CI. I believe we will
> > be able to add other platforms being supported, when ARM64 and macOS
> 
> beware that ARM64 is absent in a list of supported platforms [1]
> 
> https://clang.llvm.org/docs/AddressSanitizer.html#supported-platforms

Thanks for mentioning: removed this from commit message.

> 
> <snipped>
> 
> > +      - name: test
> > +        env:
> > +          # Enable as much checks as possible. See more info here:
> 
> However, some checks are *disabled*, for example "print_suppressions"
> 
> and "heap_profile" are disabled. Is it intentionally?

"print_suppressions" is disabled intentionally, to not spoil the output
of the test; "heap_profile" is also disabled in Tarantool, and it is
experimental, so I'm afraid introducing flaky failures when enable it.
If you can suggest particular flags to be enabled, feel free to share in
the second version of the series[1].

> 
> > +          # https://github.com/google/sanitizers/wiki/AddressSanitizerFlags
> there are also LeakSanitizer flags here
> https://github.com/google/sanitizers/wiki/AddressSanitizerLeakSanitizer#flags
> > +          ASAN_OPTIONS: "                    \
> > +            detect_invalid_pointer_pairs=1:  \
> > +            detect_leaks=1:                  \
> > +            detect_stack_use_after_return=1: \
> > +            dump_instruction_bytes=1:        \
> > +            heap_profile=0:                  \
> > +            print_suppressions=0             \
> > +            symbolize=1:                     \
> > +            unmap_shadow_on_exit=1:          \
> > +          "
> > +        run: cmake --build . --parallel --target LuaJIT-test
> > +        working-directory: ${{ env.BUILDDIR }}

[1]: https://lists.tarantool.org/tarantool-patches/cover.1689925402.git.imun@tarantool.org/T/#t

-- 
Best regards,
IM


More information about the Tarantool-patches mailing list