Messages in this thread | | | Date | Thu, 26 Mar 2009 17:56:52 +0900 (JST) | From | KOSAKI Motohiro <> | Subject | Re: [patch 3/3] mm: keep pages from unevictable mappings off the LRU lists |
| |
> On Mon, Mar 23, 2009 at 10:53:27AM +0000, David Howells wrote: > > Johannes Weiner <hannes@cmpxchg.org> wrote: > > > > > - if (page_is_file_cache(page)) > > > + if (mapping_unevictable(mapping)) > > > + add_page_to_unevictable_list(page); > > > + else if (page_is_file_cache(page)) > > > > It would be nice to avoid adding an extra test and branch in here. This > > function is used a lot, and quite often we know the answer to the first test > > before we even get here. > > Yes, I thought about that too. So I mounted a tmpfs and dd'd > /dev/zero to a file on it until it ran out of space (around 900M, > without swapping), deleted the file again. I did this in a tight loop > and profiled it. > > I couldn't think of a way that would excercise add_to_page_cache_lru() > more, I hope I didn't overlook anything, please correct if I am wrong. > > If I was not, than the extra checking for unevictable mappings doesn't > make a measurable difference. The function on the vanilla kernel had > a share of 0.2033%, on the patched kernel 0.1953%.
May I ask the number of the cpu of your test box. In general, lock contention possibility depend on #ofCPUs.
So, I and lee mainly talked about large box.
| |