Commit 014483bc authored by Konstantin Khlebnikov's avatar Konstantin Khlebnikov Committed by Linus Torvalds

mm: mark mm-inline functions as __always_inline

GCC sometimes ignores "inline" directives even for small and simple functions.
This supposed to be fixed in gcc 4.7, but it was released only yesterday.
Signed-off-by: default avatarKonstantin Khlebnikov <khlebnikov@openvz.org>
Acked-by: default avatarKAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Glauber Costa <glommer@parallels.com>
Cc: Michal Hocko <mhocko@suse.cz>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Minchan Kim <minchan@kernel.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 3cb99451
...@@ -21,7 +21,7 @@ static inline int page_is_file_cache(struct page *page) ...@@ -21,7 +21,7 @@ static inline int page_is_file_cache(struct page *page)
return !PageSwapBacked(page); return !PageSwapBacked(page);
} }
static inline void static __always_inline void
add_page_to_lru_list(struct zone *zone, struct page *page, enum lru_list lru) add_page_to_lru_list(struct zone *zone, struct page *page, enum lru_list lru)
{ {
struct lruvec *lruvec; struct lruvec *lruvec;
...@@ -31,7 +31,7 @@ add_page_to_lru_list(struct zone *zone, struct page *page, enum lru_list lru) ...@@ -31,7 +31,7 @@ add_page_to_lru_list(struct zone *zone, struct page *page, enum lru_list lru)
__mod_zone_page_state(zone, NR_LRU_BASE + lru, hpage_nr_pages(page)); __mod_zone_page_state(zone, NR_LRU_BASE + lru, hpage_nr_pages(page));
} }
static inline void static __always_inline void
del_page_from_lru_list(struct zone *zone, struct page *page, enum lru_list lru) del_page_from_lru_list(struct zone *zone, struct page *page, enum lru_list lru)
{ {
mem_cgroup_lru_del_list(page, lru); mem_cgroup_lru_del_list(page, lru);
...@@ -61,7 +61,7 @@ static inline enum lru_list page_lru_base_type(struct page *page) ...@@ -61,7 +61,7 @@ static inline enum lru_list page_lru_base_type(struct page *page)
* Returns the LRU list a page was on, as an index into the array of LRU * Returns the LRU list a page was on, as an index into the array of LRU
* lists; and clears its Unevictable or Active flags, ready for freeing. * lists; and clears its Unevictable or Active flags, ready for freeing.
*/ */
static inline enum lru_list page_off_lru(struct page *page) static __always_inline enum lru_list page_off_lru(struct page *page)
{ {
enum lru_list lru; enum lru_list lru;
...@@ -85,7 +85,7 @@ static inline enum lru_list page_off_lru(struct page *page) ...@@ -85,7 +85,7 @@ static inline enum lru_list page_off_lru(struct page *page)
* Returns the LRU list a page should be on, as an index * Returns the LRU list a page should be on, as an index
* into the array of LRU lists. * into the array of LRU lists.
*/ */
static inline enum lru_list page_lru(struct page *page) static __always_inline enum lru_list page_lru(struct page *page)
{ {
enum lru_list lru; enum lru_list lru;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment