Re: [PATCH 00 of 41] Transparent Hugepage Support #17

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 12 Apr 2010 13:02:34 +0300 Avi Kivity <avi@xxxxxxxxxx> wrote:

> The only scenario I can see where it degrades is that you have a dcache 
> load that spills over to all of memory, then falls back leaving a pinned 
> page in every huge frame.  It can happen, but I don't see it as a likely 
> scenario.  But maybe I'm missing something.

<prehistoric memory>

This used to happen fairly easily.  You have a directory tree and some
app which walks down and across it, stat()ing regular files therein. 
So you end up with dentries and inodes which are laid out in memory as
dir-file-file-file-file-...-file-dir-file-...  Then the file
dentries/inodes get reclaimed and you're left with a sparse collection
of directory dcache/icache entries - massively fragmented.

I forget _why_ it happened.  Perhaps because S_ISREG cache items aren't
pinned by anything, but S_ISDIR cache items are pinned by their children
so it takes many more expiry rounds to get rid of them.

There was talk about fixing this, perhaps by using different slab
caches for dirs vs files.  Hard, because the type of the file/inode
isn't known at allocation time.  Nothing happened about it.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxxx  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]