Re: Atomic operation for physically moving a page (for memorydefragmentation)

From: Hirokazu Takahashi
Date: Wed Jun 23 2004 - 05:38:45 EST


Hi,

> > > I want to copy a page from one physical location
> > to
> > > another (taking the appr. locks).
> >
> > At the risk of sounding stupid, what problem are you
> > trying to solve by copying
> > a page? Not only (as you note) could the page be
> > referenced by multiple
> > processes, it could (conceivably) belong to a kernel
> > slab or something, or be a
> > buffer for an in-flight I/O request, or any number
> > of other possibly-racy
> > situations.
>
> The problem is the memory fragmentation. The code i am
> writing is for the memory defragmentation as proposed
> by Daniel Phillips, my project partner Alok mooley has
> given mailed a simple prototype in the mid of feb.

If you only care about anonymous memory, how do you think
about expanding the COW mechanism?

1. make all pages COW in a process space.
2. force to cause COW fault on the each page.
3. copy from the page to a new allocated page, and discard the old page.

You may preallocate new pages.


Thank you,
Hirokazu Takahashi.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/