[Tarantool-patches] [PATCH luajit 3/5] Disable unreliable assertion for external frame unwinding.
Sergey Kaplun
skaplun at tarantool.org
Thu Feb 16 09:58:19 MSK 2023
Hi, Maxim!
Thanks for the patch!
LGTM, except a few comments below.
On 15.02.23, Maxim Kokryashkin wrote:
> From: Mike Pall <mike>
>
> Broken on Fedora/ARM64. Reported by Yichun Zhang.
>
> (cherry-picked from commit e957737650e060d5bf1c2909b741cc3dffe073ac)
>
> This patch disables the assertion that failed because of
> incorrectly constructed unwind information.
> That debug info generation was fixed in the scope
> of tarantool/tarantool#6096. This patch is backported
> only for consistency.
>
I suggest to menion the commit directly:
b731df1c0392cf7008be2e3c4112e1edb2392de4 ("ARM64: Reorder interpreter
stack frame and fix unwinding.") NB: I mention _our_ commit intense --
so we can follow this commit chain in our repo and cherry-picked notes
link commits to the upstream.
> Maxim Kokryashkin:
> * added the description for the problem
>
> Part of tarantool/tarantool#7745
> Relates to tarantool/tarantool#6096
I suppose that we should add:
| Part of tarantool/tarantool#8069
> ---
> src/lj_err.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/src/lj_err.c b/src/lj_err.c
> index c7fd9e65..f6200233 100644
> --- a/src/lj_err.c
> +++ b/src/lj_err.c
> @@ -488,7 +488,9 @@ void lj_err_verify(void)
> ** lj_assertX(_Unwind_Find_FDE((void *)_Unwind_RaiseException, &ehb), "broken build: external frame unwinding enabled, but system libraries have no unwind tables");
> */
> lua_assert(_Unwind_Find_FDE((void *)lj_err_throw, &ehb));
> + /* Check disabled, because of broken Fedora/ARM64. See #722.
I see that this line is present in LuaJIT's master. Should it be removed
as far as this issue is resolved?
> lua_assert(_Unwind_Find_FDE((void *)_Unwind_RaiseException, &ehb));
> + */
> }
> #endif
>
> --
> 2.39.0
>
--
Best regards,
Sergey Kaplun
More information about the Tarantool-patches
mailing list