Am 23.06.2016 um 18:53 schrieb Paolo Bonzini: > > On 23/06/2016 18:19, Peter Lieven wrote: >> Mhh, so your idea could be right. But what to do now? The introduction >> of RCU obviously increases the short term RSS usage. But thats never >> corrected as it seems. >> >> I see this behaviour with kernel 3.19 and kernel 4.4 > If it's 10M nothing. If there is a 100M regression that is also caused > by RCU, we have to give up on it for that data structure, or mmap/munmap > the affected data structures.
If it was only 10MB I would agree. But if I run the VM described earlier in this thread it goes from ~35MB with Qemu-2.2.0 to ~130-150MB with current master. This is with coroutine pool disabled. With the coroutine pool it can grow to sth like 300-350MB. Is there an easy way to determinate if RCU is the problem? I have the same symptoms, valgrind doesn't see the allocated memory. Is it possible to make rcu_call directly invoking the function - maybe with a lock around it that serializes the calls? Even if its expensive it might show if we search at the right place. Thanks, Peter