Messages in this thread | | | Date | Thu, 21 Feb 2013 13:42:21 -0800 (PST) | From | Dan Magenheimer <> | Subject | RE: Questin about swap_slot free and invalidate page |
| |
> From: Ric Mason [mailto:ric.masonn@gmail.com] > Subject: Re: Questin about swap_slot free and invalidate page > > 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-v001.pdf > > > > The in-kernel APIs are frontswap and cleancache. For more information about > > tmem, see http://lwn.net/Articles/454795/ > > 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.
| |