[issue1771] Restore hysteresis to vm_zeroidle

Matthew Dillon dillon at apollo.backplane.com
Tue May 25 16:49:26 PDT 2010


:As written I think the patch behaves like this:
:
:if (zero_state == 0) /* We've not hit the upper limit */
:   if (zeroed pages >= high count) /* hit the upper limit */
:      zero_state = 1;
:      return STOP_ZEROING_PAGES;
:   return KEEP_ZEROING_PAGES;
:
:if (zero_state == 1) /* We've hit the upper limit before */
:   if (zeroed_pages >= LOW MARK) /* Still have free pages; also covers high */
:      return STOP_ZEROING_PAGES;
:   /* We've seen an upper limit; now we're below the lower limit. */
:   /* Restore to 0 (not seen high limit) */
:   zero_state = 0;
:   return KEEP_ZEROING_PAGES;
:
:
:What was wrong with this?
:
:-- vs

    Well, which bit of code is easier to read?

					-Matt






More information about the Submit mailing list