Messages in this thread | | | From | KOSAKI Motohiro <> | Subject | Re: [RFC][PATCH] mm: remove unnecessary loop inside shrink_inactive_list() | Date | Thu, 27 Aug 2009 09:20:35 +0900 (JST) |
| |
> On Fri, Aug 21, 2009 at 07:09:17PM +0800, KOSAKI Motohiro wrote: > > 2009/8/20 Wu Fengguang <fengguang.wu@intel.com>: > > > shrink_inactive_list() won't be called to scan too much pages > > > (unless in hibernation code which is fine) or too few pages (ie. > > > batching is taken care of by the callers). So we can just remove the > > > big loop and isolate the exact number of pages requested. > > > > > > Just a RFC, and a scratch patch to show the basic idea. > > > Please kindly NAK quick if you don't like it ;) > > > > Hm, I think this patch taks only cleanups. right? > > if so, I don't find any objection reason. > > Mostly cleanups, but one behavior change here: > > > > - nr_taken = sc->isolate_pages(sc->swap_cluster_max, > > > + nr_taken = sc->isolate_pages(nr_to_scan, > > > &page_list, &nr_scan, sc->order, mode, > > > zone, sc->mem_cgroup, 0, file); > > The new behavior is to scan exactly the number of pages that > shrink_zone() or other callers tell it. It won't try to "round it up" > to 32 pages. This new behavior is in line with shrink_active_list()'s > current status as well as shrink_zone()'s expectation. > > shrink_zone() may still submit scan requests for <32 pages, which is > suboptimal. I'll try to eliminate that totally with more patches.
Your explanation seems makes sense. I'll wait your next spin :)
-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |