[Tarantool-patches] [PATCH luajit 0/2] arm64: fix 48-bit addresses issues

Igor Munkin imun at tarantool.org
Wed Aug 11 10:21:50 MSK 2021


Sergey,

I've checked the patchset into tarantool branch in tarantool/luajit and
bumped a new version in master.

On 06.07.21, Sergey Kaplun wrote:
> This patchset provides changes necessary for Tarantool working in docker
> on M1 (#2712), except well-known `cur_L` issue [1].
> 
> The first patch fixes issue with bad lightuserdata error.
> The second patch fixes issue with memory remaping to 48-bit VA space.
> 
> LuaJIT branch: https://github.com/tarantool/luajit/tree/skaplun/gh-2712-bad-lightud
> Tarantool branch: https://github.com/tarantool/tarantool/tree/skaplun/gh-2712-bad-lightud
> Issues:
> * https://github.com/tarantool/tarantool/issues/2712
> * https://github.com/tarantool/tarantool/issues/6154
> 
> [1]: https://github.com/tarantool/tarantool/issues/6189
> 
> Mike Pall (2):
>   Add support for full-range 64 bit lightuserdata.
>   Linux/ARM64: Make mremap() non-moving due to VA space woes.
> 
>  doc/status.html                               | 11 ----
>  src/jit/dump.lua                              |  4 +-
>  src/lib_debug.c                               | 12 ++--
>  src/lib_jit.c                                 | 14 ++---
>  src/lib_package.c                             |  8 +--
>  src/lib_string.c                              |  2 +-
>  src/lj_alloc.c                                |  2 +-
>  src/lj_api.c                                  | 40 +++++++++++--
>  src/lj_ccall.c                                |  2 +-
>  src/lj_cconv.c                                |  2 +-
>  src/lj_crecord.c                              |  6 +-
>  src/lj_dispatch.c                             |  2 +-
>  src/lj_ir.c                                   |  6 +-
>  src/lj_obj.c                                  |  5 +-
>  src/lj_obj.h                                  | 57 ++++++++++++-------
>  src/lj_snap.c                                 |  7 ++-
>  src/lj_state.c                                |  6 ++
>  src/lj_strfmt.c                               |  2 +-
>  test/tarantool-tests/CMakeLists.txt           |  1 +
>  .../lj-49-bad-lightuserdata.test.lua          | 10 ++++
>  .../lj-49-bad-lightuserdata/CMakeLists.txt    |  1 +
>  .../testlightuserdata.c                       | 52 +++++++++++++++++
>  .../lj-671-arm64-assert-after-mremap.test.lua | 24 ++++++++
>  23 files changed, 208 insertions(+), 68 deletions(-)
>  create mode 100644 test/tarantool-tests/lj-49-bad-lightuserdata.test.lua
>  create mode 100644 test/tarantool-tests/lj-49-bad-lightuserdata/CMakeLists.txt
>  create mode 100644 test/tarantool-tests/lj-49-bad-lightuserdata/testlightuserdata.c
>  create mode 100644 test/tarantool-tests/lj-671-arm64-assert-after-mremap.test.lua
> 
> -- 
> 2.31.0
> 

-- 
Best regards,
IM


More information about the Tarantool-patches mailing list