lkml.org 
[lkml]   [2007]   [Apr]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [rfc] no ZERO_PAGE?
    On Wed, Apr 04, 2007 at 01:11:11PM -0700, David Miller wrote:
    > From: Linus Torvalds <torvalds@linux-foundation.org>
    > Date: Wed, 4 Apr 2007 08:35:30 -0700 (PDT)
    >
    > > Anyway, I'm not against this, but I can see somebody actually *wanting*
    > > the ZERO page in some cases. I've used the fact for TLB testing, for
    > > example, by just doing a big malloc(), and knowing that the kernel will
    > > re-use the ZERO_PAGE so that I don't get any cache effects (well, at least
    > > not any *physical* cache effects. Virtually indexed cached will still show
    > > effects of it, of course, but I haven't cared).
    > >
    > > That's an example of an app that actually cares about the page allocation
    > > (or, in this case, the lack there-of). Not an important one, but maybe
    > > there are important ones that care?
    >
    > If we're going to consider this seriously, there is a case I know of.
    > Look at flush_dcache_page()'s test for ZERO_PAGE() on sparc64, there
    > is an instructive comment:
    >
    > /* Do not bother with the expensive D-cache flush if it
    > * is merely the zero page. The 'bigcore' testcase in GDB
    > * causes this case to run millions of times.
    > */
    > if (page == ZERO_PAGE(0))
    > return;
    >
    > basically what the GDB test case does it mmap() an enormous anonymous
    > area, not touch it, then dump core.
    >
    > As I understand the patch being considered to remove ZERO_PAGE(), this
    > kind of core dump will cause a lot of pages to be allocated, probably
    > eating up a lot of system time as well as memory.

    Yeah. Well it is trivial to leave ZERO_PAGE in get_user_pages, however
    in the longer run it would be nice to get rid of ZERO_PAGE completely
    so we need an alternative.

    I've been working on a patch for core dumping that can detect unfaulted
    anonymous memory and skip it without doing the ZERO_PAGE comparision.
    -
    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/

    \
     
     \ /
      Last update: 2007-04-05 04:07    [W:0.024 / U:0.072 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site