Re: Questin about swap_slot free and invalidate page

From: Ric Mason
Date: Thu Feb 21 2013 - 22:13:50 EST

On 02/22/2013 05:42 AM, Dan Magenheimer wrote:
From: Ric Mason [mailto:ric.masonn@xxxxxxxxx]
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@xxxxxxxxx]
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?

The in-kernel APIs are frontswap and cleancache. For more information about
tmem, see
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?

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at