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

tarantool / luajit / 7797761056
93%

Build:
DEFAULT BRANCH: tarantool/master
Ran 06 Feb 2024 09:57AM UTC
Jobs 1
Files 89
Run time 9s
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

06 Feb 2024 09:39AM UTC coverage: 88.879% (+0.04%) from 88.835%
7797761056

push

github

igormunkin
sysprof: disable runtime host symtab updates

The symtab update for newly loaded shared libraries requires
memory allocation, which is not signal-safe and can cause
crashes. Updating symtab in a VM hook is not a viable option
either, as there are no guarantees that the symbol will be
dumped before its address is streamed. This patch completely
disables the runtime updates of the symtab for host symbols.
That means all Lua-C modules, FFI modules, and shared libraries
must be loaded before starting the profiler.

There is no test along with the patch for two main reasons:
1. The signal should land on an instruction inside the allocator
such that the second allocator call would cause a crash because of
an inconsistent inner state. Although we have ptrace-based
machinery for testing, the control is not that fine-grained. The
only option we have left is to rely on empirical offsets, which
is not a robust solution. Moreover, it is possible to build LuaJIT
with `malloc` as an allocator, and the test should be adapted to
that too. Needless to say, malloc sources may differ from
platform to platform, making the test unreliable.

2. Regression is unlikely here since this patch removes the only
call that could allocate memory inside the signal handler.

Resolves tarantool/tarantool#8140

Reviewed-by: Sergey Kaplun <skaplun@tarantool.org>
Reviewed-by: Sergey Bronnikov <sergeyb@tarantool.org>
Signed-off-by: Igor Munkin <imun@tarantool.org>

5403 of 5998 branches covered (0.0%)

Branch coverage included in aggregate %.

20699 of 23370 relevant lines covered (88.57%)

2746729.61 hits per line

Jobs
ID Job ID Ran Files Coverage
1 7797761056.1 06 Feb 2024 09:57AM UTC 89
88.88
GitHub Action Run
Source Files on build 7797761056
  • Tree
  • List 89
  • Changed 79
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #7797761056
  • ec0d1c0c on github
  • Prev Build on tarantool/master (#7744516676)
  • Next Build on tarantool/master (#7798458690)
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

© 2025 Coveralls, Inc