fs/buffer.c: support buffer cache allocations with gfp modifiers
authorGioh Kim <gioh.kim@lge.com>
Fri, 5 Sep 2014 02:04:42 +0000 (22:04 -0400)
committerBen Hutchings <ben@decadent.org.uk>
Wed, 12 Aug 2015 14:33:18 +0000 (16:33 +0200)
commit74e9374ed552160261e29647bf6e1907cdd27523
tree580f3fa5e9b7698f2133c0a5de4a19a2a940a7bd
parent2cae492e593bbd38d39b7883eac8754beb8a1955
fs/buffer.c: support buffer cache allocations with gfp modifiers

commit 3b5e6454aaf6b4439b19400d8365e2ec2d24e411 upstream.

A buffer cache is allocated from movable area because it is referred
for a while and released soon.  But some filesystems are taking buffer
cache for a long time and it can disturb page migration.

New APIs are introduced to allocate buffer cache with user specific
flag.  *_gfp APIs are for user want to set page allocation flag for
page cache allocation.  And *_unmovable APIs are for the user wants to
allocate page cache from non-movable area.

Signed-off-by: Gioh Kim <gioh.kim@lge.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Reviewed-by: Jan Kara <jack@suse.cz>
[bwh: Prerequisite for "bufferhead: Add _gfp version for sb_getblk()".
 Backported to 3.2: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
fs/buffer.c
include/linux/buffer_head.h