diff options
author | Konstantin Khlebnikov <khlebnikov@openvz.org> | 2012-05-29 18:06:53 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-05-29 19:22:25 -0400 |
commit | 014483bcccc5edbf861d89dc1a6f7cdc02f9f4c0 (patch) | |
tree | 82bd32af5d1d7322b7ad1cc00b2c6ded99834031 /include/linux | |
parent | 3cb9945179bd04e9282f31a1173ac11b1300c462 (diff) |
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: Konstantin Khlebnikov <khlebnikov@openvz.org>
Acked-by: KAMEZAWA 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: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/mm_inline.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/include/linux/mm_inline.h b/include/linux/mm_inline.h index 227fd3e9a9c9..16d45d9c31a4 100644 --- a/include/linux/mm_inline.h +++ b/include/linux/mm_inline.h | |||
@@ -21,7 +21,7 @@ static inline int page_is_file_cache(struct page *page) | |||
21 | return !PageSwapBacked(page); | 21 | return !PageSwapBacked(page); |
22 | } | 22 | } |
23 | 23 | ||
24 | static inline void | 24 | static __always_inline void |
25 | add_page_to_lru_list(struct zone *zone, struct page *page, enum lru_list lru) | 25 | add_page_to_lru_list(struct zone *zone, struct page *page, enum lru_list lru) |
26 | { | 26 | { |
27 | struct lruvec *lruvec; | 27 | struct lruvec *lruvec; |
@@ -31,7 +31,7 @@ add_page_to_lru_list(struct zone *zone, struct page *page, enum lru_list lru) | |||
31 | __mod_zone_page_state(zone, NR_LRU_BASE + lru, hpage_nr_pages(page)); | 31 | __mod_zone_page_state(zone, NR_LRU_BASE + lru, hpage_nr_pages(page)); |
32 | } | 32 | } |
33 | 33 | ||
34 | static inline void | 34 | static __always_inline void |
35 | del_page_from_lru_list(struct zone *zone, struct page *page, enum lru_list lru) | 35 | del_page_from_lru_list(struct zone *zone, struct page *page, enum lru_list lru) |
36 | { | 36 | { |
37 | mem_cgroup_lru_del_list(page, lru); | 37 | mem_cgroup_lru_del_list(page, lru); |
@@ -61,7 +61,7 @@ static inline enum lru_list page_lru_base_type(struct page *page) | |||
61 | * Returns the LRU list a page was on, as an index into the array of LRU | 61 | * Returns the LRU list a page was on, as an index into the array of LRU |
62 | * lists; and clears its Unevictable or Active flags, ready for freeing. | 62 | * lists; and clears its Unevictable or Active flags, ready for freeing. |
63 | */ | 63 | */ |
64 | static inline enum lru_list page_off_lru(struct page *page) | 64 | static __always_inline enum lru_list page_off_lru(struct page *page) |
65 | { | 65 | { |
66 | enum lru_list lru; | 66 | enum lru_list lru; |
67 | 67 | ||
@@ -85,7 +85,7 @@ static inline enum lru_list page_off_lru(struct page *page) | |||
85 | * Returns the LRU list a page should be on, as an index | 85 | * Returns the LRU list a page should be on, as an index |
86 | * into the array of LRU lists. | 86 | * into the array of LRU lists. |
87 | */ | 87 | */ |
88 | static inline enum lru_list page_lru(struct page *page) | 88 | static __always_inline enum lru_list page_lru(struct page *page) |
89 | { | 89 | { |
90 | enum lru_list lru; | 90 | enum lru_list lru; |
91 | 91 | ||