]> git.baikalelectronics.ru Git - kernel.git/commit
tmpfs: use kmemdup for short symlinks
authorHugh Dickins <hughd@google.com>
Wed, 3 Aug 2011 23:21:26 +0000 (16:21 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 4 Aug 2011 00:25:24 +0000 (14:25 -1000)
commit7c936c0360d1fd74e497af265c279aea080ec2fe
tree7a0a704ed4bc79dbba50454093469d0ce31ef1a4
parent6e49e4a63de36fe05e7abe8c68d5f4cb1baa9c30
tmpfs: use kmemdup for short symlinks

But we've not yet removed the old swp_entry_t i_direct[16] from
shmem_inode_info.  That's because it was still being shared with the
inline symlink.  Remove it now (saving 64 or 128 bytes from shmem inode
size), and use kmemdup() for short symlinks, say, those up to 128 bytes.

I wonder why mpol_free_shared_policy() is done in shmem_destroy_inode()
rather than shmem_evict_inode(), where we usually do such freeing? I
guess it doesn't matter, and I'm not into NUMA mpol testing right now.

Signed-off-by: Hugh Dickins <hughd@google.com>
Acked-by: Rik van Riel <riel@redhat.com>
Reviewed-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/linux/shmem_fs.h
mm/shmem.c