-
Notifications
You must be signed in to change notification settings - Fork 7.9k
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
tcmalloc (Istio 1.22+) causes Envoy to fail to startup on some CPUs (rockchip) #51708
Comments
Interesting. Never seen this one. Do you have a "weird" host OS? Is it arm64? |
Yes, the machines are orange pi 5 pro with arm64 CPU. |
This looks like envoyproxy/envoy#15235 |
Yeah! Thank you. |
In theory you could make a debian rockchip build with the kernel config set. But might require recompiling your own kernel which is a pretty steep curve... It would be nice for tcmalloc to handle this directly |
One common issue when you see malloc related errors, particuarly well known with jemalloc is an unexpected page size it's worth trying getconf PAGESIZE and checking if the library supports that page size. On regular PI5 there's an option to run with kernel=kernel8.img to switch to 4KiB page size from the regylar 16KiB, you lose a little performance but it does work - well known examples are fluentbit and fluentd don't work without that. I switched to promtail avoiding this issue but had it for a while. |
fyi @keithmattix - a change when we moved to tcmalloc |
Same issue on rpi4 CM4 with dietPi OS (debian based) |
tcmalloc is unlikely to handle this directly since it's aiming for cloud compute ARM chips and those appear to support 48 bits. the best option is to provide a pi-specific build IMHO, either by using an alternate malloc (and lose some features, e.g. dynamic overload protection) or by patching tcmalloc kAddressBits. |
🚧 This issue or pull request has been closed due to not having had activity from an Istio team member since 2024-10-10. If you feel this issue or pull request deserves attention, please reopen the issue. Please see this wiki page for more information. Thank you for your contributions. Created by the issue and PR lifecycle manager. |
Is this the right place to submit this?
Bug Description
I used istioctl to install istio ambient mode on my cluster and I met the problem like this.
And I used helm to install it. I still met the same problem.
helm install istio-ingress istio/gateway -n istio-ingress --create-namespace --wait
The pod logs:
Version
Additional Information
Kubernetes is installed on 3 local machines.
1 control plane and 2 workers.
Installed Calico CNI and MetalLB.
The text was updated successfully, but these errors were encountered: