|
Ran
|
Jobs
1
|
Files
89
|
Run time
14s
|
Badge
README BADGES
|
push
github
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> (cherry picked from commit ec0d1c0cb)
5402 of 5998 branches covered (0.0%)
Branch coverage included in aggregate %.
20693 of 23370 relevant lines covered (88.55%)
2740504.54 hits per line
| ID | Job ID | Ran | Files | Coverage | |
|---|---|---|---|---|---|
| 1 | 7797761061.1 | 89 |
88.86 |
GitHub Action Run |
| Coverage | ∆ | File | Lines | Relevant | Covered | Missed | Hits/Line | Branch Hits | Branch Misses |
|---|