[LTP] [PATCH 0/1] overcommit_memory: Remove unstable subtest
Joerg Vehlow
lkml@jv-coder.de
Wed Nov 18 08:54:31 CET 2020
Hi,
I did some experiments and made the per cpu counters visible. Then I
realized kernel developers are not that stupid ;)
The per cpu counters can only grow up to batch size and down to negative
batch size, then they are flushed back to the global counter.
That means the counter seen by __vm_enough_memory can only be off in the
interval [-numcpu * batch_size, numcpu * batch_size]. So the test can be
fixed by trying to allocate commit_left + numcpu * batch_size.
Now the only problem is, that the batch size is not visible to
userspace, so has to be calculated. It depends on the number of cpus and
total memory pages:
max(ncpus*2, 32, min(int32_max, ram_pages / ncpus / 256) = batch_size
(in pages)
I guess we can determine these two values from userspace and add the
batch size to commit_left.
I will prepare a new patch with this approach.
Jörg
More information about the ltp
mailing list