From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from psmtp.com (na3sys010amx116.postini.com [74.125.245.116]) by kanga.kvack.org (Postfix) with SMTP id 263066B0002 for ; Thu, 21 Feb 2013 16:42:43 -0500 (EST) MIME-Version: 1.0 Message-ID: <7793705b-a076-4c5a-be4d-9572d7560860@default> Date: Thu, 21 Feb 2013 13:42:21 -0800 (PST) From: Dan Magenheimer Subject: RE: Questin about swap_slot free and invalidate page References: <20130131051140.GB23548@blaptop> <20130204024950.GD2688@blaptop> <51236C11.1010208@gmail.com> <1f089254-3abe-4c63-a72a-c9e564ae7d0d@default> <51242F0D.4040201@gmail.com> In-Reply-To: <51242F0D.4040201@gmail.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Sender: owner-linux-mm@kvack.org List-ID: To: Ric Mason Cc: Minchan Kim , Hugh Dickins , Nitin Gupta , Seth Jennings , Konrad Rzeszutek Wilk , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Andrew Morton > From: Ric Mason [mailto:ric.masonn@gmail.com] > Subject: Re: Questin about swap_slot free and invalidate page >=20 > On 02/19/2013 11:27 PM, Dan Magenheimer wrote: > >> From: Ric Mason [mailto:ric.masonn@gmail.com] > >>> Hugh is right that handling the possibility of duplicates is > >>> part of the tmem ABI. If there is any possibility of duplicates, > >>> the ABI defines how a backend must handle them to avoid data > >>> coherency issues. > >>> > >>> The kernel implements an in-kernel API which implements the tmem > >>> ABI. If the frontend and backend can always agree that duplicate > >> Which ABI in zcache implement that? > > https://oss.oracle.com/projects/tmem/dist/documentation/api/tmemspec-v0= 01.pdf > > > > The in-kernel APIs are frontswap and cleancache. For more information = about > > tmem, see http://lwn.net/Articles/454795/ >=20 > But you mentioned that you have in-kernel API which can handle > duplicate. Do you mean zcache_cleancache/frontswap_put_page? I think > they just overwrite instead of optional flush the page on the > second(duplicate) put as mentioned in your tmemspec. Maybe I am misunderstanding your question... The spec allows overwrite (and return success) OR flush the page (and return failure). Zcache does the latter (flush). The code that implements it is in tmem_put. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org