[PATCH 1/2] mm: introduce page reference manipulation functions

2016-02-14 Thread js1304
From: Joonsoo Kim Success of CMA allocation largely depends on success of migration and key factor of it is page reference count. Until now, page reference is manipulated by direct calling atomic functions so we cannot follow up who and where manipulate it. Then, it is hard to find actual reason

Re: [PATCH 1/2] mm: introduce page reference manipulation functions

2015-11-10 Thread Michal Nazarewicz
On Mon, Nov 09 2015, Joonsoo Kim wrote: > Success of CMA allocation largely depends on success of migration > and key factor of it is page reference count. Until now, page reference > is manipulated by direct calling atomic functions so we cannot follow up > who and where manipulate it. Then, it is

Re: [PATCH 1/2] mm: introduce page reference manipulation functions

2015-11-09 Thread Joonsoo Kim
On Mon, Nov 09, 2015 at 01:45:37PM +0200, Kirill A. Shutemov wrote: > On Mon, Nov 09, 2015 at 05:00:32PM +0900, Joonsoo Kim wrote: > > 2015-11-09 16:53 GMT+09:00 Sergey Senozhatsky > > : > > > Hi, > > > > > > On (11/09/15 16:23), Joonsoo Kim wrote: > > > [..] > > >> +static inline int page_count(st

Re: [PATCH 1/2] mm: introduce page reference manipulation functions

2015-11-09 Thread Kirill A. Shutemov
On Mon, Nov 09, 2015 at 05:00:32PM +0900, Joonsoo Kim wrote: > 2015-11-09 16:53 GMT+09:00 Sergey Senozhatsky > : > > Hi, > > > > On (11/09/15 16:23), Joonsoo Kim wrote: > > [..] > >> +static inline int page_count(struct page *page) > >> +{ > >> + return atomic_read(&compound_head(page)->_count)

Re: [PATCH 1/2] mm: introduce page reference manipulation functions

2015-11-09 Thread Joonsoo Kim
2015-11-09 16:53 GMT+09:00 Sergey Senozhatsky : > Hi, > > On (11/09/15 16:23), Joonsoo Kim wrote: > [..] >> +static inline int page_count(struct page *page) >> +{ >> + return atomic_read(&compound_head(page)->_count); >> +} >> + >> +static inline void set_page_count(struct page *page, int v) >>

Re: [PATCH 1/2] mm: introduce page reference manipulation functions

2015-11-08 Thread Sergey Senozhatsky
Hi, On (11/09/15 16:23), Joonsoo Kim wrote: [..] > +static inline int page_count(struct page *page) > +{ > + return atomic_read(&compound_head(page)->_count); > +} > + > +static inline void set_page_count(struct page *page, int v) > +{ > + atomic_set(&page->_count, v); > +} > + > +/* > + *

[PATCH 1/2] mm: introduce page reference manipulation functions

2015-11-08 Thread Joonsoo Kim
Success of CMA allocation largely depends on success of migration and key factor of it is page reference count. Until now, page reference is manipulated by direct calling atomic functions so we cannot follow up who and where manipulate it. Then, it is hard to find actual reason of CMA allocation fa