[OLPC-devel] CCache progress report [week 4/12]

Nitin Gupta nitingupta.mail at gmail.com
Sun Jun 25 07:57:44 EDT 2006


Hi,

It's now 4 weeks for me with Compressed Caching under SoC.

Progress this week:

I finally got replacing page with 'chunk_head' working :)
[This work is in 'flux' branch of git://dev.laptop.org/projects/linux-mm-cc]
I'll merge this with master branch when I solve problems
mentioned at last.

When page is to be reclaimed, it replaces corres.
entry in radix tree with chunk_head which in turn
points to copy of original page.

Some radix functions in lib/radix-tree.c were added
to do quick update-if-exists operations. These are
almost copy-paste of existing functions but were
required anyway.

When lookup is performed, this chunk_head is again
replaced with original page.

Currently, this is done only for pages that are in vswap.
But, the approch is general enough to do this for page-cache
pages too (with just few additional lines in should_add_to_ccache()
-- though there may be some other issues).

Also, fixed some random problems like when display of
/proc/swaps.


But, there is a *big* simplification:

In all lookup functions, I've replaced read_lock_irq()
with write_lock_irq(). This makes sure that only one
of these lookup functions execute at a time. This
simplifies locking scheme for ccache work a lot but
this is obviously not acceptable for *real* thing.

So, this is exactly is my next TODO:
get them back as read_lock_irq()s and get ready for
kernel fireworks :)  Also, all the important,
compression structure implementation (as on Wiki).

Project Wiki: linux-mm.org/CompressedCaching
Mailing list: linux-mm-cc at laptop.org, linuxcompressed-devel at sourceforge.net
(I will soon leave anything @sf.net, it's CVS is already way out-of-sync)


Best Regards,
Nitin Gupta
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.laptop.org/pipermail/devel/attachments/20060625/6b889a65/attachment.html>


More information about the Devel mailing list