树莓派4 64位系统运行Envoy时因tcmalloc内存分配崩溃
树莓派4(8GB)64位系统运行Envoy崩溃问题
在8GB内存的树莓派4(RP4)64位Raspberry Pi OS上测试Envoy 1.17至1.24版本(arm64从1.17开始支持),所有版本均出现崩溃。
Envoy 1.20崩溃日志
external/com_github_google_tcmalloc/tcmalloc/system-alloc.cc:550] MmapAligned() failed (size, alignment) 1073741824 1073741824 @ 0x559342edc4 0x55934211a4 0x5593420be4 0x559340a4c0 external/com_github_google_tcmalloc/tcmalloc/arena.cc:34] FATAL ERROR: Out of memory trying to allocate internal tcmalloc data (bytes, object-size) 131072 48 @ 0x559342f0d4 0x559340a534
Envoy 1.23崩溃日志
external/com_github_google_tcmalloc/tcmalloc/system-alloc.cc:631] MmapAligned() failed - unable to allocate with tag (hint, size, alignment) - is something limiting address placement? 0x151880000000 1073741824 1073741824 @ 0x55941cfa88 0x55941cb6a0 0x55941caf48 0x55941b2f4c 0x55941c8010 0x55941c7e2c 0x55941a78a8 0x55940e6c00 0x55940e2298 0x559406f484 0x559419dbd0 0x7f834774ac external/com_github_google_tcmalloc/tcmalloc/arena.cc:58] FATAL ERROR: Out of memory trying to allocate internal tcmalloc data (bytes, object-size); is something preventing mmap from succeeding (sandbox, VSS limitations)? 131072 600 @ 0x55941cfde4 0x55941b2fdc 0x55941c8010 0x55941c7e2c 0x55941a78a8 0x55940e6c00 0x55940e2298 0x559406f484 0x559419dbd0 0x7f834774ac
复现步骤
Docker环境
docker run --rm envoyproxy/envoy:v1.24-latest
宿主机环境
envoy_location=$(podman run --rm --entrypoint which docker.io/envoyproxy/envoy:v1.23-latest envoy) container_id=$(podman create which docker.io/envoyproxy/envoy:v1.23-latest) podman cp "${container_id}":"${envoy_location}" ./envoy podman rm -v "${container_id}" ./envoy
若使用Docker,将命令中的podman替换为docker即可。
内容的提问来源于stack exchange,提问作者Mitch Sitin
相关产品推荐
相关产品推荐

