Re: [PATCH] Check for compound pages in set_page_dirty()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 26 Jul 2007, Hugh Dickins wrote:

> > We would need to redirect all of the page state determinations and changes 
> > to the head page anyways. So the memory.c code would have to deal with two 
> > struct page pointers: One to the head where the state is kept and one to 
> > the tail page that contains the actual chunk of data we are interested in. 
> > The tail page pointer is only used for address determinations.
> > 
> > VM functions that manipulate the state of a page (like set_page_dirty) 
> > could rely on only getting page heads.
> 
> Maybe.  Sounds ugly.  "would": so your patches remain just an RFC?

The large blocksize patch currently does not support mmap. I just have 
some patches here that implement some of that using the approach that I 
described.

And without mmap support we never have to use references to tail pages 
anyways. 

We could avoid references to tail pages if we would not allow the mapping 
of 4k subsections of larger pages but instead require that a compound page 
always be mapped in its entirety. That would keep the necessary changes to 
memory.c minimal but would cause trouble for applications that expect to 
be able to map 4k chunks.

If we want to support transparent use of 2M pages then we need to do this 
anyways but at that point we can still have a single large "pte" (well 
really a pmd that we treat as a pte).

If we f.e. require an order 3 page to be mapped in one go then we would 
have to install 8 ptes at once. If we allow mapping of 4k sections that we 
can have mm/memory.c deal with one pte at a time.




-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux