Comments (2)
it looks like this is much harder to get working with static linking. While jemalloc and tcmalloc seem to support static linking, any program that calls fork
(like ceph) seems to pull in libc specific functions (like __malloc_fork_lock_parent
) and result libc's allocators being pulled in during linking. Here's a simple repro:
#include <stdlib.h>
#include <unistd.h>
int main() {
void *i = malloc(0);
fork();
return 0;
}
g++ test.c -o test -static -ltcmalloc_minimal -lpthread -Wl,-Map,test.map
/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/libc.a(malloc.o): In function `__libc_malloc':
(.text+0x6170): multiple definition of `__libc_malloc'
/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib/libtcmalloc_minimal.a(libtcmalloc_minimal_la-tcmalloc.o):(google_malloc+0x0): first defined here
/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/libc.a(malloc.o): In function `__libc_malloc':
(.text+0x6170): multiple definition of `malloc'
and if you look at test.map produced by the linker:
/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/libc.a(malloc.o)
/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/libc.a(fork.o) (__malloc_fork_lock_parent)
from rook.
this is a problem with tcmalloc as well gperftools/gperftools#856
from rook.
Related Issues (20)
- rpc error: code = Internal desc = an error (exit status 1) occurred while running modprobe args: [ceph] | on minikube Mac M2 HOT 9
- ceph is not healthy,osd not ready,based on openebs cstor HOT 8
- ERROR: unable to open OSD superblock on /var/lib/ceph/osd/ceph-3: (2) No such file or directory pvc based rook HOT 4
- Change the code to be explicit when setting the value of AllowPrivilegeEscalation HOT 4
- Enable rook orchestrator by default
- Descriptions of several CRDs are broken HOT 5
- Monitoring labels aren't applied to rook-ceph-exporter HOT 1
- All CRds should output age and other paramters with kubectl
- Osd purge job steps should be re-looked HOT 1
- Ability to create an Object Store zone configured to use `cloud-sync` module
- CephFS mount issue happening frequently on any one random node HOT 6
- OSD not getting created when the node has taints. HOT 1
- Confusing ceph cluster version message HOT 5
- Mon is crashing during Reef upgrade test when updated from v18 to latest-reef-devel HOT 1
- Document host networking in external cluster HOT 12
- metadata.generation can become > state.observedGeneration and rook does not set observedGeneration == generation HOT 2
- Add support for Ceph Squid (v19)
- RFE: options for OSD restart gate HOT 2
- Mds on behind trimming causing cephFs mount issue for multiple nodes HOT 1
- controller-gen v0.11.3 panic while building rook HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rook.