Messages in this thread | | | Date | Fri, 22 Feb 2013 11:13:23 +0800 | From | Ric Mason <> | Subject | Re: Questin about swap_slot free and invalidate page |
| |
On 02/22/2013 05:42 AM, Dan Magenheimer wrote: >> 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.
Thanks for your point out. Pers pages can have duplicate put since swap cache page can be reused. Can eph pages also have duplicate put? If yes, when can happen?
>
| |