Re: [PATCH 0/3] ramzswap: Eliminate stale data from compressed memory(v2)
From: Pekka Enberg
Date: Sat May 08 2010 - 02:29:36 EST
Hi Andrew,
Andrew Morton wrote:
Looking at the changelogs I'm seeing no information about the
effectiveness of ramzswap - how much memory it saves. As that's the
entire point of the driver, that would be a rather important thing to
have included in the commit comments. We cannot make the decision to
merge ramzswap without this info.
There's some benchmarks at ramzswap pages:
http://code.google.com/p/compcache/wiki/Performance
http://code.google.com/p/compcache/wiki/SwapDiskVsRamz
[ snip bunch of comments from Andrew that need to be addressed,
hopefully we'll get some help from the staging people ]
The driver appears to be controlled by some nasty-looking ioctl against
some fd. None of it is documented anywhere. It should be. You're
proposing here a permanent extension to the kernel ABI which we will
need to maintain for ever. That's a big deal and it is the very first
thing reviewers will look at, before even considering the code.
I thought we got rid of it? Nitin?
RZSIO_GET_STATS looks to be hopeless from a long-term maintainability
POV. It's debug code and it would be better to move it into a debugfs
file, where we can then add and remove things at will.
Yup.
I've completely forgotten why we need this xvmalloc thing and I don't
recall whether we decided it would be a good thing to have as a generic
facility and of course it's all unexplained and undocumented. I won't
be looking at it today, for this reason.
We need it because the slab allocator is not a good fit for this special
purpose driver due to fragmentation. Nitin, you had a nice web page
showing all the relevant numbers but I can't find it anymore.
Andrew, FWIW, I'm ok with xvmalloc() for this particular driver. There
was some discussion on making it more generic but I don't see it as a
merge-stopper for the driver.
The overall idea and utility appear to be good and desirable, IMO. But
the code isn't productively reviewable in this state.
I agree that the whole graduation step from staging to kernel proper is
not well-defined. Any suggestions? That said, I hope that doesn't stop
us from merging this patch series because the lack of notifiers cripples
the current ramzswap performance.
Pekka
--
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/