Skip to content

Increase jemalloc page size on arm64

DJ Mountney requested to merge jemalloc-large-page into master

What does this MR do?

Some of the new arm64 distros use kernels with larger pagesizes. Because we compile omnibus on arm64 on a debian selected kernel (regardless of the docker image distro), we can run into issues with jemalloc being compiled for the wrong default pagesize.

Jemalloc supports using a smaller runtime page size than it was compiled with. So we simply always increase the page-size on arm64.

Otherwise rhel arm64 distros will not be able to run any arm64 packages (through docker for example), even one compiled by our centos/rhel docker omnibus builder images.

The error looks like:

* RuntimeError occurred in Chef Infra Client run: redis_service[redis] (redis::enable line 19) had an error: RuntimeError: ruby_block[warn pending redis restart] (/opt/gitlab/embedded/cookbooks/cache/cookbooks/redis/resources/service.rb line 65) had an error: RuntimeError: Execution of the command `/opt/gitlab/embedded/bin/redis-cli -s /var/opt/gitlab/redis/redis.socket INFO` failed with a non-zero exit code (1)
stdout:
stderr: <jemalloc>: Unsupported system page size

Related issues

Found during testing of an centos8 arm package: !4743 (merged)

Related upstream issues:

Checklist

See Definition of done.

For anything in this list which will not be completed, please provide a reason in the MR discussion

Required

  • Merge Request Title, and Description are up to date, accurate, and descriptive
  • MR targeting the appropriate branch
  • MR has a green pipeline on GitLab.com
  • Pipeline is green on dev.gitlab.org if the change is touching anything besides documentation or internal cookbooks
  • trigger-package has a green pipeline running against latest commit

Expected (please provide an explanation if not completing)

  • Test plan indicating conditions for success has been posted and passes
  • Documentation created/updated
  • Tests added
  • Integration tests added to GitLab QA
  • Equivalent MR/issue for the GitLab Chart opened
Edited by DJ Mountney

Merge request reports