On Thu, Nov 26, 2015 at 10:52:52AM +0900, Joonsoo Kim wrote: > On Wed, Nov 25, 2015 at 10:04:44AM -0600, Christoph Lameter wrote: > > > Although vmstat values aren't designed for accuracy, these are already > > > used by some sensitive places so it is better to be more accurate. > > > > The design is to sacrifice accuracy and the time the updates occur for > > performance reasons. This is not the purpose the counters were designed > > for. If you put these demands on the vmstat then you will get complex > > convoluted code and compromise performance. > > I understand design decision, but, it is better to get value as much > as accurate if there is no performance problem. My patch would not > cause much performance degradation because it is just adding one > this_cpu_read(). > > Consider about following example. Current implementation returns > interesting output if someone do following things. > > v1 = zone_page_state(XXX); > mod_zone_page_state(XXX, 1); > v2 = zone_page_state(XXX); > > v2 would be same with v1 in most of cases even if we already update > it. > > This situation could occurs in page allocation path and others. If > some task try to allocate many pages, then watermark check returns > same values until updating vmstat even if some freepage are allocated. > There are some adjustments for this imprecision but why not do it become > accurate? I think that this change is reasonable trade-off. > Christoph, any comment? Thanks. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>