vlib: fix segfault on panic in worker 96/38596/1
authorMikhail Sokolovskiy <sokolmish@gmail.com>
Thu, 30 Mar 2023 10:27:33 +0000 (13:27 +0300)
committerMikhail Sokolovskiy <sokolmish@gmail.com>
Thu, 30 Mar 2023 10:27:33 +0000 (13:27 +0300)
commit8309517f23b314e588bf3ad623250f1440908bd3
tree8b8a26389c4bdc7de48e2e0c27d6ad67b1aba102
parent2844aa186f7d33bc35b99509bfd8e405e998df0b
vlib: fix segfault on panic in worker

Vlib panic uses longjmp to exit main loop, but workers don't set main_loop_exit
field on initialization, so this jump corrupts registers and causes segfault.

There I add clib_warning and abort if longjmp context hasn't been set.

Type: fix
Signed-off-by: Mikhail Sokolovskiy <sokolmish@gmail.com>
Change-Id: I0d705f1f139c4083af75066aeb525964ed0aa202
src/vlib/main.h