search for: isolate_mobilepage

Displaying 13 results from an estimated 13 matches for "isolate_mobilepage".

2015 Jul 27
2
[PATCH 2/4] mm/compaction: enable mobile-page migration
...ile_page(struct page *page) > +{ > + return page->mapping && (PageMobile(page) || PageBalloon(page)); > +} I would put this definition to linux/page-flags.h and rename it to page_mobile (or better page_movable()), which is more common ordering. > + > +static inline bool isolate_mobilepage(struct page *page, isolate_mode_t mode) Does this have to be in compaction.h? The only user is compaction.c so probably move it there, and if there ever is another module using this in the future, we can move it to a more appropriate place and declare it in e.g. mm/internal.h. > +{ > + b...
2015 Jul 27
2
[PATCH 2/4] mm/compaction: enable mobile-page migration
...ile_page(struct page *page) > +{ > + return page->mapping && (PageMobile(page) || PageBalloon(page)); > +} I would put this definition to linux/page-flags.h and rename it to page_mobile (or better page_movable()), which is more common ordering. > + > +static inline bool isolate_mobilepage(struct page *page, isolate_mode_t mode) Does this have to be in compaction.h? The only user is compaction.c so probably move it there, and if there ever is another module using this in the future, we can move it to a more appropriate place and declare it in e.g. mm/internal.h. > +{ > + b...
2015 Jul 31
1
[PATCH 2/4] mm/compaction: enable mobile-page migration
...) || PageBalloon(page)); What's the locking rule to test mobile_page? Why we need such many checking? Why we need PageBalloon check? You are trying to make generic abstraction for non-LRU page to migrate but PageBalloon check in here breaks your goal. > +} > + > +static inline bool isolate_mobilepage(struct page *page, isolate_mode_t mode) > +{ > + bool ret = false; > + > + /* > + * Avoid burning cycles with pages that are yet under __free_pages(), > + * or just got freed under us. > + * > + * In case we 'win' a race for a mobile page being freed under us and...
2015 Jul 31
1
[PATCH 2/4] mm/compaction: enable mobile-page migration
...) || PageBalloon(page)); What's the locking rule to test mobile_page? Why we need such many checking? Why we need PageBalloon check? You are trying to make generic abstraction for non-LRU page to migrate but PageBalloon check in here breaks your goal. > +} > + > +static inline bool isolate_mobilepage(struct page *page, isolate_mode_t mode) > +{ > + bool ret = false; > + > + /* > + * Avoid burning cycles with pages that are yet under __free_pages(), > + * or just got freed under us. > + * > + * In case we 'win' a race for a mobile page being freed under us and...
2015 Jul 27
0
[PATCH 2/4] mm/compaction: enable mobile-page migration
...+ return page->mapping && (PageMobile(page) || PageBalloon(page)); >> +} > > > I would put this definition to linux/page-flags.h and rename it to > page_mobile (or better page_movable()), which is more common ordering. > >> + >> +static inline bool isolate_mobilepage(struct page *page, isolate_mode_t >> mode) > > > Does this have to be in compaction.h? The only user is compaction.c so > probably move it there, and if there ever is another module using this in > the future, we can move it to a more appropriate place and declare it in > e....
2015 Jul 10
1
[RFCv3 2/5] mm/compaction: enable mobile-page migration
...turn page->mapping && page->mapping->a_ops && Dereferncing mapping->a_ops isn't safe without page-lock and isn't required: all mappings always have ->a_ops. > + (PageMobile(page) || PageBalloon(page)); > +} > + > +static inline bool isolate_mobilepage(struct page *page, isolate_mode_t mode) > +{ > + bool ret; > + > + /* > + * Avoid burning cycles with pages that are yet under __free_pages(), > + * or just got freed under us. > + * > + * In case we 'win' a race for a mobile p...
2015 Jul 10
1
[RFCv3 2/5] mm/compaction: enable mobile-page migration
...turn page->mapping && page->mapping->a_ops && Dereferncing mapping->a_ops isn't safe without page-lock and isn't required: all mappings always have ->a_ops. > + (PageMobile(page) || PageBalloon(page)); > +} > + > +static inline bool isolate_mobilepage(struct page *page, isolate_mode_t mode) > +{ > + bool ret; > + > + /* > + * Avoid burning cycles with pages that are yet under __free_pages(), > + * or just got freed under us. > + * > + * In case we 'win' a race for a mobile p...
2015 Jul 07
0
[RFCv3 2/5] mm/compaction: enable mobile-page migration
...order, bool alloc_success); extern bool compaction_restarting(struct zone *zone, int order); +static inline bool mobile_page(struct page *page) +{ + return page->mapping && page->mapping->a_ops && + (PageMobile(page) || PageBalloon(page)); +} + +static inline bool isolate_mobilepage(struct page *page, isolate_mode_t mode) +{ + bool ret; + + /* + * Avoid burning cycles with pages that are yet under __free_pages(), + * or just got freed under us. + * + * In case we 'win' a race for a mobile page being freed under us and + * raise its refcount preventing __free_pages...
2015 Jul 13
0
[PATCH 2/4] mm/compaction: enable mobile-page migration
...action_defer_reset(struct zone *zone, int order, bool alloc_success); extern bool compaction_restarting(struct zone *zone, int order); +static inline bool mobile_page(struct page *page) +{ + return page->mapping && (PageMobile(page) || PageBalloon(page)); +} + +static inline bool isolate_mobilepage(struct page *page, isolate_mode_t mode) +{ + bool ret = false; + + /* + * Avoid burning cycles with pages that are yet under __free_pages(), + * or just got freed under us. + * + * In case we 'win' a race for a mobile page being freed under us and + * raise its refcount preventing __fr...
2015 Jul 13
14
[PATCH 0/4] enable migration of driver pages
From: Gioh Kim <gurugio at hanmail.net> Hello, This series try to enable migration of non-LRU pages, such as driver's page. My ARM-based platform occured severe fragmentation problem after long-term (several days) test. Sometimes even order-3 page allocation failed. It has memory size 512MB ~ 1024MB. 30% ~ 40% memory is consumed for graphic processing and 20~30 memory is reserved for
2015 Jul 13
14
[PATCH 0/4] enable migration of driver pages
From: Gioh Kim <gurugio at hanmail.net> Hello, This series try to enable migration of non-LRU pages, such as driver's page. My ARM-based platform occured severe fragmentation problem after long-term (several days) test. Sometimes even order-3 page allocation failed. It has memory size 512MB ~ 1024MB. 30% ~ 40% memory is consumed for graphic processing and 20~30 memory is reserved for
2015 Jul 07
12
[RFCv3 0/5] enable migration of driver pages
From: Gioh Kim <gurugio at hanmail.net> Hello, This series try to enable migration of non-LRU pages, such as driver's page. My ARM-based platform occured severe fragmentation problem after long-term (several days) test. Sometimes even order-3 page allocation failed. It has memory size 512MB ~ 1024MB. 30% ~ 40% memory is consumed for graphic processing and 20~30 memory is reserved for
2015 Jul 07
12
[RFCv3 0/5] enable migration of driver pages
From: Gioh Kim <gurugio at hanmail.net> Hello, This series try to enable migration of non-LRU pages, such as driver's page. My ARM-based platform occured severe fragmentation problem after long-term (several days) test. Sometimes even order-3 page allocation failed. It has memory size 512MB ~ 1024MB. 30% ~ 40% memory is consumed for graphic processing and 20~30 memory is reserved for