|
Ran
|
Jobs
1
|
Files
89
|
Run time
2min
|
Badge
README BADGES
|
push
github
Fix JIT slot overflow during up-recursion. Reported by Sergey Kaplun. (cherry picked from commit 048972dbf) In the case when LuaJIT is recording the side trace after the up-recursion call, there is no check that the updated `maxslot` value doesn't overflow the `LJ_MAX_JSLOTS` limit. If it records several huge returns in a row, the overflow of the aforementioned limit may occur. This triggers an assertion failure in `rec_check_slots()`. This patch fixes it by adding the corresponding check in the `lj_record_ret()`. Sergey Kaplun: * added the description and the test for the problem Resolves tarantool/security#145 Part of tarantool/tarantool#11278 Reviewed-by: Sergey Bronnikov <sergeyb@tarantool.org> Signed-off-by: Sergey Kaplun <skaplun@tarantool.org>
5703 of 6042 branches covered (94.39%)
Branch coverage included in aggregate %.
2 of 2 new or added lines in 1 file covered. (100.0%)
19 existing lines in 5 files now uncovered.21750 of 23491 relevant lines covered (92.59%)
3831943.23 hits per line
| Lines | Coverage | ∆ | File |
|---|---|---|---|
| 1 |
87.73 |
-0.08% | src/lj_crecord.c |
| 1 |
96.49 |
-0.05% | src/lj_record.c |
| 2 |
92.0 |
-0.44% | src/luajit.c |
| 5 |
85.59 |
-2.18% | src/lj_sysprof.c |
| 10 |
77.8 |
-1.01% | src/lj_api.c |
| ID | Job ID | Ran | Files | Coverage | |
|---|---|---|---|---|---|
| 1 | 15491957606.1 | 89 |
92.96 |
GitHub Action Run |
| Coverage | ∆ | File | Lines | Relevant | Covered | Missed | Hits/Line | Branch Hits | Branch Misses |
|---|