diff for duplicates of <20101214070005.GB6940@localhost> diff --git a/a/1.txt b/N1/1.txt index d95c645..4fcf013 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -108,3 +108,10 @@ the X axis direction. So the current form is actually more simple. Thanks, Fengguang + +-- +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 policy in Canada: sign http://dissolvethecrtc.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 521b215..3db3c2c 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -133,6 +133,13 @@ "the X axis direction. So the current form is actually more simple.\n" "\n" "Thanks,\n" - Fengguang + "Fengguang\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 policy in Canada: sign http://dissolvethecrtc.ca/\n" + "Don't email: <a href=mailto:\"dont@kvack.org\"> email@kvack.org </a>" -6973f68ac54bf41faea5d67c9a7ad4e307fcb5df77fb269bc2d740adae8911db +ce725db9824abda1267e07a38b8b7d8c0d28fc1cf1085bcd6bbfcf3413ee4e0c
diff --git a/a/1.txt b/N2/1.txt index d95c645..97326d1 100644 --- a/a/1.txt +++ b/N2/1.txt @@ -9,21 +9,21 @@ On Tue, Dec 14, 2010 at 09:21:19AM +0800, Yan Zheng wrote: > > pause time will be (given the same fluctuation of bdi_dirty). > > > > For example, if A drifts to A', its pause time may drift from 5ms to -> > 6ms, while B to B' may drift from 50ms to 90ms. It's much larger +> > 6ms, while B to B' may drift from 50ms to 90ms. A It's much larger > > fluctuations in relative ratio as well as absolute time. > > > > Fig.1 before patch, gap (C-B) is too low to get smooth pause time > > > > throttle_bandwidth_A = bdi_bandwidth .........o -> > | o <= A' -> > | o -> > | o -> > | o -> > | o +> > A A A A A A A A A A A A A A A A A A A A A A A | o <= A' +> > A A A A A A A A A A A A A A A A A A A A A A A | A o +> > A A A A A A A A A A A A A A A A A A A A A A A | A A o +> > A A A A A A A A A A A A A A A A A A A A A A A | A A A o +> > A A A A A A A A A A A A A A A A A A A A A A A | A A A A o > > throttle_bandwidth_B = bdi_bandwidth / 4 .....|...........o -> > | | o <= B' +> > A A A A A A A A A A A A A A A A A A A A A A A | A A A A A | o <= B' > > ----------------------------------------------+-----------+---o -> > A B C +> > A A A A A A A A A A A A A A A A A A A A A A A A A A A A A B A C > > > > The solution is to lower the slope of the throttle line accordingly, > > which makes B stabilize at some point more far away from C. @@ -31,67 +31,67 @@ On Tue, Dec 14, 2010 at 09:21:19AM +0800, Yan Zheng wrote: > > Fig.2 after patch > > > > throttle_bandwidth_A = bdi_bandwidth .........o -> > | o <= A' -> > | o -> > | o -> > lowered max throttle bandwidth for B ===> * o -> > | * o -> > throttle_bandwidth_B = bdi_bandwidth / 4 .............* o -> > | | * o +> > A A A A A A A A A A A A A A A A A A A A A A A | o <= A' +> > A A A A A A A A A A A A A A A A A A A A A A A | A o +> > A A A A A A A A A A A A A A A A A A A A A A A | A A o +> > A A lowered max throttle bandwidth for B ===> * A A A o +> > A A A A A A A A A A A A A A A A A A A A A A A | A * A A o +> > throttle_bandwidth_B = bdi_bandwidth / 4 .............* A o +> > A A A A A A A A A A A A A A A A A A A A A A A | A A A | A * o > > ----------------------------------------------+-------+-------o -> > A B C +> > A A A A A A A A A A A A A A A A A A A A A A A A A A A B A A A C > > > > Note that C is actually different points for 1-dirty and 4-dirtiers > > cases, but for easy graphing, we move them together. > > > > Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> > > --- -> > mm/page-writeback.c | 16 +++++++++++++--- -> > 1 file changed, 13 insertions(+), 3 deletions(-) +> > A mm/page-writeback.c | A 16 +++++++++++++--- +> > A 1 file changed, 13 insertions(+), 3 deletions(-) > > > > --- linux-next.orig/mm/page-writeback.c 2010-12-13 21:46:14.000000000 +0800 -> > +++ linux-next/mm/page-writeback.c 2010-12-13 21:46:15.000000000 +0800 +> > +++ linux-next/mm/page-writeback.c A A A 2010-12-13 21:46:15.000000000 +0800 > > @@ -587,6 +587,7 @@ static void balance_dirty_pages(struct a -> > unsigned long background_thresh; -> > unsigned long dirty_thresh; -> > unsigned long bdi_thresh; -> > + unsigned long task_thresh; -> > unsigned long long bw; -> > unsigned long period; -> > unsigned long pause = 0; +> > A A A A unsigned long background_thresh; +> > A A A A unsigned long dirty_thresh; +> > A A A A unsigned long bdi_thresh; +> > + A A A unsigned long task_thresh; +> > A A A A unsigned long long bw; +> > A A A A unsigned long period; +> > A A A A unsigned long pause = 0; > > @@ -616,7 +617,7 @@ static void balance_dirty_pages(struct a -> > break; +> > A A A A A A A A A A A A break; > > -> > bdi_thresh = bdi_dirty_limit(bdi, dirty_thresh, nr_dirty); -> > - bdi_thresh = task_dirty_limit(current, bdi_thresh); -> > + task_thresh = task_dirty_limit(current, bdi_thresh); +> > A A A A A A A A bdi_thresh = bdi_dirty_limit(bdi, dirty_thresh, nr_dirty); +> > - A A A A A A A bdi_thresh = task_dirty_limit(current, bdi_thresh); +> > + A A A A A A A task_thresh = task_dirty_limit(current, bdi_thresh); > > -> > /* -> > * In order to avoid the stacked BDI deadlock we need +> > A A A A A A A A /* +> > A A A A A A A A * In order to avoid the stacked BDI deadlock we need > > @@ -638,14 +639,23 @@ static void balance_dirty_pages(struct a > > -> > bdi_update_bandwidth(bdi, start_time, bdi_dirty, bdi_thresh); +> > A A A A A A A A bdi_update_bandwidth(bdi, start_time, bdi_dirty, bdi_thresh); > > -> > - if (bdi_dirty >= bdi_thresh || nr_dirty > dirty_thresh) { -> > + if (bdi_dirty >= task_thresh || nr_dirty > dirty_thresh) { -> > pause = MAX_PAUSE; -> > goto pause; -> > } +> > - A A A A A A A if (bdi_dirty >= bdi_thresh || nr_dirty > dirty_thresh) { +> > + A A A A A A A if (bdi_dirty >= task_thresh || nr_dirty > dirty_thresh) { +> > A A A A A A A A A A A A pause = MAX_PAUSE; +> > A A A A A A A A A A A A goto pause; +> > A A A A A A A A } > > -> > + /* -> > + * When bdi_dirty grows closer to bdi_thresh, it indicates more -> > + * concurrent dirtiers. Proportionally lower the max throttle -> > + * bandwidth. This will resist bdi_dirty from approaching to -> > + * close to task_thresh, and help reduce fluctuations of pause -> > + * time when there are lots of dirtiers. -> > + */ -> > bw = bdi->write_bandwidth; +> > + A A A A A A A /* +> > + A A A A A A A A * When bdi_dirty grows closer to bdi_thresh, it indicates more +> > + A A A A A A A A * concurrent dirtiers. Proportionally lower the max throttle +> > + A A A A A A A A * bandwidth. This will resist bdi_dirty from approaching to +> > + A A A A A A A A * close to task_thresh, and help reduce fluctuations of pause +> > + A A A A A A A A * time when there are lots of dirtiers. +> > + A A A A A A A A */ +> > A A A A A A A A bw = bdi->write_bandwidth; > > - -> > bw = bw * (bdi_thresh - bdi_dirty); -> > + do_div(bw, bdi_thresh / BDI_SOFT_DIRTY_LIMIT + 1); +> > A A A A A A A A bw = bw * (bdi_thresh - bdi_dirty); +> > + A A A A A A A do_div(bw, bdi_thresh / BDI_SOFT_DIRTY_LIMIT + 1); > > + -> > + bw = bw * (task_thresh - bdi_dirty); -> > do_div(bw, bdi_thresh / TASK_SOFT_DIRTY_LIMIT + 1); +> > + A A A A A A A bw = bw * (task_thresh - bdi_dirty); +> > A A A A A A A A do_div(bw, bdi_thresh / TASK_SOFT_DIRTY_LIMIT + 1); > > Maybe changing this line to "do_div(bw, task_thresh / > TASK_SOFT_DIRTY_LIMIT + 1);" @@ -108,3 +108,10 @@ the X axis direction. So the current form is actually more simple. Thanks, Fengguang + +-- +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 policy in Canada: sign http://dissolvethecrtc.ca/ +Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> diff --git a/a/content_digest b/N2/content_digest index 521b215..9db5ad0 100644 --- a/a/content_digest +++ b/N2/content_digest @@ -35,21 +35,21 @@ "> > pause time will be (given the same fluctuation of bdi_dirty).\n" "> >\n" "> > For example, if A drifts to A', its pause time may drift from 5ms to\n" - "> > 6ms, while B to B' may drift from 50ms to 90ms. \302\240It's much larger\n" + "> > 6ms, while B to B' may drift from 50ms to 90ms. A It's much larger\n" "> > fluctuations in relative ratio as well as absolute time.\n" "> >\n" "> > Fig.1 before patch, gap (C-B) is too low to get smooth pause time\n" "> >\n" "> > throttle_bandwidth_A = bdi_bandwidth .........o\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240| o <= A'\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240| \302\240 o\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240| \302\240 \302\240 o\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240| \302\240 \302\240 \302\240 o\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240| \302\240 \302\240 \302\240 \302\240 o\n" + "> > A A A A A A A A A A A A A A A A A A A A A A A | o <= A'\n" + "> > A A A A A A A A A A A A A A A A A A A A A A A | A o\n" + "> > A A A A A A A A A A A A A A A A A A A A A A A | A A o\n" + "> > A A A A A A A A A A A A A A A A A A A A A A A | A A A o\n" + "> > A A A A A A A A A A A A A A A A A A A A A A A | A A A A o\n" "> > throttle_bandwidth_B = bdi_bandwidth / 4 .....|...........o\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240| \302\240 \302\240 \302\240 \302\240 \302\240 | o <= B'\n" + "> > A A A A A A A A A A A A A A A A A A A A A A A | A A A A A | o <= B'\n" "> > ----------------------------------------------+-----------+---o\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240A \302\240 \302\240 \302\240 \302\240 \302\240 B \302\240 C\n" + "> > A A A A A A A A A A A A A A A A A A A A A A A A A A A A A B A C\n" "> >\n" "> > The solution is to lower the slope of the throttle line accordingly,\n" "> > which makes B stabilize at some point more far away from C.\n" @@ -57,67 +57,67 @@ "> > Fig.2 after patch\n" "> >\n" "> > throttle_bandwidth_A = bdi_bandwidth .........o\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240| o <= A'\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240| \302\240 o\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240| \302\240 \302\240 o\n" - "> > \302\240 \302\240lowered max throttle bandwidth for B ===> * \302\240 \302\240 \302\240 o\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240| \302\240 * \302\240 \302\240 o\n" - "> > throttle_bandwidth_B = bdi_bandwidth / 4 .............* \302\240 o\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240| \302\240 \302\240 \302\240 | \302\240 * o\n" + "> > A A A A A A A A A A A A A A A A A A A A A A A | o <= A'\n" + "> > A A A A A A A A A A A A A A A A A A A A A A A | A o\n" + "> > A A A A A A A A A A A A A A A A A A A A A A A | A A o\n" + "> > A A lowered max throttle bandwidth for B ===> * A A A o\n" + "> > A A A A A A A A A A A A A A A A A A A A A A A | A * A A o\n" + "> > throttle_bandwidth_B = bdi_bandwidth / 4 .............* A o\n" + "> > A A A A A A A A A A A A A A A A A A A A A A A | A A A | A * o\n" "> > ----------------------------------------------+-------+-------o\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240A \302\240 \302\240 \302\240 B \302\240 \302\240 \302\240 C\n" + "> > A A A A A A A A A A A A A A A A A A A A A A A A A A A B A A A C\n" "> >\n" "> > Note that C is actually different points for 1-dirty and 4-dirtiers\n" "> > cases, but for easy graphing, we move them together.\n" "> >\n" "> > Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>\n" "> > ---\n" - "> > \302\240mm/page-writeback.c | \302\240 16 +++++++++++++---\n" - "> > \302\2401 file changed, 13 insertions(+), 3 deletions(-)\n" + "> > A mm/page-writeback.c | A 16 +++++++++++++---\n" + "> > A 1 file changed, 13 insertions(+), 3 deletions(-)\n" "> >\n" "> > --- linux-next.orig/mm/page-writeback.c 2010-12-13 21:46:14.000000000 +0800\n" - "> > +++ linux-next/mm/page-writeback.c \302\240 \302\240 \302\2402010-12-13 21:46:15.000000000 +0800\n" + "> > +++ linux-next/mm/page-writeback.c A A A 2010-12-13 21:46:15.000000000 +0800\n" "> > @@ -587,6 +587,7 @@ static void balance_dirty_pages(struct a\n" - "> > \302\240 \302\240 \302\240 \302\240unsigned long background_thresh;\n" - "> > \302\240 \302\240 \302\240 \302\240unsigned long dirty_thresh;\n" - "> > \302\240 \302\240 \302\240 \302\240unsigned long bdi_thresh;\n" - "> > + \302\240 \302\240 \302\240 unsigned long task_thresh;\n" - "> > \302\240 \302\240 \302\240 \302\240unsigned long long bw;\n" - "> > \302\240 \302\240 \302\240 \302\240unsigned long period;\n" - "> > \302\240 \302\240 \302\240 \302\240unsigned long pause = 0;\n" + "> > A A A A unsigned long background_thresh;\n" + "> > A A A A unsigned long dirty_thresh;\n" + "> > A A A A unsigned long bdi_thresh;\n" + "> > + A A A unsigned long task_thresh;\n" + "> > A A A A unsigned long long bw;\n" + "> > A A A A unsigned long period;\n" + "> > A A A A unsigned long pause = 0;\n" "> > @@ -616,7 +617,7 @@ static void balance_dirty_pages(struct a\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240break;\n" + "> > A A A A A A A A A A A A break;\n" "> >\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240bdi_thresh = bdi_dirty_limit(bdi, dirty_thresh, nr_dirty);\n" - "> > - \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 bdi_thresh = task_dirty_limit(current, bdi_thresh);\n" - "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 task_thresh = task_dirty_limit(current, bdi_thresh);\n" + "> > A A A A A A A A bdi_thresh = bdi_dirty_limit(bdi, dirty_thresh, nr_dirty);\n" + "> > - A A A A A A A bdi_thresh = task_dirty_limit(current, bdi_thresh);\n" + "> > + A A A A A A A task_thresh = task_dirty_limit(current, bdi_thresh);\n" "> >\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240/*\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 * In order to avoid the stacked BDI deadlock we need\n" + "> > A A A A A A A A /*\n" + "> > A A A A A A A A * In order to avoid the stacked BDI deadlock we need\n" "> > @@ -638,14 +639,23 @@ static void balance_dirty_pages(struct a\n" "> >\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240bdi_update_bandwidth(bdi, start_time, bdi_dirty, bdi_thresh);\n" + "> > A A A A A A A A bdi_update_bandwidth(bdi, start_time, bdi_dirty, bdi_thresh);\n" "> >\n" - "> > - \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 if (bdi_dirty >= bdi_thresh || nr_dirty > dirty_thresh) {\n" - "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 if (bdi_dirty >= task_thresh || nr_dirty > dirty_thresh) {\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240pause = MAX_PAUSE;\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240goto pause;\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240}\n" + "> > - A A A A A A A if (bdi_dirty >= bdi_thresh || nr_dirty > dirty_thresh) {\n" + "> > + A A A A A A A if (bdi_dirty >= task_thresh || nr_dirty > dirty_thresh) {\n" + "> > A A A A A A A A A A A A pause = MAX_PAUSE;\n" + "> > A A A A A A A A A A A A goto pause;\n" + "> > A A A A A A A A }\n" "> >\n" - "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 /*\n" - "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240* When bdi_dirty grows closer to bdi_thresh, it indicates more\n" - "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240* concurrent dirtiers. Proportionally lower the max throttle\n" - "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240* bandwidth. This will resist bdi_dirty from approaching to\n" - "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240* close to task_thresh, and help reduce fluctuations of pause\n" - "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240* time when there are lots of dirtiers.\n" - "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240*/\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240bw = bdi->write_bandwidth;\n" + "> > + A A A A A A A /*\n" + "> > + A A A A A A A A * When bdi_dirty grows closer to bdi_thresh, it indicates more\n" + "> > + A A A A A A A A * concurrent dirtiers. Proportionally lower the max throttle\n" + "> > + A A A A A A A A * bandwidth. This will resist bdi_dirty from approaching to\n" + "> > + A A A A A A A A * close to task_thresh, and help reduce fluctuations of pause\n" + "> > + A A A A A A A A * time when there are lots of dirtiers.\n" + "> > + A A A A A A A A */\n" + "> > A A A A A A A A bw = bdi->write_bandwidth;\n" "> > -\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240bw = bw * (bdi_thresh - bdi_dirty);\n" - "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 do_div(bw, bdi_thresh / BDI_SOFT_DIRTY_LIMIT + 1);\n" + "> > A A A A A A A A bw = bw * (bdi_thresh - bdi_dirty);\n" + "> > + A A A A A A A do_div(bw, bdi_thresh / BDI_SOFT_DIRTY_LIMIT + 1);\n" "> > +\n" - "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 bw = bw * (task_thresh - bdi_dirty);\n" - "> > \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240do_div(bw, bdi_thresh / TASK_SOFT_DIRTY_LIMIT + 1);\n" + "> > + A A A A A A A bw = bw * (task_thresh - bdi_dirty);\n" + "> > A A A A A A A A do_div(bw, bdi_thresh / TASK_SOFT_DIRTY_LIMIT + 1);\n" "> \n" "> Maybe changing this line to \"do_div(bw, task_thresh /\n" "> TASK_SOFT_DIRTY_LIMIT + 1);\"\n" @@ -133,6 +133,13 @@ "the X axis direction. So the current form is actually more simple.\n" "\n" "Thanks,\n" - Fengguang + "Fengguang\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 policy in Canada: sign http://dissolvethecrtc.ca/\n" + "Don't email: <a href=mailto:\"dont@kvack.org\"> email@kvack.org </a>" -6973f68ac54bf41faea5d67c9a7ad4e307fcb5df77fb269bc2d740adae8911db +7a6667c6d695e50ab391dbc816617eff5a3488b6feb6181a4034ac13f4235e9a
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.