Re: [PATCH 7/9] swap_info: swap count continuations

From: Hugh Dickins
Date: Thu Oct 15 2009 - 22:42:27 EST


On Fri, 16 Oct 2009, KAMEZAWA Hiroyuki wrote:
> >
> My concern is that small numbers of swap_map[] which has too much refcnt
> can consume too much pages.
>
> If an entry is shared by 65535, 65535/128 = 512 page will be used.
> (I'm sorry if I don't undestand implementation correctly.)

Ah, you're thinking it's additive: perhaps because I use the name
"continuation", which may give that impression - maybe there's a
better name I can give it.

No, it's multiplicative - just like 999 is almost a thousand, not 27.

If an entry is shared by 65535, then it needs its original swap_map
page (0 to 0x3e) and a continuation page (0 to 0x7f) and another
continuation page (0 to 0x7f): if I've got my arithmetic right,
those three pages can hold a shared count up to 1032191, for
every one of that group of PAGE_SIZE neighbouring pages.

Hugh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/