KSM For All Via LD_PRELOAD?

Gordan Bobic
2010-06-08T18:53:14Z

Is this plausible?

I'm trying to work out if it's even worth considering this approach to
enable all memory used by in a system to be open to KSM page merging,
rather than only memory used by specific programs aware of it (e.g.
kvm/qemu).

Something like this would address the fact that container based
virtualization (OpenVZ, VServer, LXC) cannot benefit from KSM.

What I'm thinking about is somehow intercepting malloc() and wrapping it
so that all malloc()-ed memory gets madvise()-d as well.

Has this been done?

Or is this too crazy an idea?

Gordan