• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

tarantool / luajit / 13012199891
93%
tarantool/master: 93%

Build:
Build:
LAST BUILD BRANCH: skaplun/luajit-performance-tests
DEFAULT BRANCH: tarantool/master
Ran 28 Jan 2025 02:36PM UTC
Jobs 1
Files 89
Run time 4min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

28 Jan 2025 09:55AM UTC coverage: 92.98% (+0.03%) from 92.952%
13012199891

push

github

Buristan
Fix command-line argv handling.

(cherry-picked from commit 9ebebc9b5)

Before the patch, there was a situation where `luaL_newstate()` could
fail in `main()` and the `argv[0]` could be used as a progname in
`l_message()`. However, `argv[0]` is not guaranteed to be non-NULL, so
the segmentation fault could occur. This patch fixes the issue by using
the predefined name in that case. Moreover, it refactors the
`l_message()`, so now there is no need to pass the program name
everywhere.

The patch is tested with the help of the mocking of `luaL_newstate` by
providing an error-injected implementation of it and preloading it. For
preload to work, the LuaJIT must be built with dynamic build mode
enabled. The corresponding flavor is added to the CI only for x86_64
Debug build to avoid CI jobs outgrowing.

The <gh-8594-sysprof-ffunc-crash.test.c> inspects internal symbols from
the LuaJIT static library, so it can't be linked for shared build. The
test is disabled for the dynamic build mode.

Since the Linux kernel 5.18-rc1 release, `argv` is forced to a single
empty string if it is empty [1], so the issue is not reproducible on new
kernels. You may inspect the `dmesg` log for the corresponding warning
entrance.

Maxim Kokryashkin:
* added the description and the test for the problem

[1]: https://lore.kernel.org/all/20220201000947.2453721-1-keescook@chromium.org/

Part of tarantool/tarantool#10709

Reviewed-by: Sergey Kaplun <skaplun@tarantool.org>
Reviewed-by: Sergey Bronnikov <sergeyb@tarantool.org>
Signed-off-by: Sergey Kaplun <skaplun@tarantool.org>
(cherry picked from commit 026a0e463)

5697 of 6033 branches covered (94.43%)

Branch coverage included in aggregate %.

7 of 10 new or added lines in 1 file covered. (70.0%)

1 existing line in 1 file now uncovered.

21705 of 23438 relevant lines covered (92.61%)

2965281.65 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
3
92.0
0.02% src/luajit.c

Uncovered Existing Lines

Lines Coverage ∆ File
1
87.73
-0.08% src/lj_crecord.c
Jobs
ID Job ID Ran Files Coverage
1 13012199891.1 28 Jan 2025 02:36PM UTC 89
92.98
GitHub Action Run
Source Files on build 13012199891
  • Tree
  • List 89
  • Changed 85
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #13012199891
  • 02a5b3ef on github
  • Prev Build on tarantool/release/3.3 (#12984029847)
  • Next Build on tarantool/release/3.3 (#13029543329)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc