[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4BD6F81B.1010606@vflare.org>
Date: Tue, 27 Apr 2010 20:13:39 +0530
From: Nitin Gupta <ngupta@...are.org>
To: Pavel Machek <pavel@....cz>
CC: Dan Magenheimer <dan.magenheimer@...cle.com>,
Avi Kivity <avi@...hat.com>, linux-kernel@...r.kernel.org,
linux-mm@...ck.org, jeremy@...p.org, hugh.dickins@...cali.co.uk,
JBeulich@...ell.com, chris.mason@...cle.com,
kurt.hackel@...cle.com, dave.mccracken@...cle.com, npiggin@...e.de,
akpm@...ux-foundation.org, riel@...hat.com
Subject: Re: Frontswap [PATCH 0/4] (was Transcendent Memory): overview
On 04/27/2010 06:25 PM, Pavel Machek wrote:
>
>>> Can we extend it? Adding new APIs is easy, but harder to maintain in
>>> the long term.
>>
>> Umm... I think the difference between a "new" API and extending
>> an existing one here is a choice of semantics. As designed, frontswap
>> is an extremely simple, only-very-slightly-intrusive set of hooks that
>> allows swap pages to, under some conditions, go to pseudo-RAM instead
> ...
>> "Extending" the existing swap API, which has largely been untouched for
>> many years, seems like a significantly more complex and error-prone
>> undertaking that will affect nearly all Linux users with a likely long
>> bug tail. And, by the way, there is no existence proof that it
>> will be useful.
>
>> Seems like a no-brainer to me.
>
> Stop right here. Instead of improving existing swap api, you just
> create one because it is less work.
>
> We do not want apis to cummulate; please just fix the existing one.
I'm a bit confused: What do you mean by 'existing swap API'?
Frontswap simply hooks in swap_readpage() and swap_writepage() to
call frontswap_{get,put}_page() respectively. Now to avoid a hardcoded
implementation of these function, it introduces struct frontswap_ops
so that custom implementations fronswap get/put/etc. functions can be
provided. This allows easy implementation of swap-to-hypervisor,
in-memory-compressed-swapping etc. with common set of hooks.
So, how frontswap approach can be seen as introducing a new API?
Thanks,
Nitin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists