On Mon, 31 Jan 2011, Dave Hansen wrote: > > The khugepaged process collapses transparent hugepages for us. Whenever > it collapses a page into a transparent hugepage, we increment a nice > global counter exported in sysfs: > > /sys/kernel/mm/transparent_hugepage/khugepaged/pages_collapsed > > But, transparent hugepages also get broken down in quite a few > places in the kernel. We do not have a good idea how how many of > those collpased pages are "new" versus how many are just fixing up > spots that got split a moment before. > > Note: "splits" and "collapses" are opposites in this context. > > This patch adds a new sysfs file: > > /sys/kernel/mm/transparent_hugepage/pages_split > > It is global, like "pages_collapsed", and is incremented whenever any > transparent hugepage on the system has been broken down in to normal > PAGE_SIZE base pages. This way, we can get an idea how well khugepaged > is keeping up collapsing pages that have been split. > > I put it under /sys/kernel/mm/transparent_hugepage/ instead of the > khugepaged/ directory since it is not strictly related to > khugepaged; it can get incremented on pages other than those > collapsed by khugepaged. > > The variable storing this is a plain integer. I needs the same > amount of locking that 'khugepaged_pages_collapsed' has, for > instance. i.e. no global locking, but we've accepted the occassional off-by-one error (even though splitting of hugepages isn't by any means lightning fast and the overhead of atomic ops would be negligible). > Signed-off-by: Dave Hansen <dave@xxxxxxxxxxxxxxxxxx> Acked-by: David Rientjes <rientjes@xxxxxxxxxx> -- 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>