Skip to content

Commit

Permalink
mm: mark mm-inline functions as __always_inline
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Konstantin Khlebnikov authored and Linus Torvalds committed May 29, 2012
1 parent 3cb9945 commit 014483b
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions include/linux/mm_inline.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ static inline int page_is_file_cache(struct page *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)
{
struct lruvec *lruvec;
Expand All @@ -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));
}

static inline void
static __always_inline void
del_page_from_lru_list(struct zone *zone, struct page *page, enum lru_list lru)
{
mem_cgroup_lru_del_list(page, lru);
Expand Down Expand Up @@ -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
* 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;

Expand All @@ -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
* 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;

Expand Down

0 comments on commit 014483b

Please sign in to comment.