I think there is currently a known issue that there are some issues with memory display since 2.6.18 kernel:
dmesg | grep Memory [ 0.000000] Memory: 82008k/98304k available (3091k kernel code, 448k absent, 15848k reserved, 2471k data, 460k init)
which is the actual amount of memory on a 96MB RAM VPS using Xen PV.
However, when using free -m, here is the actual output:
free -m total used free shared buffers cached Mem: 86 74 11 0 8 48 -/+ buffers/cache: 18 68 Swap: 127 0 127
It seems that 10MB of memory was "eaten" away by the free -m output.
Does anyone have any solution to fix this?