All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <20110610003407.GA27964@cmpxchg.org>

diff --git a/a/1.txt b/N1/1.txt
index 8eb5ff1..38b6242 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -6,33 +6,33 @@ On Fri, Jun 10, 2011 at 08:47:55AM +0900, Minchan Kim wrote:
 > >>> > When a memcg hits its hard limit, hierarchical target reclaim is
 > >>> > invoked, which goes through all contributing memcgs in the hierarchy
 > >>> > below the offending memcg and reclaims from the respective per-memcg
-> >>> > lru lists.  This distributes pressure fairly among all involved
+> >>> > lru lists.  This distributes pressure fairly among all involved
 > >>> > memcgs, and pages are aged with respect to their list buddies.
 > >>> >
 > >>> > When global memory pressure arises, however, all this is dropped
-> >>> > overboard.  Pages are reclaimed based on global lru lists that have
+> >>> > overboard.  Pages are reclaimed based on global lru lists that have
 > >>> > nothing to do with container-internal age, and some memcgs may be
 > >>> > reclaimed from much more than others.
 > >>> >
 > >>> > This patch makes traditional global reclaim consider container
-> >>> > boundaries and no longer scan the global lru lists.  For each zone
+> >>> > boundaries and no longer scan the global lru lists.  For each zone
 > >>> > scanned, the memcg hierarchy is walked and pages are reclaimed from
-> >>> > the per-memcg lru lists of the respective zone.  For now, the
+> >>> > the per-memcg lru lists of the respective zone.  For now, the
 > >>> > hierarchy walk is bounded to one full round-trip through the
 > >>> > hierarchy, or if the number of reclaimed pages reach the overall
 > >>> > reclaim target, whichever comes first.
 > >>> >
 > >>> > Conceptually, global memory pressure is then treated as if the root
-> >>> > memcg had hit its limit.  Since all existing memcgs contribute to the
+> >>> > memcg had hit its limit.  Since all existing memcgs contribute to the
 > >>> > usage of the root memcg, global reclaim is nothing more than target
-> >>> > reclaim starting from the root memcg.  The code is mostly the same for
+> >>> > reclaim starting from the root memcg.  The code is mostly the same for
 > >>> > both cases, except for a few heuristics and statistics that do not
-> >>> > always apply.  They are distinguished by a newly introduced
+> >>> > always apply.  They are distinguished by a newly introduced
 > >>> > global_reclaim() primitive.
 > >>> >
 > >>> > One implication of this change is that pages have to be linked to the
 > >>> > lru lists of the root memcg again, which could be optimized away with
-> >>> > the old scheme.  The costs are not measurable, though, even with
+> >>> > the old scheme.  The costs are not measurable, though, even with
 > >>> > worst-case microbenchmarks.
 > >>> >
 > >>> > As global reclaim no longer relies on global lru lists, this change is
@@ -62,7 +62,7 @@ On Fri, Jun 10, 2011 at 08:47:55AM +0900, Minchan Kim wrote:
 > >>
 > >> The number of pages scanned per iteration is essentially
 > >>
-> >>        number of lru pages in memcg-zone >> priority
+> >>        number of lru pages in memcg-zone >> priority
 > >>
 > >> so we scan relatively more pages from B than from A each round.
 > >>
@@ -105,3 +105,10 @@ increase the priority and iterate again over the hierarchy.
 	  for each zone:
 	    for each memcg:
 	      do_shrink_zone(prio, zone, sc = { .mem_cgroup = memcg })
+
+--
+To unsubscribe, send a message with 'unsubscribe linux-mm' in
+the body to majordomo@kvack.org.  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@kvack.org"> email@kvack.org </a>
diff --git a/a/content_digest b/N1/content_digest
index 0fcda0e..c1a7fb3 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -31,33 +31,33 @@
  "> >>> > When a memcg hits its hard limit, hierarchical target reclaim is\n"
  "> >>> > invoked, which goes through all contributing memcgs in the hierarchy\n"
  "> >>> > below the offending memcg and reclaims from the respective per-memcg\n"
- "> >>> > lru lists. \302\240This distributes pressure fairly among all involved\n"
+ "> >>> > lru lists.  This distributes pressure fairly among all involved\n"
  "> >>> > memcgs, and pages are aged with respect to their list buddies.\n"
  "> >>> >\n"
  "> >>> > When global memory pressure arises, however, all this is dropped\n"
- "> >>> > overboard. \302\240Pages are reclaimed based on global lru lists that have\n"
+ "> >>> > overboard.  Pages are reclaimed based on global lru lists that have\n"
  "> >>> > nothing to do with container-internal age, and some memcgs may be\n"
  "> >>> > reclaimed from much more than others.\n"
  "> >>> >\n"
  "> >>> > This patch makes traditional global reclaim consider container\n"
- "> >>> > boundaries and no longer scan the global lru lists. \302\240For each zone\n"
+ "> >>> > boundaries and no longer scan the global lru lists.  For each zone\n"
  "> >>> > scanned, the memcg hierarchy is walked and pages are reclaimed from\n"
- "> >>> > the per-memcg lru lists of the respective zone. \302\240For now, the\n"
+ "> >>> > the per-memcg lru lists of the respective zone.  For now, the\n"
  "> >>> > hierarchy walk is bounded to one full round-trip through the\n"
  "> >>> > hierarchy, or if the number of reclaimed pages reach the overall\n"
  "> >>> > reclaim target, whichever comes first.\n"
  "> >>> >\n"
  "> >>> > Conceptually, global memory pressure is then treated as if the root\n"
- "> >>> > memcg had hit its limit. \302\240Since all existing memcgs contribute to the\n"
+ "> >>> > memcg had hit its limit.  Since all existing memcgs contribute to the\n"
  "> >>> > usage of the root memcg, global reclaim is nothing more than target\n"
- "> >>> > reclaim starting from the root memcg. \302\240The code is mostly the same for\n"
+ "> >>> > reclaim starting from the root memcg.  The code is mostly the same for\n"
  "> >>> > both cases, except for a few heuristics and statistics that do not\n"
- "> >>> > always apply. \302\240They are distinguished by a newly introduced\n"
+ "> >>> > always apply.  They are distinguished by a newly introduced\n"
  "> >>> > global_reclaim() primitive.\n"
  "> >>> >\n"
  "> >>> > One implication of this change is that pages have to be linked to the\n"
  "> >>> > lru lists of the root memcg again, which could be optimized away with\n"
- "> >>> > the old scheme. \302\240The costs are not measurable, though, even with\n"
+ "> >>> > the old scheme.  The costs are not measurable, though, even with\n"
  "> >>> > worst-case microbenchmarks.\n"
  "> >>> >\n"
  "> >>> > As global reclaim no longer relies on global lru lists, this change is\n"
@@ -87,7 +87,7 @@
  "> >>\n"
  "> >> The number of pages scanned per iteration is essentially\n"
  "> >>\n"
- "> >> \302\240 \302\240 \302\240 \302\240number of lru pages in memcg-zone >> priority\n"
+ "> >>        number of lru pages in memcg-zone >> priority\n"
  "> >>\n"
  "> >> so we scan relatively more pages from B than from A each round.\n"
  "> >>\n"
@@ -129,6 +129,13 @@
  "\tfor each prio:\n"
  "\t  for each zone:\n"
  "\t    for each memcg:\n"
- "\t      do_shrink_zone(prio, zone, sc = { .mem_cgroup = memcg })"
+ "\t      do_shrink_zone(prio, zone, sc = { .mem_cgroup = memcg })\n"
+ "\n"
+ "--\n"
+ "To unsubscribe, send a message with 'unsubscribe linux-mm' in\n"
+ "the body to majordomo@kvack.org.  For more info on Linux MM,\n"
+ "see: http://www.linux-mm.org/ .\n"
+ "Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/\n"
+ "Don't email: <a href=mailto:\"dont@kvack.org\"> email@kvack.org </a>"
 
-b7ad1abb47e3d84884e4c81c6e26abe51e5249eebdcfe01426f6c98f50b83d98
+70c07d91046e77c1e1733e932d0c0990e8e8685ee2397139f97678fc9a022a7f

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.