On Fri, Mar 21, 2014 at 2:17 PM, John Stultz <[email protected]> wrote: > Users of volatile ranges will need to know if memory was discarded. > This patch adds the purged state tracking required to inform userland > when it marks memory as non-volatile that some memory in that range > was purged and needs to be regenerated. > > This simplified implementation which uses some of the logic from > Minchan's earlier efforts, so credit to Minchan for his work. > > Cc: Andrew Morton <[email protected]> > Cc: Android Kernel Team <[email protected]> > Cc: Johannes Weiner <[email protected]> > Cc: Robert Love <[email protected]> > Cc: Mel Gorman <[email protected]> > Cc: Hugh Dickins <[email protected]> > Cc: Dave Hansen <[email protected]> > Cc: Rik van Riel <[email protected]> > Cc: Dmitry Adamushko <[email protected]> > Cc: Neil Brown <[email protected]> > Cc: Andrea Arcangeli <[email protected]> > Cc: Mike Hommey <[email protected]> > Cc: Taras Glek <[email protected]> > Cc: Jan Kara <[email protected]> > Cc: KOSAKI Motohiro <[email protected]> > Cc: Michel Lespinasse <[email protected]> > Cc: Minchan Kim <[email protected]> > Cc: [email protected] <[email protected]> > Signed-off-by: John Stultz <[email protected]> > --- > include/linux/swap.h | 15 ++++++++-- > include/linux/swapops.h | 10 +++++++ > include/linux/vrange.h | 3 ++ > mm/vrange.c | 75 > +++++++++++++++++++++++++++++++++++++++++++++++++ > 4 files changed, 101 insertions(+), 2 deletions(-) > > diff --git a/include/linux/swap.h b/include/linux/swap.h > index 46ba0c6..18c12f9 100644 > --- a/include/linux/swap.h > +++ b/include/linux/swap.h > @@ -70,8 +70,19 @@ static inline int current_is_kswapd(void) > #define SWP_HWPOISON_NUM 0 > #endif > > -#define MAX_SWAPFILES \ > - ((1 << MAX_SWAPFILES_SHIFT) - SWP_MIGRATION_NUM - SWP_HWPOISON_NUM) > + > +/* > + * Purged volatile range pages > + */ > +#define SWP_VRANGE_PURGED_NUM 1 > +#define SWP_VRANGE_PURGED (MAX_SWAPFILES + SWP_HWPOISON_NUM + > SWP_MIGRATION_NUM) > + > + > +#define MAX_SWAPFILES ((1 << MAX_SWAPFILES_SHIFT) \ > + - SWP_MIGRATION_NUM \ > + - SWP_HWPOISON_NUM \ > + - SWP_VRANGE_PURGED_NUM \ > + )
This change hwpoison and migration tag number. maybe ok, maybe not. I'd suggest to use younger number than hwpoison. (That's why hwpoison uses younger number than migration) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

