>On Wednesday 02 March 2011, at 07:41:00, <Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>> wrote > On Sat, 26 Feb 2011 22:56:31 +0800 > Nai Xia <nai.xia@xxxxxxxxx> wrote: > > > ksm_pages_sharing is updated by ksmd periodically. In some cases, it cannot > > reflect the actual savings and makes the benchmarks on volatile VMAs very > > inaccurate. > > > > This patch add a vm_stat entry and let the /proc/meminfo show information > > about how much virutal address pte is being mapped to ksm pages. With default > > ksm paramters (pages_to_scan==100 && sleep_millisecs==20), this can result in > > 50% more accurate averaged savings result for the following test program. > > Bigger sleep_millisecs values will increase this deviation. > > So I think you're saying that the existing ksm_pages_sharing sysfs file > is no good. > > You added a new entry to /proc/meminfo and left ksm_pages_sharing > as-is. Why not leave /proc/meminfo alone, and fix up the existing > ksm_pages_sharing? The ksm_pages_sharing is really a count for how many "rmap_item"s is currently linked in stable_nodes. ksmd updates ksm_pages_sharing whenever it's waken up. However, just during the time ksmd is sleeping, many shared KSM pages can be broken because of page writes. So ksm_pages_sharing means much more an internal state for ksm than a real count for how much pages is being shared at some time point. Since the state of the internal data structures of ksm is only updated by ksmd privately. I think it's hard to make it correctly reflect the real time memory saving. So I just added another count and let ksm_pages_sharing still focus on it original role. > > Also, the patch accumulates the NR_KSM_PAGES_SHARING counts on a > per-zone basis as well as on a global basis, but only provides the > global count to userspace. The per-zone counts are potentially > interesting? If not, maintaining the per-zone counters is wasted > overhead. Yes, I will make it to the zoneinfo, soon. > > > > > --- test.c----- > > > > The "^---" token conventionally means "end of changelog". Please avoid > inserting it into the middle of the changelog. OK, I understand now. :) > > > +++ b/mm/ksm.c > > @@ -897,6 +897,7 @@ static int try_to_merge_one_page(struct vm_area_struct > > *vma, > > Your email client wordwraps the patches. Oops, sorry for the crappy client it is also responsible for my late reply. I will fix it soon. Nai > -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>