Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unsupported system page size #3382

Open
mbounine opened this issue Jul 6, 2023 · 6 comments · May be fixed by #5566
Open

Unsupported system page size #3382

mbounine opened this issue Jul 6, 2023 · 6 comments · May be fixed by #5566

Comments

@mbounine
Copy link

mbounine commented Jul 6, 2023

Describe the bug
router returns error when arm64 version is deployed to Kubernetes
<jemalloc>: Unsupported system page size <jemalloc>: Unsupported system page size memory allocation of 5 bytes failed

To Reproduce
Deploy router v1.22.0 from the Helm Chart to Kubernetes running on arm64 node

@garypen
Copy link
Contributor

garypen commented Jul 7, 2023

I have run 1.22.0 arm64 container on k8s with no issues, but it seems I am just lucky.

I did some reading around and discovered a number of jemalloc issues. This may be most pertinent: jemalloc/jemalloc#467.

It may be possible for us to configure large page size support during build, at the cost of some performance loss in the resulting binary. That will need to be investigated.

In the meantime is amd64 an option for you?

@mbounine
Copy link
Author

mbounine commented Jul 7, 2023

We are migrating our services from amd64 to arm64. I'll keep router running on amd64 for now. Here is the information about the node. It might help you with the investigation:
Kernel Version: 4.18.0-477.13.1.el8_8.aarch64
OS Image: Rocky Linux 8.8 (Green Obsidian)
Operating System: linux
Architecture: arm64
Container Runtime Version: cri-o://1.24.6

@mbounine
Copy link
Author

Did you have a chance to look at the issue?

@garypen
Copy link
Contributor

garypen commented Nov 17, 2023

Did you have a chance to look at the issue?

Sorry about the slow response. Not yet. I'll try to get this added to our work queue soon.

@mbounine
Copy link
Author

Thanks a lot, @garypen !

@yanns
Copy link
Contributor

yanns commented Jun 27, 2024

The fix for that is quite easy. We need to tell jemalloc to use 64-KiB pages so that the application can run on all architectures: amd64, arm64 with different page sizes

JEMALLOC_SYS_WITH_LG_PAGE: 16

yanns added a commit to yanns/router that referenced this issue Jun 28, 2024
@yanns yanns linked a pull request Jun 28, 2024 that will close this issue
6 tasks
ruperthair added a commit to ruperthair/router that referenced this issue Sep 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants